def test_get_cat(self): paul = Person(name="paul") paul.save(self.db) cat = Cat(name="whiskers", owner_id=paul.key, legs=2) cat.save(self.db) another = Cat.get(self.db, cat.key) self.assertEqual(cat, another)
def test_get_created_cat(self): paul = Person(name="paul") self.db.put(paul) cat = Cat.create(self.db, name="whiskers", owner_id=paul.key, legs=2) another = Cat.get(self.db, cat.key) self.assertEqual(cat, another)
def test_ref_to_with_object(self): paul = Person(name="paul") self.db.put(paul) cat = Cat(name="whiskers", owner=paul, legs=2) cat.save(self.db) self.assertEqual(cat.owner, paul) self.assertEqual(cat.owner.name, "paul") catback = Cat.get(self.db, cat.key) self.assertEqual(cat, catback)
def test_delete_cat(self): cat = Cat(name="whiskers") cat.save(self.db) key = cat.key another = Cat.get(self.db, cat.key) self.assertEqual(cat, another) cat.delete(self.db) revivedcat = self.db.get(key) self.assertEqual(revivedcat, None)
def test_null_values(self): paul = Person(name="paul") paul.save(self.db) cat = Cat(name="whiskers", owner_id=paul.key, colour=None) self.assertTrue(cat.colour is None) self.assertTrue(cat._properties["colour"] is None) cat.save(self.db) another = Cat.get(self.db, cat.key) self.assertEqual(cat, another)
def test_delete_cat_dd(self): paul = Person(name="paul") self.db.put(paul) cat = Cat(name="whiskers", owner_id=paul.key, legs=2) self.db.put(cat) key = cat.key another = Cat.get(self.db, cat.key) self.assertEqual(cat, another) self.db.delete(cat) revivedcat = self.db.get(key) self.assertEqual(revivedcat, None)
def test_batch_puts_atomic(self): try: with FirestoreBatchContext(self.db) as bdb: cat = Cat(name="blaze") bdb.put(cat) cat2 = Cat(name="muse", car="fiat") bdb.put(cat2) except Exception as e: print(e) got = Cat.get(self.db, cat.key) self.assertIsNone(got)
def test_update_cat(self): paul = Person(name="paul") paul.save(self.db) cat = Cat(name="whiskers", owner_id=paul.key, legs=2) cat.save(self.db) cat.name = "blackie" cat.save(self.db) self.assertEqual(cat.name, "blackie") self.assertEqual(cat._properties["name"], "blackie") self.assertFalse("name" in cat.__dict__.keys()) got = Cat.get(self.db, cat.key) self.assertEqual(got.name, "blackie")
def test_delete_cat_refs(self): paul = Person(name="paul") paul.save(self.db) cat = Cat(name="whiskers", owner_id=paul.key, legs=2) cat.save(self.db) key = cat.key cat2 = Cat(name="puss", owner_id=paul.key, legs=2) cat2.save(self.db) revivedcat1 = Cat.get(self.db, key) self.assertTrue(revivedcat1 is not None) paul.delete(self.db) revivedcat2 = self.db.get(key) self.assertTrue(revivedcat2 is None)
def test_delete_cat_refs(self): paul = Person(name="paul") self.db.put(paul) cat = Cat(name="whiskers", owner_id=paul.key, legs=2) self.assertTrue("dogs" not in cat.__class__.fields.items()) self.db.put(cat) key = cat.key cat2 = Cat(name="puss", owner_id=paul.key, legs=2) self.assertTrue("dogs" not in cat2.__class__.fields.items()) self.db.put(cat2) revivedcat1 = Cat.get(self.db, key) self.assertTrue(revivedcat1 is not None) self.db.delete(paul) revivedcat2 = self.db.get(key) self.assertTrue(revivedcat2 is None)
def test_get_cat(self): cat = Cat(name="whiskers") cat.save(self.db) another = Cat.get(self.db, cat.key) self.assertEqual(cat, another)