示例#1
0
    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))
示例#2
0
    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())
示例#3
0
文件: utils.py 项目: franckv/ptime
    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