| | 214 | def test_remove_from_list_should_then_fail_in_list? |
|---|
| | 215 | assert_equal true, mixins(:list_1).in_list? |
|---|
| | 216 | mixins(:list_1).remove_from_list |
|---|
| | 217 | assert_equal false, mixins(:list_1).in_list? |
|---|
| | 218 | end |
|---|
| | 219 | |
|---|
| | 220 | def test_remove_from_list_should_set_position_to_nil |
|---|
| | 221 | assert_equal [mixins(:list_1), |
|---|
| | 222 | mixins(:list_2), |
|---|
| | 223 | mixins(:list_3), |
|---|
| | 224 | mixins(:list_4)], |
|---|
| | 225 | ListMixin.find(:all, :conditions => 'parent_id = 5', :order => 'pos') |
|---|
| | 226 | |
|---|
| | 227 | mixins(:list_2).remove_from_list |
|---|
| | 228 | |
|---|
| | 229 | assert_equal [mixins(:list_2, :reload), |
|---|
| | 230 | mixins(:list_1, :reload), |
|---|
| | 231 | mixins(:list_3, :reload), |
|---|
| | 232 | mixins(:list_4, :reload)], |
|---|
| | 233 | ListMixin.find(:all, :conditions => 'parent_id = 5', :order => 'pos') |
|---|
| | 234 | |
|---|
| | 235 | assert_equal 1, mixins(:list_1).pos |
|---|
| | 236 | assert_equal nil, mixins(:list_2).pos |
|---|
| | 237 | assert_equal 2, mixins(:list_3).pos |
|---|
| | 238 | assert_equal 3, mixins(:list_4).pos |
|---|
| | 239 | end |
|---|
| | 240 | |
|---|
| | 241 | def test_remove_before_destroy_does_not_shift_lower_items_twice |
|---|
| | 242 | assert_equal [mixins(:list_1), |
|---|
| | 243 | mixins(:list_2), |
|---|
| | 244 | mixins(:list_3), |
|---|
| | 245 | mixins(:list_4)], |
|---|
| | 246 | ListMixin.find(:all, :conditions => 'parent_id = 5', :order => 'pos') |
|---|
| | 247 | |
|---|
| | 248 | mixins(:list_2).remove_from_list |
|---|
| | 249 | mixins(:list_2).destroy |
|---|
| | 250 | |
|---|
| | 251 | assert_equal [mixins(:list_1, :reload), |
|---|
| | 252 | mixins(:list_3, :reload), |
|---|
| | 253 | mixins(:list_4, :reload)], |
|---|
| | 254 | ListMixin.find(:all, :conditions => 'parent_id = 5', :order => 'pos') |
|---|
| | 255 | |
|---|
| | 256 | assert_equal 1, mixins(:list_1).pos |
|---|
| | 257 | assert_equal 2, mixins(:list_3).pos |
|---|
| | 258 | assert_equal 3, mixins(:list_4).pos |
|---|
| | 259 | end |
|---|
| | 260 | |
|---|