udata 12.0.2.dev17__py3-none-any.whl → 12.0.2.dev19__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of udata might be problematic. Click here for more details.
- udata/commands/tests/test_fixtures.py +2 -3
- udata/core/badges/tests/test_commands.py +2 -4
- udata/core/badges/tests/test_model.py +2 -2
- udata/core/dataservices/models.py +4 -0
- udata/core/dataservices/search.py +1 -1
- udata/core/dataset/search.py +2 -2
- udata/core/organization/search.py +1 -1
- udata/core/pages/tests/test_api.py +0 -2
- udata/core/reuse/search.py +1 -1
- udata/core/spatial/tests/test_api.py +17 -20
- udata/core/spatial/tests/test_models.py +3 -3
- udata/core/user/tests/test_user_model.py +2 -6
- udata/features/identicon/tests/test_backends.py +3 -13
- udata/harvest/tests/ckan/test_ckan_backend.py +300 -337
- udata/harvest/tests/ckan/test_ckan_backend_errors.py +94 -99
- udata/harvest/tests/ckan/test_ckan_backend_filters.py +128 -122
- udata/harvest/tests/ckan/test_dkan_backend.py +39 -51
- udata/harvest/tests/test_actions.py +7 -7
- udata/harvest/tests/test_api.py +2 -4
- udata/harvest/tests/test_base_backend.py +3 -4
- udata/harvest/tests/test_dcat_backend.py +4 -6
- udata/harvest/tests/test_models.py +2 -4
- udata/harvest/tests/test_notifications.py +2 -4
- udata/harvest/tests/test_tasks.py +2 -3
- udata/tests/__init__.py +40 -58
- udata/tests/api/__init__.py +87 -2
- udata/tests/api/test_activities_api.py +17 -23
- udata/tests/api/test_auth_api.py +2 -4
- udata/tests/api/test_contact_points.py +48 -54
- udata/tests/api/test_dataservices_api.py +0 -2
- udata/tests/api/test_datasets_api.py +15 -29
- udata/tests/api/test_me_api.py +4 -6
- udata/tests/api/test_organizations_api.py +19 -38
- udata/tests/api/test_reports_api.py +0 -4
- udata/tests/api/test_reuses_api.py +9 -19
- udata/tests/api/test_swagger.py +2 -3
- udata/tests/api/test_tags_api.py +6 -7
- udata/tests/api/test_transfer_api.py +0 -2
- udata/tests/api/test_user_api.py +8 -10
- udata/tests/apiv2/test_datasets.py +0 -4
- udata/tests/apiv2/test_me_api.py +0 -2
- udata/tests/apiv2/test_organizations.py +0 -2
- udata/tests/apiv2/test_swagger.py +2 -3
- udata/tests/apiv2/test_topics.py +0 -2
- udata/tests/cli/test_cli_base.py +14 -12
- udata/tests/cli/test_db_cli.py +51 -54
- udata/tests/contact_point/test_contact_point_models.py +2 -2
- udata/tests/dataservice/test_csv_adapter.py +2 -5
- udata/tests/dataservice/test_dataservice_rdf.py +3 -6
- udata/tests/dataservice/test_dataservice_tasks.py +36 -38
- udata/tests/dataset/test_csv_adapter.py +2 -5
- udata/tests/dataset/test_dataset_actions.py +2 -4
- udata/tests/dataset/test_dataset_commands.py +2 -4
- udata/tests/dataset/test_dataset_events.py +3 -3
- udata/tests/dataset/test_dataset_model.py +6 -7
- udata/tests/dataset/test_dataset_rdf.py +6 -9
- udata/tests/dataset/test_dataset_recommendations.py +2 -2
- udata/tests/dataset/test_dataset_tasks.py +66 -68
- udata/tests/dataset/test_resource_preview.py +39 -48
- udata/tests/dataset/test_transport_tasks.py +2 -2
- udata/tests/features/territories/__init__.py +0 -6
- udata/tests/features/territories/test_territories_api.py +25 -24
- udata/tests/forms/test_current_user_field.py +2 -2
- udata/tests/forms/test_dict_field.py +2 -4
- udata/tests/forms/test_extras_fields.py +2 -3
- udata/tests/forms/test_image_field.py +2 -2
- udata/tests/forms/test_model_field.py +2 -4
- udata/tests/forms/test_publish_as_field.py +2 -4
- udata/tests/forms/test_user_forms.py +26 -29
- udata/tests/frontend/test_auth.py +2 -3
- udata/tests/frontend/test_csv.py +5 -6
- udata/tests/frontend/test_error_handlers.py +2 -3
- udata/tests/frontend/test_hooks.py +5 -7
- udata/tests/frontend/test_markdown.py +3 -4
- udata/tests/helpers.py +2 -7
- udata/tests/metrics/test_metrics.py +52 -48
- udata/tests/metrics/test_tasks.py +154 -150
- udata/tests/organization/test_csv_adapter.py +2 -5
- udata/tests/organization/test_notifications.py +2 -4
- udata/tests/organization/test_organization_model.py +3 -4
- udata/tests/organization/test_organization_rdf.py +2 -8
- udata/tests/plugin.py +6 -110
- udata/tests/reuse/test_reuse_model.py +3 -4
- udata/tests/site/test_site_api.py +0 -2
- udata/tests/site/test_site_csv_exports.py +0 -2
- udata/tests/site/test_site_metrics.py +2 -4
- udata/tests/site/test_site_model.py +2 -2
- udata/tests/site/test_site_rdf.py +3 -6
- udata/tests/test_activity.py +3 -3
- udata/tests/test_api_fields.py +6 -9
- udata/tests/test_cors.py +0 -2
- udata/tests/test_dcat_commands.py +2 -3
- udata/tests/test_discussions.py +2 -7
- udata/tests/test_mail.py +4 -10
- udata/tests/test_migrations.py +413 -419
- udata/tests/test_model.py +10 -11
- udata/tests/test_notifications.py +2 -3
- udata/tests/test_owned.py +3 -3
- udata/tests/test_routing.py +5 -5
- udata/tests/test_storages.py +6 -5
- udata/tests/test_tags.py +2 -1
- udata/tests/test_topics.py +2 -4
- udata/tests/test_transfer.py +4 -5
- udata/tests/topic/test_topic_tasks.py +25 -27
- udata/tests/user/test_user_rdf.py +2 -8
- udata/tests/workers/test_jobs_commands.py +2 -2
- udata/tests/workers/test_tasks_routing.py +27 -27
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/METADATA +1 -1
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/RECORD +113 -115
- udata/tests/frontend/__init__.py +0 -23
- udata/tests/metrics/conftest.py +0 -15
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/WHEEL +0 -0
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/entry_points.txt +0 -0
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/licenses/LICENSE +0 -0
- {udata-12.0.2.dev17.dist-info → udata-12.0.2.dev19.dist-info}/top_level.txt +0 -0
|
@@ -19,11 +19,10 @@ from udata.core.organization.models import Member
|
|
|
19
19
|
from udata.core.reuse.factories import ReuseFactory
|
|
20
20
|
from udata.core.spam.models import SpamMixin
|
|
21
21
|
from udata.core.user.factories import UserFactory
|
|
22
|
+
from udata.tests.api import PytestOnlyAPITestCase
|
|
22
23
|
|
|
23
24
|
|
|
24
|
-
|
|
25
|
-
class FixturesTest:
|
|
26
|
-
@pytest.mark.frontend
|
|
25
|
+
class FixturesTest(PytestOnlyAPITestCase):
|
|
27
26
|
@pytest.mark.options(FIXTURE_DATASET_SLUGS=["some-test-dataset-slug"])
|
|
28
27
|
def test_generate_fixtures_file_then_import(self, app, cli, api, monkeypatch):
|
|
29
28
|
"""Test generating fixtures from the current env, then importing them back."""
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
from tempfile import NamedTemporaryFile
|
|
2
2
|
|
|
3
|
-
import pytest
|
|
4
|
-
|
|
5
3
|
from udata.core.organization.constants import CERTIFIED, PUBLIC_SERVICE
|
|
6
4
|
from udata.core.organization.factories import OrganizationFactory
|
|
5
|
+
from udata.tests.api import PytestOnlyDBTestCase
|
|
7
6
|
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
class BadgeCommandTest:
|
|
8
|
+
class BadgeCommandTest(PytestOnlyDBTestCase):
|
|
11
9
|
def toggle(self, path_or_id, kind):
|
|
12
10
|
return self.cli("badges", "toggle", path_or_id, kind)
|
|
13
11
|
|
|
@@ -2,7 +2,7 @@ from udata.api_fields import field
|
|
|
2
2
|
from udata.auth import login_user
|
|
3
3
|
from udata.core.user.factories import UserFactory
|
|
4
4
|
from udata.mongo import db
|
|
5
|
-
from udata.tests import
|
|
5
|
+
from udata.tests.api import DBTestCase
|
|
6
6
|
|
|
7
7
|
from ..models import Badge, BadgeMixin, BadgesList
|
|
8
8
|
|
|
@@ -33,7 +33,7 @@ class Fake(db.Document, FakeBadgeMixin):
|
|
|
33
33
|
pass
|
|
34
34
|
|
|
35
35
|
|
|
36
|
-
class BadgeMixinTest(
|
|
36
|
+
class BadgeMixinTest(DBTestCase):
|
|
37
37
|
def test_attributes(self):
|
|
38
38
|
"""It should have a badge list"""
|
|
39
39
|
fake = Fake.objects.create()
|
|
@@ -323,6 +323,10 @@ class Dataservice(Auditable, WithMetrics, Linkable, Owned, db.Document):
|
|
|
323
323
|
"views",
|
|
324
324
|
]
|
|
325
325
|
|
|
326
|
+
@property
|
|
327
|
+
def is_visible(self):
|
|
328
|
+
return not self.is_hidden
|
|
329
|
+
|
|
326
330
|
@property
|
|
327
331
|
def is_hidden(self):
|
|
328
332
|
return self.private or self.deleted_at or self.archived_at
|
|
@@ -79,7 +79,7 @@ class DataserviceSearch(ModelSearchAdapter):
|
|
|
79
79
|
|
|
80
80
|
@classmethod
|
|
81
81
|
def is_indexable(cls, dataservice: Dataservice) -> bool:
|
|
82
|
-
return dataservice.
|
|
82
|
+
return dataservice.is_visible
|
|
83
83
|
|
|
84
84
|
@classmethod
|
|
85
85
|
def mongo_search(cls, args):
|
udata/core/dataset/search.py
CHANGED
|
@@ -54,8 +54,8 @@ class DatasetSearch(ModelSearchAdapter):
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
@classmethod
|
|
57
|
-
def is_indexable(cls, dataset):
|
|
58
|
-
return dataset.
|
|
57
|
+
def is_indexable(cls, dataset: Dataset):
|
|
58
|
+
return dataset.is_visible
|
|
59
59
|
|
|
60
60
|
@classmethod
|
|
61
61
|
def mongo_search(cls, args):
|
udata/core/reuse/search.py
CHANGED
|
@@ -40,7 +40,7 @@ class ReuseSearch(ModelSearchAdapter):
|
|
|
40
40
|
|
|
41
41
|
@classmethod
|
|
42
42
|
def is_indexable(cls, reuse: Reuse) -> bool:
|
|
43
|
-
return reuse.
|
|
43
|
+
return reuse.is_visible
|
|
44
44
|
|
|
45
45
|
@classmethod
|
|
46
46
|
def mongo_search(cls, args):
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import pytest
|
|
1
2
|
from flask import url_for
|
|
2
3
|
|
|
3
4
|
from udata.core.dataset.factories import DatasetFactory
|
|
@@ -13,15 +14,12 @@ from udata.core.spatial.tasks import compute_geozones_metrics
|
|
|
13
14
|
from udata.tests.api import APITestCase
|
|
14
15
|
from udata.tests.api.test_datasets_api import SAMPLE_GEOM
|
|
15
16
|
from udata.tests.features.territories import (
|
|
16
|
-
TerritoriesSettings,
|
|
17
17
|
create_geozones_fixtures,
|
|
18
18
|
)
|
|
19
19
|
from udata.utils import faker
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
class SpatialApiTest(APITestCase):
|
|
23
|
-
modules = []
|
|
24
|
-
|
|
25
23
|
def test_zones_api_one(self):
|
|
26
24
|
zone = GeoZoneFactory()
|
|
27
25
|
|
|
@@ -65,7 +63,7 @@ class SpatialApiTest(APITestCase):
|
|
|
65
63
|
for i in range(4):
|
|
66
64
|
GeoZoneFactory(name="name-test-{0}".format(i) if i % 2 else faker.word())
|
|
67
65
|
|
|
68
|
-
response = self.get(url_for("api.suggest_zones"
|
|
66
|
+
response = self.get(url_for("api.suggest_zones", q="name-test", size=5))
|
|
69
67
|
self.assert200(response)
|
|
70
68
|
|
|
71
69
|
self.assertEqual(len(response.json), 2)
|
|
@@ -84,7 +82,7 @@ class SpatialApiTest(APITestCase):
|
|
|
84
82
|
for _ in range(2):
|
|
85
83
|
GeoZoneFactory()
|
|
86
84
|
|
|
87
|
-
response = self.get(url_for("api.suggest_zones"
|
|
85
|
+
response = self.get(url_for("api.suggest_zones", q=zone.id))
|
|
88
86
|
self.assert200(response)
|
|
89
87
|
|
|
90
88
|
self.assertEqual(response.json[0]["id"], zone["id"])
|
|
@@ -96,7 +94,7 @@ class SpatialApiTest(APITestCase):
|
|
|
96
94
|
country_zone = GeoZoneFactory(name="name-test-country", level=country_level.id)
|
|
97
95
|
region_zone = GeoZoneFactory(name="name-test-region", level=region_level.id)
|
|
98
96
|
|
|
99
|
-
response = self.get(url_for("api.suggest_zones"
|
|
97
|
+
response = self.get(url_for("api.suggest_zones", q="name-test", size=5))
|
|
100
98
|
self.assert200(response)
|
|
101
99
|
|
|
102
100
|
self.assertEqual(len(response.json), 2)
|
|
@@ -108,7 +106,7 @@ class SpatialApiTest(APITestCase):
|
|
|
108
106
|
for i in range(4):
|
|
109
107
|
GeoZoneFactory(code="code-test-{0}".format(i) if i % 2 else faker.word())
|
|
110
108
|
|
|
111
|
-
response = self.get(url_for("api.suggest_zones"
|
|
109
|
+
response = self.get(url_for("api.suggest_zones", q="code-test", size=5))
|
|
112
110
|
self.assert200(response)
|
|
113
111
|
|
|
114
112
|
self.assertEqual(len(response.json), 2)
|
|
@@ -126,7 +124,7 @@ class SpatialApiTest(APITestCase):
|
|
|
126
124
|
for i in range(3):
|
|
127
125
|
GeoZoneFactory(name=5 * "{0}".format(i), code=3 * "{0}".format(i))
|
|
128
126
|
|
|
129
|
-
response = self.get(url_for("api.suggest_zones"
|
|
127
|
+
response = self.get(url_for("api.suggest_zones", q="xxxxxx", size=5))
|
|
130
128
|
self.assert200(response)
|
|
131
129
|
self.assertEqual(len(response.json), 0)
|
|
132
130
|
|
|
@@ -135,7 +133,7 @@ class SpatialApiTest(APITestCase):
|
|
|
135
133
|
for i in range(4):
|
|
136
134
|
GeoZoneFactory(name="name-testé-{0}".format(i) if i % 2 else faker.word())
|
|
137
135
|
|
|
138
|
-
response = self.get(url_for("api.suggest_zones"
|
|
136
|
+
response = self.get(url_for("api.suggest_zones", q="name-testé", size=5))
|
|
139
137
|
self.assert200(response)
|
|
140
138
|
|
|
141
139
|
self.assertEqual(len(response.json), 2)
|
|
@@ -150,7 +148,7 @@ class SpatialApiTest(APITestCase):
|
|
|
150
148
|
|
|
151
149
|
def test_suggest_zones_empty(self):
|
|
152
150
|
"""It should not provide zones suggestion if no data is present"""
|
|
153
|
-
response = self.get(url_for("api.suggest_zones"
|
|
151
|
+
response = self.get(url_for("api.suggest_zones", q="xxxxxx", size=5))
|
|
154
152
|
self.assert200(response)
|
|
155
153
|
self.assertEqual(len(response.json), 0)
|
|
156
154
|
|
|
@@ -194,7 +192,7 @@ class SpatialApiTest(APITestCase):
|
|
|
194
192
|
organization=organization, spatial=SpatialCoverageFactory(zones=[paca.id])
|
|
195
193
|
)
|
|
196
194
|
|
|
197
|
-
response = self.get(url_for("api.zone_datasets", id=paca.id
|
|
195
|
+
response = self.get(url_for("api.zone_datasets", id=paca.id, size=2))
|
|
198
196
|
self.assert200(response)
|
|
199
197
|
self.assertEqual(len(response.json), 2)
|
|
200
198
|
|
|
@@ -206,7 +204,7 @@ class SpatialApiTest(APITestCase):
|
|
|
206
204
|
organization=organization, spatial=SpatialCoverageFactory(zones=[paca.id])
|
|
207
205
|
)
|
|
208
206
|
|
|
209
|
-
response = self.get(url_for("api.zone_datasets", id=paca.id
|
|
207
|
+
response = self.get(url_for("api.zone_datasets", id=paca.id, dynamic=1))
|
|
210
208
|
self.assert200(response)
|
|
211
209
|
# No dynamic datasets given that the setting is deactivated by default.
|
|
212
210
|
self.assertEqual(len(response.json), 3)
|
|
@@ -219,7 +217,7 @@ class SpatialApiTest(APITestCase):
|
|
|
219
217
|
organization=organization, spatial=SpatialCoverageFactory(zones=[paca.id])
|
|
220
218
|
)
|
|
221
219
|
|
|
222
|
-
response = self.get(url_for("api.zone_datasets", id=paca.id
|
|
220
|
+
response = self.get(url_for("api.zone_datasets", id=paca.id, dynamic=1, size=2))
|
|
223
221
|
self.assert200(response)
|
|
224
222
|
# No dynamic datasets given that the setting is deactivated by default.
|
|
225
223
|
self.assertEqual(len(response.json), 2)
|
|
@@ -260,10 +258,11 @@ class SpatialApiTest(APITestCase):
|
|
|
260
258
|
self.assertEqual(response.json["features"][1]["properties"]["datasets"], 3)
|
|
261
259
|
|
|
262
260
|
|
|
261
|
+
@pytest.mark.options(
|
|
262
|
+
ACTIVATE_TERRITORIES=True,
|
|
263
|
+
HANDLED_LEVELS=("fr:commune", "fr:departement", "fr:region", "country"),
|
|
264
|
+
)
|
|
263
265
|
class SpatialTerritoriesApiTest(APITestCase):
|
|
264
|
-
modules = []
|
|
265
|
-
settings = TerritoriesSettings
|
|
266
|
-
|
|
267
266
|
def test_zone_datasets_with_dynamic_and_setting(self):
|
|
268
267
|
paca, bdr, arles = create_geozones_fixtures()
|
|
269
268
|
organization = OrganizationFactory()
|
|
@@ -272,7 +271,7 @@ class SpatialTerritoriesApiTest(APITestCase):
|
|
|
272
271
|
organization=organization, spatial=SpatialCoverageFactory(zones=[paca.id])
|
|
273
272
|
)
|
|
274
273
|
|
|
275
|
-
response = self.get(url_for("api.zone_datasets", id=paca.id
|
|
274
|
+
response = self.get(url_for("api.zone_datasets", id=paca.id, dynamic=1))
|
|
276
275
|
self.assert200(response)
|
|
277
276
|
# No dynamic datasets given that they are added by udata-front extension.
|
|
278
277
|
self.assertEqual(len(response.json), 3)
|
|
@@ -285,15 +284,13 @@ class SpatialTerritoriesApiTest(APITestCase):
|
|
|
285
284
|
organization=organization, spatial=SpatialCoverageFactory(zones=[paca.id])
|
|
286
285
|
)
|
|
287
286
|
|
|
288
|
-
response = self.get(url_for("api.zone_datasets", id=paca.id
|
|
287
|
+
response = self.get(url_for("api.zone_datasets", id=paca.id, dynamic=1, size=2))
|
|
289
288
|
self.assert200(response)
|
|
290
289
|
# No dynamic datasets given that they are added by udata-front extension.
|
|
291
290
|
self.assertEqual(len(response.json), 2)
|
|
292
291
|
|
|
293
292
|
|
|
294
293
|
class DatasetsSpatialAPITest(APITestCase):
|
|
295
|
-
modules = []
|
|
296
|
-
|
|
297
294
|
def test_create_spatial_zones(self):
|
|
298
295
|
paca, _, _ = create_geozones_fixtures()
|
|
299
296
|
granularity = spatial_granularities[0][0]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from datetime import timedelta
|
|
2
2
|
|
|
3
|
-
from udata.tests import
|
|
3
|
+
from udata.tests.api import DBTestCase
|
|
4
4
|
|
|
5
5
|
from ..factories import GeoZoneFactory
|
|
6
6
|
from ..models import GeoZone, SpatialCoverage
|
|
@@ -8,7 +8,7 @@ from ..models import GeoZone, SpatialCoverage
|
|
|
8
8
|
A_YEAR = timedelta(days=365)
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class SpacialCoverageTest(
|
|
11
|
+
class SpacialCoverageTest(DBTestCase):
|
|
12
12
|
def test_top_label_empty(self):
|
|
13
13
|
coverage = SpatialCoverage()
|
|
14
14
|
self.assertIsNone(coverage.top_label)
|
|
@@ -19,7 +19,7 @@ class SpacialCoverageTest(DBTestMixin, TestCase):
|
|
|
19
19
|
self.assertEqual(coverage.top_label, "name")
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
class SpatialTemporalResolutionTest(
|
|
22
|
+
class SpatialTemporalResolutionTest(DBTestCase):
|
|
23
23
|
def test_resolve_id_only(self):
|
|
24
24
|
zone = GeoZoneFactory()
|
|
25
25
|
for i in range(3):
|
|
@@ -6,14 +6,10 @@ from udata.core.followers.models import Follow
|
|
|
6
6
|
from udata.core.organization.factories import OrganizationFactory
|
|
7
7
|
from udata.core.user.factories import UserFactory
|
|
8
8
|
from udata.core.user.models import User
|
|
9
|
+
from udata.tests.api import APITestCase
|
|
9
10
|
|
|
10
|
-
pytestmark = pytest.mark.usefixtures("clean_db")
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
@pytest.mark.frontend
|
|
14
|
-
class UserModelTest:
|
|
15
|
-
modules = [] # Required for mails
|
|
16
11
|
|
|
12
|
+
class UserModelTest(APITestCase):
|
|
17
13
|
def test_mark_as_deleted(self):
|
|
18
14
|
user = UserFactory()
|
|
19
15
|
other_user = UserFactory()
|
|
@@ -1,20 +1,10 @@
|
|
|
1
|
-
import pytest
|
|
2
|
-
|
|
3
1
|
from udata.features.identicon.backends import internal
|
|
2
|
+
from udata.tests.api import PytestOnlyAPITestCase
|
|
4
3
|
from udata.tests.helpers import assert200
|
|
5
4
|
from udata.utils import faker
|
|
6
5
|
|
|
7
|
-
pytestmark = pytest.mark.usefixtures("app")
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def assert_stream_equal(response1, response2):
|
|
11
|
-
__tracebackhide__ = True
|
|
12
|
-
stream1 = list(response1.iter_encoded())
|
|
13
|
-
stream2 = list(response2.iter_encoded())
|
|
14
|
-
assert stream1 == stream2
|
|
15
|
-
|
|
16
6
|
|
|
17
|
-
class InternalBackendTest:
|
|
7
|
+
class InternalBackendTest(PytestOnlyAPITestCase):
|
|
18
8
|
def test_base_rendering(self):
|
|
19
9
|
response = internal(faker.word(), 32)
|
|
20
10
|
assert200(response)
|
|
@@ -25,4 +15,4 @@ class InternalBackendTest:
|
|
|
25
15
|
|
|
26
16
|
def test_render_twice_the_same(self):
|
|
27
17
|
identifier = faker.word()
|
|
28
|
-
|
|
18
|
+
self.assertStreamEqual(internal(identifier, 32), internal(identifier, 32))
|