
    Gis                     T    d Z ddlZddlmc mZ ddlZddlm	Z	m
Z
 d Zd Zd Zd ZdS )u   认证模块测试。    N)is_authorizedcheck_user_permissionc                     d} g }t          | |          }d}||u }|st          j        d|fd||f          dt          j                    v st          j        t                     rt          j        t                     ndt          j        |           t          j        |          t          j        |          t          j        |          dz  }dd|iz  }t          t          j        |                    d	x} x}x}x}}d	S )
u!   空白名单允许所有用户。any_userTis)z9%(py6)s
{%(py6)s = %(py0)s(%(py2)s, %(py4)s)
} is %(py9)sr   )py0py2py4py6py9zassert %(py11)spy11N	r   
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_safereprAssertionError_format_explanation)@py_assert1@py_assert3@py_assert5@py_assert8@py_assert7@py_format10@py_format12s          */root/projects/qq-shell/tests/test_auth.py'test_is_authorized_with_empty_whitelistr       s"   #0R0=R((0D0(D0000000000(D000000000000=00000=0000000000R0000(0000D000000000000000000000000000000000    c                     ddg} d}t          ||           }d}||u }|st          j        d|fd||f          dt          j                    v st          j        t                     rt          j        t                     ndt          j        |          dt          j                    v st          j        |           rt          j        |           ndt          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    dx}x}x}}d}t          ||           }d}||u }|st          j        d|fd||f          dt          j                    v st          j        t                     rt          j        t                     ndt          j        |          dt          j                    v st          j        |           rt          j        |           ndt          j        |          t          j        |          dz  }d	d
|iz  }t          t          j        |                    dx}x}x}}dS )u   白名单限制访问。user123user456Tr   )z9%(py5)s
{%(py5)s = %(py0)s(%(py2)s, %(py3)s)
} is %(py8)sr   	whitelist)r	   r
   py3py5py8zassert %(py10)spy10Nuser789Fr   )r%   r   @py_assert4r   @py_assert6@py_format9@py_format11s          r   !test_is_authorized_with_whitelistr/      s   I&I"6=I..6$6.$6666666666.$666666666666=66666=66666666666666666I66666I666666.6666$66666666666666666666666666666"7=I..7%7.%7777777777.%777777777777=77777=77777777777777777I77777I777777.7777%7777777777777777777777777777777r!   c                     t          ddg          \  } }d}| |u }|st          j        d|fd| |f          dt          j                    v st          j        |           rt          j        |           ndt          j        |          dz  }dd|iz  }t          t          j        |                    d	x}}d	}||u }|st          j        d|fd||f          d
t          j                    v st          j        |          rt          j        |          nd
t          j        |          dz  }dd|iz  }t          t          j        |                    d	x}}d	S )u   允许的用户通过检查。r#   Tr   z%(py0)s is %(py3)sresultr	   r&   assert %(py5)sr'   Nmsg	r   r   r   r   r   r   r   r   r   )r2   r5   @py_assert2r   @py_format4@py_format6s         r   "test_check_user_permission_allowedr:      s   '	I;??KFC6T>6T66T3$;3$33$r!   c                     t          ddg          \  } }d}| |u }|st          j        d|fd| |f          dt          j                    v st          j        |           rt          j        |           ndt          j        |          dz  }dd	|iz  }t          t          j        |                    d
x}}d}||v }|st          j        d|fd||f          t          j        |          dt          j                    v st          j        |          rt          j        |          nddz  }dd	|iz  }t          t          j        |                    d
x}}d
S )u   禁止的用户被拒绝。r*   r#   Fr   r1   r2   r3   r4   r'   Nu	   无权限)in)z%(py1)s in %(py3)sr5   )py1r&   r6   )r2   r5   r7   r   r8   r9   @py_assert0s          r   !test_check_user_permission_deniedr?      s   '	I;??KFC6U?6U66U;#;#;##r!   )__doc__builtinsr   _pytest.assertion.rewrite	assertionrewriter   pytestbutler.security.authr   r   r    r/   r:   r?    r!   r   <module>rH      s                    E E E E E E E E1 1 1
8 8 8      r!   