few more tests: gis functions, starts/endswith

This commit is contained in:
ilvalle
2014-10-17 11:16:07 +02:00
parent bd05dc68ea
commit 64ae27862a

View File

@@ -407,6 +407,13 @@ class TestLike(unittest.TestCase):
self.assertEqual(db(db.tt.aa.upper().like('A%')).count(), 1)
self.assertEqual(db(db.tt.aa.upper().like('%B%')).count(),1)
self.assertEqual(db(db.tt.aa.upper().like('%C')).count(), 1)
# startswith endswith tests
self.assertEqual(db(db.tt.aa.startswith('a')).count(), 1)
self.assertEqual(db(db.tt.aa.endswith('c')).count(), 1)
self.assertEqual(db(db.tt.aa.startswith('c')).count(), 0)
self.assertEqual(db(db.tt.aa.endswith('a')).count(), 0)
db.tt.drop()
db.define_table('tt', Field('aa', 'integer'))
self.assertEqual(db.tt.insert(aa=1111111111), 1)
@@ -1550,6 +1557,17 @@ class TestGis(unittest.TestCase):
t2.insert(polygon=geoPolygon((0,0),(2,0),(2,2),(0,2),(0,0)))
text = db(db.t2.id).select(db.t2.polygon.st_astext()).first()[db.t2.polygon.st_astext()]
self.assertEqual(text, "POLYGON((0 0,2 0,2 2,0 2,0 0))")
query = t0.point.st_intersects(geoLine((0,0),(2,2)))
output = db(query).select(db.t0.point).first()[db.t0.point]
self.assertEqual(output, "POINT(1 1)")
query = t2.polygon.st_contains(geoPoint(1,1))
n = db(query).count()
self.assertEqual(n, 1)
x=t0.point.st_x()
y=t0.point.st_y()
point = db(t0.id).select(x, y).first()
self.assertEqual(point[x], 1)
self.assertEqual(point[y], 1)
t0.drop()
t1.drop()
t2.drop()