Methods
T
Instance Public methods
test_delete_middle()
# File rails/activerecord/test/mixin_test.rb, line 567
def test_delete_middle
  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_2).destroy

  assert_equal [mixins(:list_sub_1, :reload),
                mixins(:list_sub_3, :reload),
                mixins(:list_sub_4, :reload)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  assert_equal 1, mixins(:list_sub_1).pos
  assert_equal 2, mixins(:list_sub_3).pos
  assert_equal 3, mixins(:list_sub_4).pos

  mixins(:list_sub_1).destroy

  assert_equal [mixins(:list_sub_3, :reload),
                mixins(:list_sub_4, :reload)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  assert_equal 1, mixins(:list_sub_3).pos
  assert_equal 2, mixins(:list_sub_4).pos

end
test_injection()
# File rails/activerecord/test/mixin_test.rb, line 525
def test_injection
  item = ListMixin.new("parent_id"=>1)
  assert_equal "parent_id = 1", item.scope_condition
  assert_equal "pos", item.position_column
end
test_insert_at()
# File rails/activerecord/test/mixin_test.rb, line 532
def test_insert_at
  new = ListMixin.create("parent_id" => 20)
  assert_equal 1, new.pos

  new = ListMixinSub1.create("parent_id" => 20)
  assert_equal 2, new.pos

  new = ListMixinSub2.create("parent_id" => 20)
  assert_equal 3, new.pos

  new4 = ListMixin.create("parent_id" => 20)
  assert_equal 4, new4.pos

  new4.insert_at(3)
  assert_equal 3, new4.pos

  new.reload
  assert_equal 4, new.pos

  new.insert_at(2)
  assert_equal 2, new.pos

  new4.reload
  assert_equal 4, new4.pos

  new5 = ListMixinSub1.create("parent_id" => 20)
  assert_equal 5, new5.pos

  new5.insert_at(1)
  assert_equal 1, new5.pos

  new4.reload
  assert_equal 5, new4.pos
end
test_move_to_bottom_with_next_to_last_item()
# File rails/activerecord/test/mixin_test.rb, line 501
def test_move_to_bottom_with_next_to_last_item
  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_3).move_to_bottom

  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_4),
                mixins(:list_sub_3)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')
end
test_next_prev()
# File rails/activerecord/test/mixin_test.rb, line 517
def test_next_prev
  assert_equal mixins(:list_sub_2), mixins(:list_sub_1).lower_item
  assert_nil mixins(:list_sub_1).higher_item
  assert_equal mixins(:list_sub_3), mixins(:list_sub_4).higher_item
  assert_nil mixins(:list_sub_4).lower_item
end
test_reordering()
# File rails/activerecord/test/mixin_test.rb, line 443
def test_reordering
  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_2).move_lower

  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_3),
                mixins(:list_sub_2),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_2).move_higher

  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_1).move_to_bottom

  assert_equal [mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4),
                mixins(:list_sub_1)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_1).move_to_top

  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_2),
                mixins(:list_sub_3),
                mixins(:list_sub_4)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')


  mixins(:list_sub_2).move_to_bottom

  assert_equal [mixins(:list_sub_1),
                mixins(:list_sub_3),
                mixins(:list_sub_4),
                mixins(:list_sub_2)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

  mixins(:list_sub_4).move_to_top

  assert_equal [mixins(:list_sub_4),
                mixins(:list_sub_1),
                mixins(:list_sub_3),
                mixins(:list_sub_2)],
                ListMixin.find(:all, :conditions => 'parent_id = 5000', :order => 'pos')

end