def test_encoder(self): p = Project('test') p.id = 1 c = Category('test') c.id = 2 c.project_id = p.id t = Task('test') t.id = 3 t.category_id = c.id self.assertIsNotNone(json.dumps(p, cls=ModelEncoder)) self.assertIsNotNone(json.dumps(c, cls=ModelEncoder)) self.assertIsNotNone(json.dumps(t, cls=ModelEncoder))
def test_delete_item(self): j = JSon(config.backend_json['filename']) t = Task('new task') t.id = 3 t.category_id=1 key = 'Task.3' j.delete_item(t) j.commit() self.assertNotIn(key, j.data.keys())
def create_project_task(self, project, category, name): if project is None: print('Invalid project') return None cat = self.get_category(project, category) if cat is None: cat = self.create_project_category(project, category) if self.backend.item_exists(Task, {'name': name, 'category_id': cat.id}): print('Task already exists') return task = Task(name) task.category_id = cat.id self.backend.add_item(task) self.backend.commit() return task