Skip to content

Commit 2bd2dac

Browse files
authored
Merge pull request #6269 from readthedocs/stsewd/fix-tests
Fix tests
2 parents 6f3a980 + e4c0c07 commit 2bd2dac

File tree

2 files changed

+17
-15
lines changed

2 files changed

+17
-15
lines changed
+10-11
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
# Copied from test_middleware.py
22

33
from django.test import TestCase
4-
from django.test.client import RequestFactory
54
from django.test.utils import override_settings
65
from django_dynamic_fixture import get
76

87
from readthedocs.projects.models import Domain, Project
98
from readthedocs.proxito.middleware import ProxitoMiddleware
9+
from readthedocs.rtd_tests.base import RequestFactoryTestMixin
1010
from readthedocs.rtd_tests.utils import create_user
1111

1212

1313
@override_settings(USE_SUBDOMAIN=True)
1414
@override_settings(PUBLIC_DOMAIN='dev.readthedocs.io')
15-
class MiddlewareTests(TestCase):
15+
class MiddlewareTests(RequestFactoryTestMixin, TestCase):
1616

1717
def setUp(self):
18-
self.factory = RequestFactory()
1918
self.middleware = ProxitoMiddleware()
2019
self.url = '/'
2120
self.owner = create_user(username='owner', password='test')
@@ -32,51 +31,51 @@ def run_middleware(self, request):
3231
def test_proper_cname(self):
3332
domain = 'docs.random.com'
3433
get(Domain, project=self.pip, domain=domain)
35-
request = self.factory.get(self.url, HTTP_HOST=domain)
34+
request = self.request(self.url, HTTP_HOST=domain)
3635
res = self.run_middleware(request)
3736
self.assertIsNone(res)
3837
self.assertEqual(request.cname, True)
3938
self.assertEqual(request.host_project_slug, 'pip')
4039

4140
def test_proper_cname_uppercase(self):
4241
get(Domain, project=self.pip, domain='docs.random.com')
43-
request = self.factory.get(self.url, HTTP_HOST='docs.RANDOM.COM')
42+
request = self.request(self.url, HTTP_HOST='docs.RANDOM.COM')
4443
self.run_middleware(request)
4544
self.assertEqual(request.cname, True)
4645
self.assertEqual(request.host_project_slug, 'pip')
4746

4847
def test_invalid_cname(self):
4948
self.assertFalse(Domain.objects.filter(domain='my.host.com').exists())
50-
request = self.factory.get(self.url, HTTP_HOST='my.host.com')
49+
request = self.request(self.url, HTTP_HOST='my.host.com')
5150
r = self.run_middleware(request)
5251
# We show the 404 error page
5352
self.assertContains(r, 'my.host.com', status_code=404)
5453

5554
def test_proper_subdomain(self):
56-
request = self.factory.get(self.url, HTTP_HOST='pip.dev.readthedocs.io')
55+
request = self.request(self.url, HTTP_HOST='pip.dev.readthedocs.io')
5756
self.run_middleware(request)
5857
self.assertEqual(request.subdomain, True)
5958
self.assertEqual(request.host_project_slug, 'pip')
6059

6160
@override_settings(PUBLIC_DOMAIN='foo.bar.readthedocs.io')
6261
def test_subdomain_different_length(self):
63-
request = self.factory.get(
62+
request = self.request(
6463
self.url, HTTP_HOST='pip.foo.bar.readthedocs.io'
6564
)
6665
self.run_middleware(request)
6766
self.assertEqual(request.subdomain, True)
6867
self.assertEqual(request.host_project_slug, 'pip')
6968

7069
def test_request_header(self):
71-
request = self.factory.get(
70+
request = self.request(
7271
self.url, HTTP_HOST='some.random.com', HTTP_X_RTD_SLUG='pip'
7372
)
7473
self.run_middleware(request)
7574
self.assertEqual(request.rtdheader, True)
7675
self.assertEqual(request.host_project_slug, 'pip')
7776

7877
def test_request_header_uppercase(self):
79-
request = self.factory.get(
78+
request = self.request(
8079
self.url, HTTP_HOST='some.random.com', HTTP_X_RTD_SLUG='PIP'
8180
)
8281
self.run_middleware(request)
@@ -86,6 +85,6 @@ def test_request_header_uppercase(self):
8685

8786
def test_long_bad_subdomain(self):
8887
domain = 'www.pip.dev.readthedocs.io'
89-
request = self.factory.get(self.url, HTTP_HOST=domain)
88+
request = self.request(self.url, HTTP_HOST=domain)
9089
res = self.run_middleware(request)
9190
self.assertEqual(res.status_code, 400)
+7-4
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,34 @@
11
# Copied from .org test_redirects
22

33

4+
from django.test import override_settings
5+
46
from .base import BaseDocServing
57

68

9+
@override_settings(PUBLIC_DOMAIN_USES_HTTPS=True)
710
class RedirectTests(BaseDocServing):
811

912
def test_root_url(self):
1013
r = self.client.get('/', HTTP_HOST='project.dev.readthedocs.io')
1114
self.assertEqual(r.status_code, 302)
1215
self.assertEqual(
13-
r['Location'], 'http://project.dev.readthedocs.io/en/latest/',
16+
r['Location'], 'https://project.dev.readthedocs.io/en/latest/',
1417
)
1518

1619
def test_subproject_root_url(self):
1720
r = self.client.get('/projects/subproject/', HTTP_HOST='project.dev.readthedocs.io')
1821
self.assertEqual(r.status_code, 302)
1922
self.assertEqual(
20-
r['Location'], 'http://project.dev.readthedocs.io/projects/subproject/en/latest/',
23+
r['Location'], 'https://project.dev.readthedocs.io/projects/subproject/en/latest/',
2124
)
2225

2326
def test_root_redirect_with_query_params(self):
2427
r = self.client.get('/?foo=bar', HTTP_HOST='project.dev.readthedocs.io')
2528
self.assertEqual(r.status_code, 302)
2629
self.assertEqual(
2730
r['Location'],
28-
'http://project.dev.readthedocs.io/en/latest/?foo=bar'
31+
'https://project.dev.readthedocs.io/en/latest/?foo=bar'
2932
)
3033

3134
# Specific Page Redirects
@@ -34,5 +37,5 @@ def test_proper_page_on_subdomain(self):
3437
self.assertEqual(r.status_code, 302)
3538
self.assertEqual(
3639
r['Location'],
37-
'http://project.dev.readthedocs.io/en/latest/test.html',
40+
'https://project.dev.readthedocs.io/en/latest/test.html',
3841
)

0 commit comments

Comments
 (0)