1
- from unittest import mock
2
-
3
1
import django_dynamic_fixture as fixture
4
2
import pytest
5
3
from django .test import TestCase , override_settings
6
4
7
5
from readthedocs .builds .constants import EXTERNAL
8
- from readthedocs .core .resolver import (
9
- Resolver ,
10
- resolve ,
11
- resolve_domain ,
12
- resolve_path ,
13
- )
6
+ from readthedocs .core .resolver import Resolver , resolve , resolve_domain , resolve_path
14
7
from readthedocs .projects .constants import PRIVATE
15
8
from readthedocs .projects .models import Domain , Project , ProjectRelationship
16
9
from readthedocs .rtd_tests .utils import create_user
@@ -359,7 +352,10 @@ def test_domain_resolver(self):
359
352
url = resolve_domain (project = self .pip )
360
353
self .assertEqual (url , 'pip.readthedocs.org' )
361
354
362
- @override_settings (PRODUCTION_DOMAIN = 'readthedocs.org' )
355
+ @override_settings (
356
+ PRODUCTION_DOMAIN = "readthedocs.org" ,
357
+ PUBLIC_DOMAIN = "readthedocs.io" ,
358
+ )
363
359
def test_domain_resolver_with_domain_object (self ):
364
360
self .domain = fixture .get (
365
361
Domain ,
@@ -374,14 +370,23 @@ def test_domain_resolver_with_domain_object(self):
374
370
url = resolve_domain (project = self .pip )
375
371
self .assertEqual (url , 'docs.foobar.com' )
376
372
377
- @override_settings (PRODUCTION_DOMAIN = 'readthedocs.org' )
373
+ url = resolve_domain (project = self .pip , use_canonical_domain = False )
374
+ self .assertEqual (url , "pip.readthedocs.io" )
375
+
376
+ @override_settings (
377
+ PRODUCTION_DOMAIN = "readthedocs.org" ,
378
+ PUBLIC_DOMAIN = "readthedocs.io" ,
379
+ )
378
380
def test_domain_resolver_subproject (self ):
379
381
with override_settings (USE_SUBDOMAIN = False ):
380
382
url = resolve_domain (project = self .subproject )
381
383
self .assertEqual (url , 'readthedocs.org' )
382
384
with override_settings (USE_SUBDOMAIN = True ):
383
385
url = resolve_domain (project = self .subproject )
384
- self .assertEqual (url , 'pip.readthedocs.org' )
386
+ self .assertEqual (url , "pip.readthedocs.io" )
387
+
388
+ url = resolve_domain (project = self .subproject , use_canonical_domain = False )
389
+ self .assertEqual (url , "pip.readthedocs.io" )
385
390
386
391
@override_settings (PRODUCTION_DOMAIN = 'readthedocs.org' )
387
392
def test_domain_resolver_subproject_itself (self ):
@@ -404,14 +409,20 @@ def test_domain_resolver_subproject_itself(self):
404
409
url = resolve_domain (project = self .pip )
405
410
self .assertEqual (url , 'pip.readthedocs.org' )
406
411
407
- @override_settings (PRODUCTION_DOMAIN = 'readthedocs.org' )
412
+ @override_settings (
413
+ PRODUCTION_DOMAIN = "readthedocs.org" ,
414
+ PUBLIC_DOMAIN = "readthedocs.io" ,
415
+ )
408
416
def test_domain_resolver_translation (self ):
409
417
with override_settings (USE_SUBDOMAIN = False ):
410
418
url = resolve_domain (project = self .translation )
411
419
self .assertEqual (url , 'readthedocs.org' )
412
420
with override_settings (USE_SUBDOMAIN = True ):
413
421
url = resolve_domain (project = self .translation )
414
- self .assertEqual (url , 'pip.readthedocs.org' )
422
+ self .assertEqual (url , "pip.readthedocs.io" )
423
+
424
+ url = resolve_domain (project = self .translation , use_canonical_domain = False )
425
+ self .assertEqual (url , "pip.readthedocs.io" )
415
426
416
427
@override_settings (PRODUCTION_DOMAIN = 'readthedocs.org' )
417
428
def test_domain_resolver_translation_itself (self ):
@@ -444,6 +455,9 @@ def test_domain_public(self):
444
455
self .assertEqual (url , 'readthedocs.org' )
445
456
with override_settings (USE_SUBDOMAIN = True ):
446
457
url = resolve_domain (project = self .translation )
458
+ self .assertEqual (url , "pip.public.readthedocs.org" )
459
+
460
+ url = resolve_domain (project = self .translation , use_canonical_domain = False )
447
461
self .assertEqual (url , 'pip.public.readthedocs.org' )
448
462
449
463
@override_settings (
0 commit comments