class TestItem(): def setUp(self): self.d = MockDao() self.d.setResponses([deepcopy(ITEM_DATA)]) def test_mock_dao(self): assert_equals(self.d.get("123"), ITEM_DATA) def ITEM_DATA_init(self): i = models.Item(self.d) assert_equals(len(i.id), 32) # made a uuid, yay def ITEM_DATA_save(self): i = models.Item(self.d, id="123") # load all the values from the item_DATA into the test item. for key in ITEM_DATA: setattr(i, key, ITEM_DATA[key]) i.save() assert_equals(i.aliases, ALIAS_DATA) seed = deepcopy(ITEM_DATA) seed["_id"] = "123" # the fake dao puts the doc-to-save in the self.input var. assert_equals(self.input, seed)
class TestCollection(): def setUp(self): self.d = MockDao() def test_mock_dao(self): self.d.setResponses([ deepcopy(COLLECTION_DATA)]) assert_equals(self.d.get("SomeCollectionId"), COLLECTION_DATA) def COLLECTION_DATA_init(self): c = models.Collection(self.d) assert_equals(len(c.id), 32) # made a uuid, yay def COLLECTION_DATA_add_items(self): c = models.Collection(self.d, seed=deepcopy(COLLECTION_DATA)) c.add_items(["newtiid1", "newtiid2"]) assert_equals(c.item_ids(), [u'origtiid1', u'origtiid2', 'newtiid1', 'newtiid2']) def COLLECTION_DATA_remove_item(self): c = models.Collection(self.d, seed=deepcopy(COLLECTION_DATA)) c.remove_item("origtiid1") assert_equals(c.item_ids(), ["origtiid2"]) def COLLECTION_DATA_save(self): # this fake save method puts the doc-to-save in the self.input variable def fake_save(data, id): self.input = data self.d.update_item = fake_save c = models.Collection(self.d) # load all the values from the item_DATA into the test item. for key in COLLECTION_DATA: setattr(c, key, COLLECTION_DATA[key]) c.save() seed = deepcopy(COLLECTION_DATA) # the dao changes the contents to give the id variable the leading underscore expected by couch seed["_id"] = seed["id"] del(seed["id"]) # check to see if the fake save method did in fact "save" the collection as expected assert_equals(self.input, seed) def test_collection_delete(self): self.d.delete = lambda id: True c = models.Collection(self.d, id="SomeCollectionId") response = c.delete() assert_equals(response, True)