From 96aad4ff42d6f4683b5243f917432645faa046c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=B8=D0=BA=D1=82=D0=BE=D1=80=20=D0=93=D0=BB=D0=B0?= =?UTF-8?q?=D0=B4=D0=BA=D0=B8=D1=85?= Date: Fri, 1 Nov 2019 14:28:01 +0300 Subject: [PATCH] Fix country code --- .../management/commands/import_collection.py | 4 +- apps/collection/tests.py | 112 ------------------ apps/collection/transfer.py | 33 ------ 3 files changed, 2 insertions(+), 147 deletions(-) delete mode 100644 apps/collection/tests.py delete mode 100644 apps/collection/transfer.py diff --git a/apps/collection/management/commands/import_collection.py b/apps/collection/management/commands/import_collection.py index c3b5d978..23fab48b 100644 --- a/apps/collection/management/commands/import_collection.py +++ b/apps/collection/management/commands/import_collection.py @@ -89,8 +89,8 @@ class Command(BaseCommand): queryset = [vars(query) for query in raw_qs] for obj in queryset: # establishment = Establishment.objects.filter(old_id=obj['establishment_id']).first() - lang = Language.objects.filter(locale=obj['country_code']) - country = Country.objects.filter(languages__in=lang).first() + # lang = Language.objects.filter(locale=obj['country_code']) + country = Country.objects.filter(code=obj['country_code']).first() if country: objects.append( Collection(name={"en-GB": obj['title']}, collection_type=Collection.ORDINARY, diff --git a/apps/collection/tests.py b/apps/collection/tests.py deleted file mode 100644 index b2b8231b..00000000 --- a/apps/collection/tests.py +++ /dev/null @@ -1,112 +0,0 @@ -import json -import pytz -from datetime import datetime -from http.cookies import SimpleCookie - -from rest_framework import status -from rest_framework.test import APITestCase - -from account.models import User -from collection.models import Collection, Guide -from establishment.models import Establishment, EstablishmentType -from location.models import Country - - -class BaseTestCase(APITestCase): - - def setUp(self): - self.username = 'sedragurda' - self.password = 'sedragurdaredips19' - self.email = 'sedragurda@desoz.com' - self.newsletter = True - self.user = User.objects.create_user( - username=self.username, email=self.email, password=self.password) - # get tokens - tokens = User.create_jwt_tokens(self.user) - self.client.cookies = SimpleCookie( - {'access_token': tokens.get('access_token'), - 'refresh_token': tokens.get('refresh_token'), - 'country_code': 'en'}) - - -class CollectionListTests(BaseTestCase): - def test_collection_list_Read(self): - response = self.client.get('/api/web/collections/', format='json') - self.assertEqual(response.status_code, status.HTTP_200_OK) - - -class CollectionDetailTests(BaseTestCase): - - def setUp(self): - super().setUp() - - # country = Country.objects.first() - # if not country: - country = Country.objects.create( - name=json.dumps({"en-GB": "Test country"}), - code="en" - ) - country.save() - - self.collection = Collection.objects.create( - name='Test collection', - is_publish=True, - start=datetime.now(pytz.utc), - end=datetime.now(pytz.utc), - country=country, - slug='test-collection-slug', - ) - - self.collection.save() - - def test_collection_detail_Read(self): - response = self.client.get(f'/api/web/collections/{self.collection.slug}/establishments/?country_code=en', - format='json') - self.assertEqual(response.status_code, status.HTTP_200_OK) - - -class CollectionGuideTests(CollectionDetailTests): - - def test_guide_list_Read(self): - response = self.client.get('/api/web/collections/guides/', format='json') - self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND) - - -class CollectionGuideDetailTests(CollectionDetailTests): - - def setUp(self): - super().setUp() - self.guide = Guide.objects.create( - collection=self.collection, - start=datetime.now(pytz.utc), - end=datetime.now(pytz.utc) - ) - self.guide.save() - - def test_guide_detail_Read(self): - response = self.client.get(f'/api/web/collections/guides/{self.guide.id}/', format='json') - self.assertEqual(response.status_code, status.HTTP_200_OK) - - -class CollectionWebHomeTests(CollectionDetailTests): - def setUp(self): - super().setUp() - self.establishment_type = EstablishmentType.objects.create(name="Test establishment type") - - for i in range(1, 5): - setattr(self, f"establishment{i}", - Establishment.objects.create( - name=f"Test establishment {i}", - establishment_type_id=self.establishment_type.id, - is_publish=True, - slug=f"test-establishment-{i}" - ) - ) - - getattr(self, f"establishment{i}").collections.add(self.collection) - - def test_collection_list_filter(self): - response = self.client.get('/api/web/collections/?country_code=en', format='json') - data = response.json() - self.assertIn('count', data) - self.assertGreater(data['count'], 0) diff --git a/apps/collection/transfer.py b/apps/collection/transfer.py deleted file mode 100644 index 1f7feb46..00000000 --- a/apps/collection/transfer.py +++ /dev/null @@ -1,33 +0,0 @@ -""" -Структура fields: -key - поле в таблице postgres -value - поле или группа полей в таблице legacy - -В случае передачи группы полей каждое поле представляет собой кортеж, где: -field[0] - название аргумента -field[1] - название поля в таблице legacy -Опционально: field[2] - тип данных для преобразования - -""" -card = { - "Collection": { - "data_type": "objects", - "dependencies": ("Country", ), - "fields": { - "Collections": { - # нету аналогов для полей description, start и end - "name": "title", - "slug": "slug", - "block_size": ("geometries", "django.db.models.JSONField"), - "is_publish": ("active", "django.db.models.BooleanField"), - "image_url": ("attachment_file_name", "django.db.models.URLField") - } - }, - "relations": { - # "country": "Country", - } - }, - -} - -used_apps = ("location", )