def test_basic_data(self): p = mkPlot(self.u) p.width = 22 p.length = 44 p.present = True p.geometry = Point(55,56) p.geometry.srid = 4326 p.readonly = False p.save() info = self.client.get("%s/plots" % API_PFX) self.assertEqual(info.status_code, 200) json = loads(info.content) self.assertEqual(len(json), 1) record = json[0] self.assertEqual(record["id"], p.pk) self.assertEqual(record["width"], 22) self.assertEqual(record["length"], 44) self.assertEqual(record["readonly"], False) self.assertEqual(record["geometry"]["srid"], 4326) self.assertEqual(record["geometry"]["lat"], 56) self.assertEqual(record["geometry"]["lng"], 55) self.assertEqual(record.get("tree"), None)
def test_paging(self): p0 = mkPlot(self.u) p0.present = False p0.save() p1 = mkPlot(self.u) p2 = mkPlot(self.u) p3 = mkPlot(self.u) r = self.client.get("%s/plots?offset=0&size=2" % API_PFX) rids = set([p["id"] for p in loads(r.content)]) self.assertEqual(rids, set([p1.pk, p2.pk])) r = self.client.get("%s/plots?offset=1&size=2" % API_PFX) rids = set([p["id"] for p in loads(r.content)]) self.assertEqual(rids, set([p2.pk, p3.pk])) r = self.client.get("%s/plots?offset=2&size=2" % API_PFX) rids = set([p["id"] for p in loads(r.content)]) self.assertEqual(rids, set([p3.pk])) r = self.client.get("%s/plots?offset=3&size=2" % API_PFX) rids = set([p["id"] for p in loads(r.content)]) self.assertEqual(rids, set()) r = self.client.get("%s/plots?offset=0&size=5" % API_PFX) rids = set([p["id"] for p in loads(r.content)]) self.assertEqual(rids, set([p1.pk, p2.pk, p3.pk]))
def test_tree_data(self): p = mkPlot(self.u) t = mkTree(self.u, plot=p) t.species = None t.dbh = None t.present = True t.save() info = self.client.get("%s/plots" % API_PFX) self.assertEqual(info.status_code, 200) json = loads(info.content) self.assertEqual(len(json), 1) record = json[0] self.assertEqual(record["tree"]["id"], t.pk) t.species = Species.objects.all()[0] t.dbh = 11.2 t.save() info = self.client.get("%s/plots" % API_PFX) self.assertEqual(info.status_code, 200) json = loads(info.content) self.assertEqual(len(json), 1) record = json[0] self.assertEqual(record["tree"]["species"], t.species.pk) self.assertEqual(record["tree"]["dbh"], t.dbh) self.assertEqual(record["tree"]["id"], t.pk)