Newer
Older
require 'test/unit'
require 'testcase'
require 'fox16'
class TC_FXList < Fox::TestCase
include Fox
def setup
super(self.class.name)
@list = FXList.new(mainWindow)
end
def test_numVisible
@list.numVisible = 7
assert_equal(7, @list.numVisible)
end
def test_appendItem_byItem
items = []
0.upto(4) do |i|
items << FXListItem.new("item#{i}")
end
assert_equal(0, @list.numItems)
@list.appendItem(items[0])
assert_equal(1, @list.numItems)
@list.appendItem(items[1], true)
assert_equal(2, @list.numItems)
@list.appendItem(items[2], false)
assert_equal(3, @list.numItems)
assert_raises(ArgumentError) do
@list.appendItem(items[3], 42) # second argument must be true or false
end
assert_equal(3, @list.numItems)
end
def test_appendOp
assert_equal(0, @list.numItems)
@list << FXListItem.new("item1")
assert_equal(1, @list.numItems)
@list << FXListItem.new("item2")
assert_equal(2, @list.numItems)
@list << FXListItem.new("item3")
assert_equal(3, @list.numItems)
end
def test_appendItem_byText
assert_equal(0, @list.numItems)
itemIndex = @list.appendItem("")
assert_equal(1, @list.numItems)
itemIndex = @list.appendItem("anItem")
assert_equal(2, @list.numItems)
itemIndex = @list.appendItem("anItem", nil)
assert_equal(3, @list.numItems)
itemIndex = @list.appendItem("anItem", nil, "someData")
assert_equal(4, @list.numItems)
itemIndex = @list.appendItem("anItem", nil, "someData", true)
assert_equal(5, @list.numItems)
itemIndex = @list.appendItem("anItem", nil, "someData", false)
assert_equal(6, @list.numItems)
assert_raises(ArgumentError) do
@list.appendItem("anItem", nil, "someData", 42) # last argument must be true or false
end
assert_equal(6, @list.numItems)
end
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
def test_getItem
assert_raises(IndexError) {
@list.getItem(0)
}
theItem = FXListItem.new("anItem")
@list << theItem
retrievedItem = nil
assert_nothing_raised {
retrievedItem = @list.getItem(0)
}
assert_same(theItem, retrievedItem)
end
def test_moveItem
@list.appendItem("First")
@list.appendItem("Second")
assert_raises(IndexError) {
@list.moveItem(0, -1)
}
assert_raises(IndexError) {
@list.moveItem(0, 2)
}
assert_raises(IndexError) {
@list.moveItem(-1, 0)
}
assert_raises(IndexError) {
@list.moveItem(2, 0)
}
assert_nothing_raised {
@list.moveItem(0, 0)
@list.moveItem(0, 1)
@list.moveItem(1, 0)
@list.moveItem(1, 1)
}
assert_equal(0, @list.moveItem(0, 1))
assert_equal(1, @list.moveItem(1, 0))
end
def test_makeItemVisible
items = []
0.upto(2) { |i|
items << @list.appendItem("item#{i}")
}
assert_raises(IndexError) {
@list.makeItemVisible(-1)
}
assert_raises(IndexError) {
@list.makeItemVisible(3)
}
end
end