コード例 #1
0
    def test_datastore_query_builder(self):

        wkt = 'POINT(-72.0 40.0)'
        buf = 0.1

        # DatastoreQueryBuilder - WKT
        qb = DatastoreQueryBuilder()
        qb.build_query(where=qb.overlaps_geom(qb.RA_GEOM_LOC,wkt,buf))
        self.assertEquals(qb.get_query()['where'], ['gop:overlaps_geom', ('geom_loc', 'POINT(-72.0 40.0)', 0.1)])

        qb = DatastoreQueryBuilder()
        qb.build_query(where=qb.contains_geom(qb.RA_GEOM_LOC,wkt,buf))
        self.assertEquals(qb.get_query()['where'], ['gop:contains_geom', ('geom_loc', 'POINT(-72.0 40.0)', 0.1)])

        qb = DatastoreQueryBuilder()
        qb.build_query(where=qb.within_geom(qb.RA_GEOM_LOC,wkt,buf))
        self.assertEquals(qb.get_query()['where'], ['gop:within_geom', ('geom_loc', 'POINT(-72.0 40.0)', 0.1)])

        qb = DatastoreQueryBuilder()
        qb.build_query(where=qb.crosses_geom(qb.RA_GEOM_LOC,wkt,buf))
        self.assertEquals(qb.get_query()['where'], ['gop:crosses_geom', ('geom_loc', 'POINT(-72.0 40.0)', 0.1)])

        qb = DatastoreQueryBuilder()
        qb.build_query(where=qb.touches_geom(qb.RA_GEOM_LOC,wkt,buf))
        self.assertEquals(qb.get_query()['where'], ['gop:touches_geom', ('geom_loc', 'POINT(-72.0 40.0)', 0.1)])