
    Sf                     r    d dl mZ d dlmZmZ d dlmZ ddlmZ  G d de          Z	 G d d	e          Z
d
S )    )ImproperlyConfigured)hostpatterns)get_host_patterns   )HostsTestCasec                   &    e Zd Zd Zd Zd Zd ZdS )PatternsTestsc                 :   t          dt          ddd                    }|                     t          |          d           |                     t          |d         t                               |                     t          |d                   d           d S )N apiapi.urlsnamer   r   z><host api: regex='api' urlconf='api.urls' scheme='//' port=''>)r   r   assertEquallen
assertTrue
isinstancereprselfhost_patternss     E/var/www/html/env/lib/python3.11/site-packages/tests/test_defaults.pytest_patternzPatternsTests.test_pattern
   s     %000
 
 	]++Q///
=#3T::;;;mA.//0	1 	1 	1 	1 	1    c                     t          dd          }|                     t          |          d           |                     t	          |d         t
                               d S )Nr   )r   r   r   r   r   )r   r   r   r   r   r   r   s     r   test_pattern_as_tuplez#PatternsTests.test_pattern_as_tuple   s]     '
 
 	]++Q///
=#3T::;;;;;r   c                 p    t          ddd          }|                     t          t          d||           d S )Nr   r   r   r   )r   assertRaisesr   r   r   api_hosts     r   test_pattern_with_duplicatez)PatternsTests.test_pattern_with_duplicate   sD    
777."B(	< 	< 	< 	< 	<r   c                 *   t          dt          ddd                    }|                     t          |          d           |                     t          |d         t                               |                     |d         j        d           d S )Nmysiter   r   r   r   r   zmysite.api.urls)r   r   r   r   r   r   urlconfr   s     r   test_pattern_with_prefixz&PatternsTests.test_pattern_with_prefix    s     %000
 
 	]++Q///
=#3T::;;;q)13DEEEEEr   N)__name__
__module____qualname__r   r   r"   r&    r   r   r
   r
      sU        1 1 1< < << < <
F F F F Fr   r
   c                   ,    e Zd Zd Zd Zd Zd Zd ZdS )	HostTestsc                 z    t          ddd          }|                     t          |t                                d S )Nr   r   r   )r   r   r   r    s     r   	test_hostzHostTests.test_host+   s8    
777
8T2233333r   c                 b    t          dddd          }|                     |j        d           d S )Nr   r   z	spam.eggs)r   prefixzspam.eggs.api.urls)r   r   r%   r    s     r   test_host_prefixzHostTests.test_host_prefix/   s8    
{KKK)+?@@@@@r   c                 l    t          dddd          }|                     |j        t                     d S )Nr   r   z(django_hosts.resolvers.get_host_patternsr   callback)r   r   r4   r   r    s     r   test_host_string_callbackz#HostTests.test_host_string_callback3   sB    
!KM M M*,=>>>>>r   c                 v    t          dddt                    }|                     |j        t                     d S )Nr   r   r3   )r   r   r   r4   r    s     r   test_host_callable_callbackz%HostTests.test_host_callable_callback8   s?    
!24 4 4*,=>>>>>r   c                 2   t          dddd          |                     t          dfd           t          dddd          |                     t          dfd	           t          dddd
          |                     t          fd           d S )Nr   r   zwhatever.non_existentr3   z7Could not import 'whatever'. Error was: No module namedc                       j         S Nr4   r!   s   r   <lambda>z:HostTests.test_host_nonexistent_callback.<locals>.<lambda>B   
    H% r   zdjango_hosts.non_existentzOCould not import 'django_hosts.non_existent'. Callable does not exist in modulec                       j         S r:   r;   r<   s   r   r=   z:HostTests.test_host_nonexistent_callback.<locals>.<lambda>I   r>   r   ztests.broken_module.yeah_yeahc                       j         S r:   r;   r<   s   r   r=   z:HostTests.test_host_nonexistent_callback.<locals>.<lambda>M   s
    8I r   )r   assertRaisesMessager   r   r    s    @r   test_host_nonexistent_callbackz(HostTests.test_host_nonexistent_callback=   s    
!8: : :  !5E%%%%	' 	' 	' 
!<> > >  !50%%%%	' 	' 	'
 
!@B B B.0I0I0I0IJJJJJr   N)r'   r(   r)   r.   r1   r5   r7   rB   r*   r   r   r,   r,   )   sg        4 4 4A A A? ? ?
? ? ?
K K K K Kr   r,   N)django.core.exceptionsr   django_hosts.defaultsr   r   django_hosts.resolversr   baser   r
   r,   r*   r   r   <module>rG      s    7 7 7 7 7 7 0 0 0 0 0 0 0 0 4 4 4 4 4 4      F F F F FM F F FB$K $K $K $K $K $K $K $K $K $Kr   