def populate(): BaseModel.register_sessionmaker(session, force=True) metadata.create_all(engine) status = [Status(u'ok'), Status(u'ko')] session.add_all(status) ok = status[0] for i in xrange(10): tr = Treatment(u'test {}'.format(i), ok) session.add(tr) ko = status[1] for i in xrange(8): tr = Treatment(u'test_ko {}'.format(i), ko) session.add(tr) session.commit()
def test_dump(): tr = Treatment.get(id=1) assert tr.dump() == { 'id': 1, 'status_id': 1, 'status': { 'id': 1, 'name': u'ok' }, 'name': u'test 0', } assert tr.dump(excludes=['status']) == { 'id': 1, 'status_id': 1, 'name': u'test 0', } assert tr.dump(depth=1) == { 'id': 1, 'status_id': 1, 'name': u'test 0', }
def test_complex_count(): assert Treatment.count(status__name=u'ok') == 10 assert Treatment.count(status__name=u'ko') == 8 assert Treatment.count(~Q(id=2)) == 17 assert Treatment.count(Q(id=2) | Q(id=3), status__name=u'ok') == 2 assert Treatment.count(Q(id=2) | Q(status__name=u'ko')) == 9
def test_filter(): assert type(Treatment.filter(id=1)) == list assert len(Treatment.filter(id=1)) == 1 assert len(Treatment.filter(~Q(id=1))) == 17 assert len(Treatment.filter(status__name=u'ok')) == len( Treatment.filter(~Q(status__name=u'ko')))
def test_get(): tr = Treatment.get(id=1) assert isinstance(tr, Treatment)
def test_coeherence(): tr = Treatment.get(id=1) tr2 = Treatment.load(tr.dump()) assert tr == tr2
def test_filter(): assert type(Treatment.filter(id=1)) == list assert len(Treatment.filter(id=1)) == 1 assert len(Treatment.filter(~Q(id=1))) == 17 assert len(Treatment.filter(status__name=u'ok')) == len(Treatment.filter(~Q(status__name=u'ko')))