本文整理汇总了Python中flask_peewee.tests.test_app.BModel类的典型用法代码示例。如果您正苦于以下问题:Python BModel类的具体用法?Python BModel怎么用?Python BModel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了BModel类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: setUp
def setUp(self):
super(RestApiResourceTestCase, self).setUp()
FModel.delete().execute()
EModel.delete().execute()
CModel.delete().execute()
BModel.delete().execute()
AModel.delete().execute()
示例2: test_delete
def test_delete(self):
self.create_test_models()
resp = self.post_to('/api/cmodel/%s/delete/' % self.c2.id, {})
self.assertEqual(json.loads(resp.data.decode('utf8')), {'deleted': 1})
self.assertEqual(CModel.select().count(), 1)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
resp = self.post_to('/api/amodel/%s/delete/' % self.a1.id, {})
self.assertEqual(json.loads(resp.data.decode('utf8')), {'deleted': 1})
self.assertEqual(CModel.select().count(), 0)
self.assertEqual(BModel.select().count(), 1)
self.assertEqual(AModel.select().count(), 1)
resp = self.post_to('/api/emodel/%s/delete/' % self.e1.id, {})
self.assertEqual(json.loads(resp.data.decode('utf8')), {'deleted': 1})
self.assertEqual(EModel.select().count(), 1)
self.assertEqual(FModel.select().count(), 2)
f_obj = FModel.get(id=self.f1.id)
self.assertEqual(f_obj.e, None)
示例3: setUp
def setUp(self):
super(AdminFilterTestCase, self).setUp()
BDetails.drop_table(True)
DModel.drop_table(True)
CModel.drop_table(True)
BModel.drop_table(True)
AModel.drop_table(True)
AModel.create_table()
BModel.create_table()
CModel.create_table()
DModel.create_table()
BDetails.create_table()
示例4: create_test_models
def create_test_models(self):
self.a1 = AModel.create(a_field='a1')
self.a2 = AModel.create(a_field='a2')
self.b1 = BModel.create(b_field='b1', a=self.a1)
self.b2 = BModel.create(b_field='b2', a=self.a2)
self.c1 = CModel.create(c_field='c1', b=self.b1)
self.c2 = CModel.create(c_field='c2', b=self.b2)
self.e1 = EModel.create(e_field='e1')
self.e2 = EModel.create(e_field='e2')
self.f1 = FModel.create(f_field='f1', e=self.e1)
self.f2 = FModel.create(f_field='f2')
示例5: create_models
def create_models(self):
for i in range(1, 4):
a = AModel.create(a_field='a%d' % i)
b = BModel.create(b_field='b%d' % i, a=a)
c = CModel.create(c_field='c%d' % i, b=b)
d = DModel.create(d_field='d%d' % i, c=c)
if i % 2 == 0:
bd = BDetails.create(b=b)
示例6: test_resource_edit_by_fk
def test_resource_edit_by_fk(self):
self.create_test_models()
# b model
resp = self.post_to('/api/bmodel/%s/' % self.b2.id, {'a': self.a1.id})
self.assertEqual(resp.status_code, 200)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
b_obj = BModel.get(id=self.b2.id)
a_obj = AModel.get(id=self.a1.id)
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': b_obj.id,
'b_field': 'b2',
'a': {
'id': a_obj.id,
'a_field': 'a1',
},
})
# f model
resp = self.post_to('/api/fmodel/%s/' % self.f2.id, {'e': self.e2.id})
self.assertEqual(resp.status_code, 200)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
f_obj = FModel.get(id=self.f2.id)
e_obj = EModel.get(id=self.e2.id)
self.assertEqual(f_obj.e, e_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': f_obj.id,
'f_field': 'f2',
'e': {
'id': e_obj.id,
'e_field': 'e2',
},
})
示例7: test_resource_edit_partial
def test_resource_edit_partial(self):
self.create_test_models()
# b model
resp = self.post_to('/api/bmodel/%s/' % self.b2.id, {'b_field': 'b2-yyy'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
b_obj = BModel.get(id=self.b2.id)
a_obj = AModel.get(id=self.a2.id)
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data), {
'id': b_obj.id,
'b_field': 'b2-yyy',
'a': {
'id': a_obj.id,
'a_field': 'a2',
},
})
# f model
resp = self.post_to('/api/fmodel/%s/' % self.f1.id, {'f_field': 'f1-zzz'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(FModel.select().count(), 2)
self.assertEqual(EModel.select().count(), 2)
f_obj = FModel.get(id=self.f1.id)
e_obj = EModel.get(id=self.e1.id)
self.assertEqual(f_obj.e, e_obj)
self.assertEqual(json.loads(resp.data), {
'id': f_obj.id,
'f_field': 'f1-zzz',
'e': {
'id': e_obj.id,
'e_field': 'e1',
},
})
示例8: test_model_admin_recursive_delete
def test_model_admin_recursive_delete(self):
self.create_users()
m1 = Message.create(user=self.normal, content='test1')
m2 = Message.create(user=self.normal, content='test2')
m3 = Message.create(user=self.admin, content='test3')
n1 = Note.create(user=self.normal, message='test1')
n2 = Note.create(user=self.normal, message='test2')
n3 = Note.create(user=self.admin, message='test3')
a1 = AModel.create(a_field='a1')
a2 = AModel.create(a_field='a2')
b1 = BModel.create(b_field='b1', a=a1)
b2 = BModel.create(b_field='b2', a=a2)
bd1= BDetails.create(b=b1)
bd2= BDetails.create(b=b2)
c1 = CModel.create(c_field='c1', b=b1)
c2 = CModel.create(c_field='c2', b=b2)
d1 = DModel.create(d_field='d1', c=c1)
d2 = DModel.create(d_field='d2', c=c2)
with self.flask_app.test_client() as c:
self.login(c)
resp = c.get('/admin/amodel/delete/?id=%d' % (a1.id))
self.assertEqual(resp.status_code, 200)
collected = self.get_context('collected')
self.assertEqual(collected, {
a1.id: [
(1, BModel, 'a', [b1]),
(2, BDetails, 'a', [bd1]),
(2, CModel, 'a', [c1]),
(3, DModel, 'a', [d1]),
]
})
resp = c.post('/admin/amodel/delete/', data={'id': a1.id})
self.assertEqual(resp.status_code, 302)
self.assertEqual(AModel.select().count(), 1)
self.assertEqual(BModel.select().count(), 1)
self.assertEqual(BDetails.select().count(), 1)
self.assertEqual(CModel.select().count(), 1)
self.assertEqual(DModel.select().count(), 1)
# send it a single id
resp = c.get('/admin/user/delete/?id=%d' % (self.normal.id))
self.assertEqual(resp.status_code, 200)
query = self.get_context('query')
self.assertEqual(list(query), [self.normal])
collected = self.get_context('collected')
self.assertEqual(len(collected), 1)
u_k = collected[self.normal.id]
self.assertEqual(len(u_k), 2)
self.assertEqual(u_k, [
(1, Message, 'user', [m1, m2]),
(1, Note, 'user', [n1, n2]),
])
# post to it, get a redirect on success
resp = c.post('/admin/user/delete/', data={'id': self.normal.id})
self.assertEqual(resp.status_code, 302)
self.assertEqual(User.select().count(), 2)
self.assertEqual(Message.select().count(), 1)
self.assertEqual(Note.select().count(), 1)
resp = c.get('/admin/user/delete/?id=%d&id=%d' % (self.admin.id, self.inactive.id))
self.assertEqual(resp.status_code, 200)
collected = self.get_context('collected')
self.assertEqual(len(collected), 2)
u_k = collected[self.admin.id]
self.assertEqual(len(u_k), 2)
self.assertEqual(u_k, [
(1, Message, 'user', [m3]),
(1, Note, 'user', [n3]),
])
u_k = collected[self.inactive.id]
self.assertEqual(len(u_k), 0)
# post to it, get a redirect on success
resp = c.post('/admin/user/delete/', data={'id': [self.admin.id, self.inactive.id]})
self.assertEqual(resp.status_code, 302)
self.assertEqual(User.select().count(), 0)
self.assertEqual(Message.select().count(), 0)
self.assertEqual(Note.select().count(), 0)
示例9: test_resources_edit
def test_resources_edit(self):
self.create_test_models()
# a
resp = self.post_to('/api/amodel/%s/' % self.a2.id, {'a_field': 'a2-xxx'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(AModel.select().count(), 2)
a_obj = AModel.get(id=self.a2.id)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': self.a2.id,
'a_field': 'a2-xxx',
})
# b
resp = self.post_to('/api/bmodel/%s/' % self.b2.id, {'b_field': 'b2-yyy', 'a': {'a_field': 'a2-yyy'}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
b_obj = BModel.get(id=self.b2.id)
a_obj = AModel.get(id=self.a2.id)
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': b_obj.id,
'b_field': 'b2-yyy',
'a': {
'id': a_obj.id,
'a_field': 'a2-yyy',
},
})
# c
resp = self.post_to('/api/cmodel/%s/' % self.c2.id, {'c_field': 'c2-zzz', 'b': {'b_field': 'b2-zzz', 'a': {'a_field': 'a2-zzz'}}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(CModel.select().count(), 2)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 2)
c_obj = CModel.get(id=self.c2.id)
b_obj = BModel.get(id=self.b2.id)
a_obj = AModel.get(id=self.a2.id)
self.assertEqual(c_obj.b, b_obj)
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': c_obj.id,
'c_field': 'c2-zzz',
'b': {
'id': b_obj.id,
'b_field': 'b2-zzz',
'a': {
'id': a_obj.id,
'a_field': 'a2-zzz',
},
},
})
# f
resp = self.post_to('/api/fmodel/%s/' % self.f1.id, {'f_field': 'f1-yyy', 'e': {'e_field': 'e1-yyy'}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(FModel.select().count(), 2)
self.assertEqual(EModel.select().count(), 2)
f_obj = FModel.get(id=self.f1.id)
e_obj = EModel.get(id=self.e1.id)
self.assertEqual(f_obj.e, e_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': f_obj.id,
'f_field': 'f1-yyy',
'e': {
'id': e_obj.id,
'e_field': 'e1-yyy',
},
})
resp = self.post_to('/api/fmodel/%s/' % self.f2.id, {'f_field': 'f2-yyy'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(FModel.select().count(), 2)
self.assertEqual(EModel.select().count(), 2)
f_obj = FModel.get(id=self.f2.id)
self.assertEqual(f_obj.e, None)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': f_obj.id,
'f_field': 'f2-yyy',
'e': None,
})
示例10: test_resources_create
def test_resources_create(self):
# a model
resp = self.post_to('/api/amodel/', {'a_field': 'ax'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(AModel.select().count(), 1)
a_obj = AModel.get(a_field='ax')
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': a_obj.id,
'a_field': 'ax',
})
# b model
resp = self.post_to('/api/bmodel/', {'b_field': 'by', 'a': {'a_field': 'ay'}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(BModel.select().count(), 1)
self.assertEqual(AModel.select().count(), 2)
b_obj = BModel.get(b_field='by')
a_obj = AModel.get(a_field='ay')
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': b_obj.id,
'b_field': 'by',
'a': {
'id': a_obj.id,
'a_field': 'ay',
},
})
# c model
resp = self.post_to('/api/cmodel/', {'c_field': 'cz', 'b': {'b_field': 'bz', 'a': {'a_field': 'az'}}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(CModel.select().count(), 1)
self.assertEqual(BModel.select().count(), 2)
self.assertEqual(AModel.select().count(), 3)
c_obj = CModel.get(c_field='cz')
b_obj = BModel.get(b_field='bz')
a_obj = AModel.get(a_field='az')
self.assertEqual(c_obj.b, b_obj)
self.assertEqual(b_obj.a, a_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': c_obj.id,
'c_field': 'cz',
'b': {
'id': b_obj.id,
'b_field': 'bz',
'a': {
'id': a_obj.id,
'a_field': 'az',
},
},
})
# f model
resp = self.post_to('/api/fmodel/', {'f_field': 'fy', 'e': {'e_field': 'ey'}})
self.assertEqual(resp.status_code, 200)
self.assertEqual(FModel.select().count(), 1)
self.assertEqual(EModel.select().count(), 1)
f_obj = FModel.get(f_field='fy')
e_obj = EModel.get(e_field='ey')
self.assertEqual(f_obj.e, e_obj)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': f_obj.id,
'f_field': 'fy',
'e': {
'id': e_obj.id,
'e_field': 'ey',
},
})
resp = self.post_to('/api/fmodel/', {'f_field': 'fz'})
self.assertEqual(resp.status_code, 200)
self.assertEqual(FModel.select().count(), 2)
self.assertEqual(EModel.select().count(), 1)
f_obj = FModel.get(f_field='fz')
self.assertEqual(f_obj.e, None)
self.assertEqual(json.loads(resp.data.decode('utf8')), {
'id': f_obj.id,
'f_field': 'fz',
'e': None,
})