Coverage for databases/sync_tests/arrays/push/test_json.py: 100%
9 statements
« prev ^ index » next coverage.py v7.2.7, created at 2024-08-27 18:25 +0000
« prev ^ index » next coverage.py v7.2.7, created at 2024-08-27 18:25 +0000
1from prisma import Json, Prisma
4def test_pushing_json(client: Prisma) -> None:
5 """Pushing a Json[] value"""
6 models = [
7 client.lists.create({}),
8 client.lists.create(
9 data={
10 'json_objects': [Json('foo'), Json(['foo', 'bar'])],
11 },
12 ),
13 ]
15 model = client.lists.update(
16 where={
17 'id': models[0].id,
18 },
19 data={
20 'json_objects': {
21 'push': [Json.keys(foo='bar'), Json(True)],
22 },
23 },
24 )
25 assert model is not None
26 assert model.json_objects == [{'foo': 'bar'}, True]
28 model = client.lists.update(
29 where={
30 'id': models[1].id,
31 },
32 data={
33 'json_objects': {
34 'push': [Json('Baz')],
35 },
36 },
37 )
38 assert model is not None
39 assert model.json_objects == ['foo', ['foo', 'bar'], 'Baz']