Merge branch 'feature/update-establishment-slug-urls' into 'develop'
Feature/update establishment slug urls See merge request gm/gm-backend!29
This commit is contained in:
commit
0e4b714d2f
|
|
@ -138,6 +138,9 @@ class EstablishmentQuerySet(models.QuerySet):
|
|||
public_mark__isnull=False)
|
||||
if establishment_qs.exists():
|
||||
establishment = establishment_qs.first()
|
||||
|
||||
# TODO fix error:
|
||||
# AttributeError: 'NoneType' object has no attribute 'coordinates'
|
||||
return self.exclude(slug=establishment_slug) \
|
||||
.filter(is_publish=True,
|
||||
image_url__isnull=False,
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ class BaseTestCase(APITestCase):
|
|||
self.establishment_type = EstablishmentType.objects.create(name="Test establishment type")
|
||||
|
||||
|
||||
class EstablishmentTests(BaseTestCase):
|
||||
class EstablishmentBTests(BaseTestCase):
|
||||
def test_establishment_CRUD(self):
|
||||
params = {'page': 1, 'page_size': 1,}
|
||||
response = self.client.get('/api/back/establishments/', params, format='json')
|
||||
|
|
@ -93,7 +93,8 @@ class ChildTestCase(BaseTestCase):
|
|||
self.establishment = Establishment.objects.create(
|
||||
name="Test establishment",
|
||||
establishment_type_id=self.establishment_type.id,
|
||||
is_publish=True
|
||||
is_publish=True,
|
||||
slug="test"
|
||||
)
|
||||
|
||||
|
||||
|
|
@ -263,3 +264,89 @@ class EstablishmentShedulerTests(ChildTestCase):
|
|||
|
||||
response = self.client.delete(f'/api/back/establishments/{self.establishment.id}/schedule/1/')
|
||||
self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
|
||||
|
||||
|
||||
# Web tests
|
||||
class EstablishmentWebTests(BaseTestCase):
|
||||
|
||||
def test_establishment_Read(self):
|
||||
params = {'page': 1, 'page_size': 1,}
|
||||
response = self.client.get('/api/web/establishments/', params, format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
|
||||
class EstablishmentWebTagTests(BaseTestCase):
|
||||
|
||||
def test_tag_Read(self):
|
||||
response = self.client.get('/api/web/establishments/tags/', format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
|
||||
class EstablishmentWebSlugTests(ChildTestCase):
|
||||
|
||||
def test_slug_Read(self):
|
||||
response = self.client.get(f'/api/web/establishments/slug/{self.establishment.slug}/', format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
|
||||
class EstablishmentWebSimilarTests(ChildTestCase):
|
||||
|
||||
def test_similar_Read(self):
|
||||
response = self.client.get(f'/api/web/establishments/slug/{self.establishment.slug}/similar/', format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
|
||||
class EstablishmentWebCommentsTests(ChildTestCase):
|
||||
|
||||
def test_comments_CRUD(self):
|
||||
|
||||
response = self.client.get(f'/api/web/establishments/slug/{self.establishment.slug}/comments/', format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
data = {
|
||||
'text': 'test',
|
||||
'user': self.user.id,
|
||||
'mark': 4
|
||||
}
|
||||
|
||||
response = self.client.post(f'/api/web/establishments/slug/{self.establishment.slug}/comments/create/',
|
||||
data=data)
|
||||
|
||||
comment = response.json()
|
||||
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
|
||||
|
||||
response = self.client.get(f'/api/web/establishments/slug/{self.establishment.slug}/comments/{comment["id"]}/',
|
||||
format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
update_data = {
|
||||
'text': 'Test new establishment'
|
||||
}
|
||||
|
||||
response = self.client.patch(f'/api/web/establishments/slug/{self.establishment.slug}/comments/{comment["id"]}/',
|
||||
data=update_data)
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
|
||||
response = self.client.delete(
|
||||
f'/api/web/establishments/slug/{self.establishment.slug}/comments/{comment["id"]}/',
|
||||
format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
|
||||
|
||||
|
||||
class EstablishmentWebFavoriteTests(ChildTestCase):
|
||||
|
||||
def test_favorite_CR(self):
|
||||
data = {
|
||||
"user": self.user.id,
|
||||
"object_id": self.establishment.id
|
||||
}
|
||||
|
||||
response = self.client.post(f'/api/web/establishments/slug/{self.establishment.slug}/favorites/',
|
||||
data=data)
|
||||
|
||||
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
|
||||
|
||||
response = self.client.delete(
|
||||
f'/api/web/establishments/slug/{self.establishment.slug}/favorites/',
|
||||
format='json')
|
||||
self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
|
||||
|
|
|
|||
|
|
@ -8,13 +8,13 @@ app_name = 'establishment'
|
|||
urlpatterns = [
|
||||
path('', views.EstablishmentListView.as_view(), name='list'),
|
||||
path('tags/', views.EstablishmentTagListView.as_view(), name='tags'),
|
||||
path('<slug:slug>/', views.EstablishmentRetrieveView.as_view(), name='detail'),
|
||||
path('<slug:slug>/similar/', views.EstablishmentSimilarListView.as_view(), name='similar'),
|
||||
path('<slug:slug>/comments/', views.EstablishmentCommentListView.as_view(), name='list-comments'),
|
||||
path('<slug:slug>/comments/create/', views.EstablishmentCommentCreateView.as_view(),
|
||||
path('slug/<slug:slug>/', views.EstablishmentRetrieveView.as_view(), name='detail'),
|
||||
path('slug/<slug:slug>/similar/', views.EstablishmentSimilarListView.as_view(), name='similar'),
|
||||
path('slug/<slug:slug>/comments/', views.EstablishmentCommentListView.as_view(), name='list-comments'),
|
||||
path('slug/<slug:slug>/comments/create/', views.EstablishmentCommentCreateView.as_view(),
|
||||
name='create-comment'),
|
||||
path('<slug:slug>/comments/<int:comment_id>/', views.EstablishmentCommentRUDView.as_view(),
|
||||
path('slug/<slug:slug>/comments/<int:comment_id>/', views.EstablishmentCommentRUDView.as_view(),
|
||||
name='rud-comment'),
|
||||
path('<slug:slug>/favorites/', views.EstablishmentFavoritesCreateDestroyView.as_view(),
|
||||
path('slug/<slug:slug>/favorites/', views.EstablishmentFavoritesCreateDestroyView.as_view(),
|
||||
name='add-to-favorites')
|
||||
]
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user