
    ce                         d dl mZ d dlZd dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dlm
Z
  G d	 d
ej                        Z G d dej                        ZdZ G d dej                        Zy)    )baseN)_gettextutils)_)_lazy)_message)
_translate)fixturec                   *     e Zd Z fdZd Zd Z xZS )TranslationFixtureTestc                 z    t         t        |           | j                  t	        j
                               | _        y )N)superr   setUp
useFixturer	   Translationtrans_fixture)self	__class__s    >/usr/lib/python3/dist-packages/oslo_i18n/tests/test_fixture.pyr   zTranslationFixtureTest.setUp   s+    $d13!__W-@-@-BC    c                     | j                   j                  d      }| j                  |t        j                         | j                  d|j                         y Nzthis is a lazy message)r   lazyassertIsInstancer   MessageassertEqualmsgidr   msgs     r   	test_lazyz TranslationFixtureTest.test_lazy    sD      %%&>?c8#3#341399=r   c                     | j                   j                  d      }| j                  |t        j                         | j                  |t               | j                  d|       y r   )r   	immediateassertNotIsInstancer   r   r   strr   r   s     r   test_immediatez%TranslationFixtureTest.test_immediate%   sP      **+CD  h&6&67c3'137r   )__name__
__module____qualname__r   r   r$   __classcell__)r   s   @r   r   r      s    D>
8r   r   c                   $    e Zd Zd Zd Zd Zd Zy)ToggleLazyFixtureTextc                     dt         _        t        j                  d      }|j	                          | j                  t         j                         |j                          | j                  t         j                         y )NT)r   USE_LAZYr	   
ToggleLazyr   
assertTrue_restore_originalr   fs     r   
test_on_onz ToggleLazyFixtureText.test_on_on.   sN    t$		'	'r   c                     dt         _        t        j                  d      }|j	                          | j                  t         j                         |j                          | j                  t         j                         y )NTF)r   r,   r	   r-   r   assertFalser/   r.   r0   s     r   test_on_offz!ToggleLazyFixtureText.test_on_off6   sP    u%		(	'r   c                     dt         _        t        j                  d      }|j	                          | j                  t         j                         |j                          | j                  t         j                         y )NFT)r   r,   r	   r-   r   r.   r/   r4   r0   s     r   test_off_onz!ToggleLazyFixtureText.test_off_on>   sP    t$		'	(r   c                     dt         _        t        j                  d      }|j	                          | j                  t         j                         |j                          | j                  t         j                         y )NF)r   r,   r	   r-   r   r4   r/   r0   s     r   test_off_offz"ToggleLazyFixtureText.test_off_offF   sR    u%		(	(r   N)r%   r&   r'   r2   r5   r7   r9    r   r   r*   r*   ,   s    (())r   r*   en_ZZc                       e Zd Zd Zd Zy)PrefixLazyTranslationTestc                    | j                  t        j                  d             | j                  t        j                                | j	                  t
        j                         t        j                  j                  }d}d|z   dz   |z   }t        |      }| j                  |gt        j                  d             | j                  |gt        j                  d             | j                  |t        j                  |             y )NF	fake msg1
oslo_i18n/: 	oslo_i18n)r   r	   r-   PrefixLazyTranslationr.   r   r,   _DEFAULT_LANGr   r   r   get_available_languagesrB   r   	translate)r   default_langraw_id1expected_msgmsg1s        r   test_defaultz&PrefixLazyTranslationTest.test_defaultT   s     	**5125578'44BB#l2T9GCz,&>>{K	M,"::;G	Iz';';D'ABr   c                 T   t        j                  d      }|j                  t               | j	                  t        j                  |             d}dt
        j                  j                  z   dz   |z   }dt        z   dz   |z   }t        |      }| j                  |t        j                  d             | j                  |t        j                  d             | j                  |t        j                  |             | j                  |t        j                  |t                     y )Noslo)	languagesr?   r@   rA   rB   )desired_locale)r   rE   append
_FAKE_LANGr   r	   rC   rD   r   r   rB   r   rF   )r   rN   rH   expected_msg_en_USexpected_msg_en_ZZrJ   s         r   test_extra_langz)PrefixLazyTranslationTest.test_extra_langd   s   !99&A	$55	JK*%;;IIJ"#%,- *J6=Gz&>>{K	M"::;G	I+Z-A-A$-GH+#--d=GI	Jr   N)r%   r&   r'   rK   rT   r:   r   r   r=   r=   R   s    C Jr   r=   )oslotestr   	test_baserB   r   oslo_i18n._i18nr   r   r   r   r	   BaseTestCaser   r*   rQ   r=   r:   r   r   <module>rY      s_    '  #      8Y33 8$ )I22  )F 
#J	 6 6 #Jr   