Test change

This commit is contained in:
Виктор Гладких 2019-10-10 15:20:13 +03:00
parent 56c0927a52
commit ab5a66afe2
4 changed files with 38 additions and 8 deletions

View File

@ -13,17 +13,20 @@ class IsCommentModerator(permissions.BasePermission):
# so we'll always allow GET, HEAD or OPTIONS requests.
if request.method in permissions.SAFE_METHODS:
return True
# user owner is user request
if obj.user == request.user:
return True
# # user owner is user request
# if obj.user == request.user:
# return True
# Must have role
role = Role.objects.filter(role=2, country__language=obj.language).first() # 'Comments moderator'
# ,country__languages__id=obj.language_id
role = Role.objects.filter(role=2,
country__languages__id=obj.language_id)\
.first() # 'Comments moderator'
is_access = UserRole.objects.filter(user=request.user, role=role).exists()
if obj.user != request.user and is_access:
return True
super_user=User.objects.filter(pk=request.user.pk, is_superuser=True).exists()
super_user = User.objects.filter(pk=request.user.pk, is_superuser=True).exists()
if super_user:
return True

View File

@ -7,17 +7,25 @@ from http.cookies import SimpleCookie
from location.models import Country
from account.models import Role, User, UserRole
from comment.models import Comment
from translation.models import Language
class CommentModeratorPermissionTests(APITestCase):
def setUp(self):
self.lang = Language.objects.create(
title='Russia',
locale='ru-RU'
)
self.lang.save()
self.country_ru = Country.objects.create(
name='{"ru-RU":"Russia"}',
code='23',
low_price=15,
high_price=150000
high_price=150000,
)
self.country_ru.languages.add(self.lang)
self.country_ru.save()
self.role = Role.objects.create(
@ -42,7 +50,8 @@ class CommentModeratorPermissionTests(APITestCase):
self.comment = Comment.objects.create(text='Test comment', mark=1,
user=self.user_test["user"],
object_id= self.country_ru.pk,
content_type_id=content_type.id
content_type_id=content_type.id,
language=self.lang
)
self.comment.save()
self.url = reverse('back:comment:comment-crud', kwargs={"id": self.comment.id})

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.4 on 2019-10-10 12:05
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('location', '0011_country_language'),
]
operations = [
migrations.RenameField(
model_name='country',
old_name='language',
new_name='languages',
),
]

View File

@ -18,7 +18,7 @@ class Country(TranslatedFieldsMixin, SVGImageMixin, ProjectBaseMixin):
code = models.CharField(max_length=255, unique=True, verbose_name=_('Code'))
low_price = models.IntegerField(default=25, verbose_name=_('Low price'))
high_price = models.IntegerField(default=50, verbose_name=_('High price'))
language = models.ManyToManyField(Language, verbose_name=_('Language'))
languages = models.ManyToManyField(Language, verbose_name=_('Languages'))
class Meta:
"""Meta class."""