Merge branch 'feature/translation-tests' into 'develop'
Add translation tests to model and API See merge request gm/gm-backend!19
This commit is contained in:
commit
fb93231650
64
apps/utils/tests.py
Normal file
64
apps/utils/tests.py
Normal file
|
|
@ -0,0 +1,64 @@
|
||||||
|
import pytz
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
from rest_framework.test import APITestCase
|
||||||
|
from rest_framework import status
|
||||||
|
from http.cookies import SimpleCookie
|
||||||
|
|
||||||
|
from account.models import User
|
||||||
|
from news.models import News, NewsType
|
||||||
|
|
||||||
|
|
||||||
|
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 tokkens
|
||||||
|
tokkens = User.create_jwt_tokens(self.user)
|
||||||
|
self.client.cookies = SimpleCookie(
|
||||||
|
{'access_token': tokkens.get('access_token'),
|
||||||
|
'refresh_token': tokkens.get('refresh_token'),
|
||||||
|
'locale': "en"
|
||||||
|
})
|
||||||
|
|
||||||
|
self.news_type = NewsType.objects.create(name="Test news type")
|
||||||
|
|
||||||
|
self.news_item = News.objects.create(
|
||||||
|
created_by=self.user,
|
||||||
|
modified_by=self.user,
|
||||||
|
title={
|
||||||
|
"en-GB": "Test news item",
|
||||||
|
"ru-RU": "Тестовая новость"
|
||||||
|
},
|
||||||
|
description={"en-GB": "Test description"},
|
||||||
|
playlist=1,
|
||||||
|
start=datetime.now(pytz.utc),
|
||||||
|
end=datetime.now(pytz.utc),
|
||||||
|
is_publish=True,
|
||||||
|
news_type=self.news_type
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class TranslateFieldModel(BaseTestCase):
|
||||||
|
|
||||||
|
def test_model_field(self):
|
||||||
|
self.assertIsNotNone(getattr(self.news_item, "title_translated", None))
|
||||||
|
|
||||||
|
|
||||||
|
class TranslateFieldReview(BaseTestCase):
|
||||||
|
|
||||||
|
def test_read_locale(self):
|
||||||
|
response = self.client.get(f"/api/web/news/{self.news_item.id}/", format='json')
|
||||||
|
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||||
|
news_data = response.json()
|
||||||
|
|
||||||
|
self.assertIn("title_translated", news_data)
|
||||||
|
|
||||||
|
self.assertEqual(news_data['title_translated'], "Test news item")
|
||||||
Loading…
Reference in New Issue
Block a user