164 |
|
|
165 |
|
|
166 |
def test_transient_table_read_twice(self): |
def test_transient_table_read_twice(self): |
167 |
"""Test TransientTable.read_record() reading the same record twice""" |
"""Test TransientTable.ReadRowAsDict() reading the same record twice""" |
168 |
simple = MemoryTable([("type", FIELDTYPE_STRING), |
simple = MemoryTable([("type", FIELDTYPE_STRING), |
169 |
("code", FIELDTYPE_INT)], |
("code", FIELDTYPE_INT)], |
170 |
[("OTHER/UNKNOWN", 0), |
[("OTHER/UNKNOWN", 0), |
185 |
self.assertEquals(result1, result2) |
self.assertEquals(result1, result2) |
186 |
|
|
187 |
|
|
188 |
|
def test_transient_table_query(self): |
189 |
|
"""Test TransientTable.SimpleQuery()""" |
190 |
|
simple = MemoryTable([("type", FIELDTYPE_STRING), |
191 |
|
("value", FIELDTYPE_DOUBLE), |
192 |
|
("code", FIELDTYPE_INT)], |
193 |
|
[("OTHER/UNKNOWN", -1.5, 11), |
194 |
|
("RUINS", 0.0, 1), |
195 |
|
("FARM", 3.141, 2), |
196 |
|
("BUILDING", 2.5, 3), |
197 |
|
("HUT", 1e6, 4), |
198 |
|
("LIGHTHOUSE", -0.01, 5)]) |
199 |
|
table = TransientTable(self.transientdb, simple) |
200 |
|
|
201 |
|
# A column and a value |
202 |
|
self.assertEquals(table.SimpleQuery(table.Column(0), "==", "RUINS"), |
203 |
|
[1]) |
204 |
|
self.assertEquals(table.SimpleQuery(table.Column(2), "!=", 2), |
205 |
|
[0, 1, 3, 4, 5]) |
206 |
|
self.assertEquals(table.SimpleQuery(table.Column(1), "<", 1.0), |
207 |
|
[0, 1, 5]) |
208 |
|
self.assertEquals(table.SimpleQuery(table.Column(1), "<=", -1.5), |
209 |
|
[0]) |
210 |
|
self.assertEquals(table.SimpleQuery(table.Column(2), ">", 3), |
211 |
|
[0, 4, 5]) |
212 |
|
self.assertEquals(table.SimpleQuery(table.Column(2), ">=", 3), |
213 |
|
[0, 3, 4, 5]) |
214 |
|
|
215 |
|
# Two columns as operands |
216 |
|
self.assertEquals(table.SimpleQuery(table.Column(1), |
217 |
|
"<=", table.Column(2)), |
218 |
|
[0, 1, 3, 5]) |
219 |
|
|
220 |
|
# Test whether invalid operators raise a ValueError |
221 |
|
self.assertRaises(ValueError, |
222 |
|
table.SimpleQuery, |
223 |
|
table.Column(1), "<<", table.Column(2)) |
224 |
|
|
225 |
|
|
226 |
if __name__ == "__main__": |
if __name__ == "__main__": |
227 |
support.run_tests() |
support.run_tests() |