mirror of
https://github.com/pinry/pinry.git
synced 2025-11-14 09:05:41 +01:00
Fix: Fix test failure cased by new django-test client response
+ Also fix the old middleware + Fix MIDDLEWARE name error
This commit is contained in:
@@ -55,16 +55,16 @@ class BoardPrivacyTests(APITestCase):
|
|||||||
|
|
||||||
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_board(self):
|
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_board(self):
|
||||||
resp = self.client.get(self.boards_url)
|
resp = self.client.get(self.boards_url)
|
||||||
self.assertEqual(len(resp.data), 0, resp.data)
|
self.assertEqual(len(resp.json()), 0, resp.json())
|
||||||
|
|
||||||
self.client.login(username=self.non_owner.username, password='password')
|
self.client.login(username=self.non_owner.username, password='password')
|
||||||
resp = self.client.get(self.boards_url)
|
resp = self.client.get(self.boards_url)
|
||||||
self.assertEqual(len(resp.data), 0, resp.data)
|
self.assertEqual(len(resp.json()), 0, resp.content)
|
||||||
|
|
||||||
def test_should_owner_has_permission_to_list_private_board(self):
|
def test_should_owner_has_permission_to_list_private_board(self):
|
||||||
self.client.login(username=self.non_owner.username, password='password')
|
self.client.login(username=self.non_owner.username, password='password')
|
||||||
resp = self.client.get(self.boards_url)
|
resp = self.client.get(self.boards_url)
|
||||||
self.assertEqual(len(resp.data), 0, resp.data)
|
self.assertEqual(len(resp.json()), 0, resp.content)
|
||||||
|
|
||||||
def test_should_non_owner_and_anonymous_user_has_no_permission_to_view_private_board(self):
|
def test_should_non_owner_and_anonymous_user_has_no_permission_to_view_private_board(self):
|
||||||
resp = self.client.get(self.board_url)
|
resp = self.client.get(self.board_url)
|
||||||
@@ -106,35 +106,35 @@ class PinPrivacyTests(APITestCase):
|
|||||||
|
|
||||||
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_pin(self):
|
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_pin(self):
|
||||||
resp = self.client.get(reverse("pin-list"))
|
resp = self.client.get(reverse("pin-list"))
|
||||||
self.assertEqual(len(resp.data['results']), 0, resp.data)
|
self.assertEqual(len(resp.json()['results']), 0, resp.content)
|
||||||
|
|
||||||
self.client.login(username=self.non_owner.username, password='password')
|
self.client.login(username=self.non_owner.username, password='password')
|
||||||
resp = self.client.get(reverse("pin-list"))
|
resp = self.client.get(reverse("pin-list"))
|
||||||
self.assertEqual(len(resp.data['results']), 0, resp.data)
|
self.assertEqual(len(resp.json()['results']), 0, resp.content)
|
||||||
|
|
||||||
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_pin_in_board(self):
|
def test_should_non_owner_and_anonymous_user_has_no_permission_to_list_private_pin_in_board(self):
|
||||||
resp = self.client.get(self.board_url)
|
resp = self.client.get(self.board_url)
|
||||||
self.assertEqual(len(resp.data['pins_detail']), 0, resp.data)
|
self.assertEqual(len(resp.json()['pins_detail']), 0, resp.content)
|
||||||
self.client.login(username=self.non_owner.username, password='password')
|
self.client.login(username=self.non_owner.username, password='password')
|
||||||
|
|
||||||
resp = self.client.get(self.board_url)
|
resp = self.client.get(self.board_url)
|
||||||
self.assertEqual(len(resp.data['pins_detail']), 0, resp.data)
|
self.assertEqual(len(resp.json()['pins_detail']), 0, resp.content)
|
||||||
|
|
||||||
def test_should_owner_user_has_permission_to_list_private_pin_in_board(self):
|
def test_should_owner_user_has_permission_to_list_private_pin_in_board(self):
|
||||||
self.client.login(username=self.owner.username, password='password')
|
self.client.login(username=self.owner.username, password='password')
|
||||||
resp = self.client.get(self.board_url)
|
resp = self.client.get(self.board_url)
|
||||||
self.assertEqual(len(resp.data['pins_detail']), 1, resp.data)
|
self.assertEqual(len(resp.json()['pins_detail']), 1, resp.content)
|
||||||
|
|
||||||
def test_should_owner_user_has_permission_to_list_private_pin(self):
|
def test_should_owner_user_has_permission_to_list_private_pin(self):
|
||||||
self.client.login(username=self.owner.username, password='password')
|
self.client.login(username=self.owner.username, password='password')
|
||||||
resp = self.client.get(reverse("pin-list"))
|
resp = self.client.get(reverse("pin-list"))
|
||||||
self.assertEqual(len(resp.data['results']), 1, resp.data)
|
self.assertEqual(len(resp.json()['results']), 1, resp.content)
|
||||||
|
|
||||||
def test_should_owner_has_permission_to_view_private_pin(self):
|
def test_should_owner_has_permission_to_view_private_pin(self):
|
||||||
self.client.login(username=self.owner.username, password='password')
|
self.client.login(username=self.owner.username, password='password')
|
||||||
resp = self.client.get(self.private_pin_url)
|
resp = self.client.get(self.private_pin_url)
|
||||||
self.assertEqual(resp.status_code, 200)
|
self.assertEqual(resp.status_code, 200)
|
||||||
self.assertEqual(resp.data['id'], self.private_pin.id)
|
self.assertEqual(resp.json()['id'], self.private_pin.id)
|
||||||
|
|
||||||
def test_should_anonymous_user_has_no_permission_to_view_private_pin(self):
|
def test_should_anonymous_user_has_no_permission_to_view_private_pin(self):
|
||||||
resp = self.client.get(self.private_pin_url)
|
resp = self.client.get(self.private_pin_url)
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
from django.core.urlresolvers import reverse
|
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
|
|
||||||
from core.models import Image
|
from core.models import Image
|
||||||
from core.tests import create_user
|
from core.tests import create_user, reverse
|
||||||
from users.models import User
|
from users.models import User
|
||||||
|
|
||||||
|
|
||||||
@@ -25,7 +24,7 @@ class CreateImageTest(TestCase):
|
|||||||
self.assertEqual(response.json()['id'], image.pk)
|
self.assertEqual(response.json()['id'], image.pk)
|
||||||
|
|
||||||
def test_post_error(self):
|
def test_post_error(self):
|
||||||
response = self.client.post(reverse('image-list'), {'image': None})
|
response = self.client.post(reverse('image-list'), {'image': ''})
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
response.json(),
|
response.json(),
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
|
from io import BytesIO
|
||||||
|
|
||||||
import mock
|
import mock
|
||||||
import qrcode
|
import qrcode
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
from django.core.files.images import ImageFile
|
from django.core.files.images import ImageFile
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.utils.six import BytesIO
|
|
||||||
from django_images.models import Image, Thumbnail
|
from django_images.models import Image, Thumbnail
|
||||||
from django_images.templatetags.images import at_size
|
from django_images.templatetags.images import at_size
|
||||||
from django_images.utils import scale_and_crop_single
|
from django_images.utils import scale_and_crop_single
|
||||||
|
|||||||
@@ -1,10 +1,8 @@
|
|||||||
from django.middleware.csrf import get_token
|
from django.middleware.csrf import get_token
|
||||||
|
from django.utils.deprecation import MiddlewareMixin
|
||||||
|
|
||||||
|
|
||||||
class ForceCSRFCookieMiddleware:
|
class ForceCSRFCookieMiddleware(MiddlewareMixin):
|
||||||
|
|
||||||
def __init__(self, get_response):
|
|
||||||
self.get_response = get_response
|
|
||||||
|
|
||||||
def process_request(self, request):
|
def process_request(self, request):
|
||||||
if "CSRF_TOKEN" not in request.META:
|
if "CSRF_TOKEN" not in request.META:
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ USE_TZ = True
|
|||||||
|
|
||||||
STATIC_URL = '/static/'
|
STATIC_URL = '/static/'
|
||||||
|
|
||||||
MEDIA_URL = '/static/media/'
|
MEDIA_URL = '/media/'
|
||||||
|
|
||||||
# Set to False to disable people from creating new accounts.
|
# Set to False to disable people from creating new accounts.
|
||||||
ALLOW_NEW_REGISTRATIONS = True
|
ALLOW_NEW_REGISTRATIONS = True
|
||||||
|
|||||||
@@ -1,18 +1,16 @@
|
|||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.http import HttpResponseForbidden
|
from django.http import HttpResponseForbidden
|
||||||
|
from django.utils.deprecation import MiddlewareMixin
|
||||||
|
|
||||||
|
|
||||||
class Public:
|
class Public(MiddlewareMixin):
|
||||||
|
|
||||||
acceptable_paths = (
|
acceptable_paths = (
|
||||||
"/api/v2/profile/",
|
"/api/v2/profile/",
|
||||||
)
|
)
|
||||||
|
|
||||||
def __init__(self, get_response):
|
|
||||||
self.get_response = get_response
|
|
||||||
|
|
||||||
def process_request(self, request):
|
def process_request(self, request):
|
||||||
if settings.PUBLIC is False and not request.user.is_authenticated():
|
if settings.PUBLIC is False and not request.user.is_authenticated:
|
||||||
for path in self.acceptable_paths:
|
for path in self.acceptable_paths:
|
||||||
if not request.path.startswith(path):
|
if not request.path.startswith(path):
|
||||||
return HttpResponseForbidden()
|
return HttpResponseForbidden()
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
from django.core.urlresolvers import reverse
|
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
from django.test.utils import override_settings
|
from django.test.utils import override_settings
|
||||||
|
|
||||||
import mock
|
import mock
|
||||||
|
from django.urls import reverse
|
||||||
|
|
||||||
from .auth.backends import CombinedAuthBackend
|
from .auth.backends import CombinedAuthBackend
|
||||||
from .models import User
|
from .models import User
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ from django.conf.urls import url, include
|
|||||||
from users.views import login_user
|
from users.views import login_user
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
|
|
||||||
|
app_name = "users"
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r'', include(views.drf_router.urls)),
|
url(r'', include(views.drf_router.urls)),
|
||||||
url(r'^login/$', login_user, name='login'),
|
url(r'^login/$', login_user, name='login'),
|
||||||
|
|||||||
Reference in New Issue
Block a user