Example #1
0
 def setUp(self):
     super().setUp()
     category = Category(name='test_category')
     item = Item(name='test_item')
     item.category = category
     db.session.add(item)
     db.session.commit()
Example #2
0
def new_item(category_name, name, description):
    category = Category.query\
            .filter(Category.name == category_name).first()
    item = Item()
    item.name = name
    item.description = description
    item.category = category
    item.user_id = login_session['user_id']
    db.session.add(item)
    db.session.commit()
    return Item.query\
        .filter(Item.category == category, Item.name == name).first()
Example #3
0
def fake_items(count=20):
    categories = Category.query.all()
    while True:
        try:
            for _ in range(count):
                item = Item(name=fake.word())
                item.category = random.choice(categories)
                db.session.add(item)
            db.session.commit()
            break
        except IntegrityError:
            db.session.rollback()
            continue
Example #4
0
 def setUp(self):
     super().setUp()
     category = Category(name='test_category')
     item = Item(name='test_item')
     item.category = category
     record_1 = Record(start=datetime(2019, 1, 10, 6, 0, 0),
                       finish=datetime(2019, 1, 10, 7, 0, 0),
                       remark='test_record_1')
     record_2 = Record(start=datetime(2019, 1, 11, 6, 0, 0),
                       finish=datetime(2019, 1, 11, 7, 0, 0),
                       remark='test_record_2')
     item.records = [record_1, record_2]
     db.session.add(item)
     db.session.commit()
Example #5
0
 def test_calculation_of_category(self):
     """
     api: /category/<int:category_id>/calculation
     methods: get: 获取每一个分类下的所有条目的记录的时间总和(秒)
     """
     category = Category.query.first()
     item = Item(name='test_item')
     record = Record(start=datetime(2019, 1, 10, 6, 0, 0),
                     finish=datetime(2019, 1, 10, 7, 0, 0))
     item.category = category
     record.item = item
     db.session.add(record)
     db.session.commit()
     res = self.client.get(BASE_URL + '/category/calculation').get_json()
     self.assertEqual(200, res['status'])
     self.assertEqual(3600, res['data'][0]['value'])