
    Bhs?                        d dl Z d dlmZ d dlmZ d dlmZmZ d dlm	Z	 d dl
mZmZ ddlmZmZmZ d	d
lmZ dZ G d d      Z ed       G d dee             Z ed       G d dee             Z G d d      Z G d de      Z G d de      Z ed       G d dee             Z ed       G d dee             Zy)    N)User)	QueryDict)TestCaseoverride_settings)reverse)NamedUrlCookieWizardViewNamedUrlSessionWizardView   )Step1Step2get_request   )temp_storageztests.pyc                   T    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zy)NamedWizardTestsc                     t         j                  j                  d      \  | _        }t	        j
                  | j                        | _        | j                  j                  | j                  d   d<   y )N	testuser1)usernamer   z
form1-user)r   objectsget_or_createtestusercopydeepcopywizard_step_datapk)selfcreateds     S/home/dcms/DCMS/lib/python3.12/site-packages/tests/wizard/namedwizardtests/tests.pysetUpzNamedWizardTests.setUp   sV    !%!;!;[!;!Qw $d.C.C D151A1Aa .    c                 h    t        j                  d      d   D ]  }t        j                  |        y )N r   )r   listdirdelete)r   files     r   tearDownzNamedWizardTests.tearDown   s1     !((,Q/ 	&D%	&r    c                 .   | j                   j                  t        d| j                  z              }| j	                  |j
                  d       | j                   j                  |j                        }| j	                  |j
                  d       |j                  d   }| j	                  |d   j                  d       | j	                  |d   j                  d       | j	                  |d   j                  d       | j	                  |d   j                  d	       | j	                  |d   j                  d        | j	                  |d   j                  d
       | j	                  |d   j                  d       | j	                  |d   | j                         y )N%s_start.     wizardstepsform1r   r   form4form2   url_name)clientgetr   wizard_urlnameassertEqualstatus_codeurlcontextcurrentstep0step1lastprevnextcountr   responser+   s      r   test_initial_callz"NamedWizardTests.test_initial_call$   sG   ;;??7:8K8K+K#LM--s3;;??8<<0--s3!!(+00':..2..2--w7--t4--w7..2
+T-@-@Ar    c                    ddd}| j                   j                  t        d| j                  z        |      }| j	                  |j
                  d       |j                  }| j                  |j                  d      d       t        ||j                  d      dz   d        }| j	                  t        |j                               |       y )	Ngetval1getval2)getvar1getvar2r(   r)   ?r   )r2   r3   r   r4   r5   r6   r7   assertNotEqualfindr   dictitems)r   
get_paramsrA   location	querydicts        r   test_initial_call_with_paramsz.NamedWizardTests.test_initial_call_with_params3   s    !*yA
;;??7:8K8K+K#L#-/--s3 <<HMM#.3hx}}S'9A'='>?@	ioo/0*=r    c                 p   | j                   j                  t        | j                  ddi      | j                        }| j                  |j                  d       | j                  |j                  d   d   j                  d       | j                  |j                  d   d   j                  dgdgd	       y )
Nstepr-   kwargsr*   r+   r,   formzThis field is required.)nameuser)
r2   postr   r4   wizard_step_1_datar5   r6   r8   r9   errorsr   rA   s     r   test_form_post_errorz%NamedWizardTests.test_form_post_error?   s    ;;##D''0AB##% 	--s3))(3G<DDgN))(3F;BB#<"=#<"=?	@r    c                    | j                   j                  t        | j                  ddi      | j                  d         }| j                   j                  |j                        }| j                  |j                  d       |j                  d   }| j                  |d   j                  d       | j                  |d   j                  d	       | j                  |d   j                  d       | j                  |d   j                  d
       y )NrS   r-   rT   r   r*   r+   r,   r/   r   form3)r2   rY   r   r4   r   r3   r7   r5   r6   r8   r9   r:   r=   r>   r@   s      r   test_form_post_successz'NamedWizardTests.test_form_post_successJ   s    ;;##D''0AB!!!$& ;;??8<<0--s3!!(+00':..2--w7--w7r    c                    | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                   j                  t        | j                  ddi      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      d	|j                  d   d   j                  i      }| j                   j                  |j                        }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       y )
NrS   r-   rT   r*   r+   r,   r   r/   wizard_goto_step)r2   r3   r   r4   r5   r6   r8   r9   rY   r   r7   r=   r\   s     r   test_form_stepbackz#NamedWizardTests.test_form_stepbackW   s   ;;??D''0ABD 	--s3))(3G<DDgN;;##D''0AB!!!$& ;;??8<<0--s3))(3G<DDgN;;##D''((27;CC1 #X%5%5h%?%H%M%MNP ;;??8<<0--s3))(3G<DDgNr    c                    | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       y )NrS   r-   rT   r*   r+   r,   r_   )r2   r3   r   r4   r5   r6   r8   r9   r\   s     r   test_form_jumpzNamedWizardTests.test_form_jumpo   s    ;;??D''0ABD 	--s3))(3G<DDgN;;??D''0ABD--s3))(3G<DDgNr    c           	      	   | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                  d	   }t        t        d
      5 }||d<   | j                   j                  t        | j                  d|j                  d   d   j                  i      |      }d d d        | j                   j                  |j                        }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       t        t        d
      5 }t        j                  t              5 }| j	                  |j                         |j                                d d d        d d d        | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j!                  t        j"                  t                     |j                  d   }|d	   d= | j	                  |dd| j$                  ddddddiddiddigg       y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w)NrS   r-   rT   r*   r+   r,   r   r/   r   rbform2-file1r_   r
   r.      	form_listfile1PonyT)rW   thirstyrX   123 Main St
Djangoland)address1address2random_crap	blah blah)r2   r3   r   r4   r5   r6   r8   r9   rY   r   r7   open__file__r   UPLOADED_FILE_NAMEreadassertFalseexistsr   )r   rA   	post_data	post_fileff2all_datas          r   test_form_finishz!NamedWizardTests.test_form_finish{   s   ;;??D''0ABD 	--s3))(3G<DDgN;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3))(3G<DDgN))!,	(D! 	Y'0Im${{''++ &(8(8(B7(K(S(STVH	 ;;??8<<0--s3))(3G<DDgN (D! 	2Q(9(9:L(M 	2QSQVVXrwwy1	2 	2 ;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3))(3G<DDgN;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3 	,,-?@A##K0QK dmmD&LAK([)M;+GH	$J 	KI	 		2 	2 	2 	2s1   !AQ!9Q;/Q.Q;!Q+.Q8	3Q;;Rc                 f
   | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j                  d   }t        t        d	      5 }||d
<   | j                   j                  t        | j                  d|j                  d   d   j                  i      |      }d d d        | j                   j                  |j                        }| j	                  |j
                  d       | j                  t        j                  t                      t        | j                  ddi      }| j                   j                  |      }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       t        t        d	      5 }t        j                  t               5 }| j	                  |j#                         |j#                                d d d        d d d        | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       |j                  d   }| j	                  |d   j$                  t                | j                  |d   j&                         | j)                  t        j                  t                      |d= | j	                  |dd| j*                  dddddiddigd       |j                  d   }| j-                  d|j/                                | j-                  d|j/                                | j	                  |d   j0                  |j                  d   d          y # 1 sw Y   xY w# 1 sw Y   yxY w# 1 sw Y   ~xY w)NrS   r-   rT   r*   r+   r,   r   r   rg   rh   r/   r
   ri   all_cleaned_datark   rl   Trn   ro   rs   rr   )rW   rm   rX   rp   rq   rr   zformset-form4	form_dictrj   )r2   r3   r   r4   r5   r6   rY   r8   r9   r   r7   rt   ru   
assertTruer   ry   rv   rw   rW   closedrx   r   assertInkeyscleaned_data)	r   rA   rz   r{   	step2_urlr|   r}   r~   r   s	            r   test_cleaned_dataz"NamedWizardTests.test_cleaned_data   s[   ;;??D''0ABD--s3;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3))!,	(D! 	Y'0Im${{''++ &(8(8(B7(K(S(STVH	 ;;??8<<0--s3++,>?@D//8IJ	;;??9---s3))(3G<DDgN(D! 	2Q(9(9:L(M 	2QSQVVXrwwy1	2 	2 ;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3##$67'*//1CD)001,,-?@AWdmm&L'--;	 $$[1	gy~~/0gy~~/07+88(:J:J;:WXY:Z[a	 		2 	2 	2 	2s1   	ATT&3/T"T&TT#	T&&T0c           	      ~   | j                   j                  t        | j                  ddi            }| j	                  |j
                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j                   j                  |j                        }| j	                  |j
                  d       | j                  d   }t        t        d	      5 }||d
<   | j                   j                  t        | j                  d|j                  d   d   j                  i      |      }d d d        | j                   j                  |j                        }| j	                  |j
                  d       | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }|j                  }| j                   j                  |      }| j	                  |j
                  d|       | j                   j                  j                  dd        | j                   j                  j                  dd        | j                   j                  t        | j                  d|j                  d   d   j                  i      | j                  d         }| j	                  |j
                  d       | j	                  |j                  d   d   j                  d       y # 1 sw Y   xY w)NrS   r-   rT   r*   r+   r,   r   r   rg   rh   r
   	sessionidwizard_cookie_contact_wizardri   )r2   r3   r   r4   r5   r6   rY   r8   r9   r   r7   rt   ru   cookiespop)r   rA   rz   r{   locs        r   test_manipulated_dataz&NamedWizardTests.test_manipulated_data   s   ;;??D''0ABD--s3;;##D''"H$4$4X$>w$G$O$OPR!!!$& ;;??8<<0--s3))!,	(D! 	Y'0Im${{''++ &(8(8(B7(K(S(STVH	 ;;??8<<0--s3;;##D''"H$4$4X$>w$G$O$OPR!!!$& ll;;??3'--sC8T2 >E;;##D''"H$4$4X$>w$G$O$OPR!!!$&
 	--s3))(3G<DDgN5	 	s   	AL22L<c                    | j                   j                  t        | j                  ddi      | j                  d         }| j                   j                  |j                        }| j                  |j                  d       | j                  |j                  d   d   j                  d       | j                   j                  d	t        d
| j                  z        z        }| j                  |j                  d       | j                   j                  |j                        }| j                  |j                  d       | j                  |j                  d   d   j                  d       y )NrS   r-   rT   r   r*   r+   r,   r/   z
%s?reset=1r(   r)   )r2   rY   r   r4   r   r3   r7   r5   r6   r8   r9   r\   s     r   test_form_resetz NamedWizardTests.test_form_reset  s    ;;##D''0AB!!!$& ;;??8<<0--s3))(3G<DDgN;;??7:0C0C#CDDF--s3;;??8<<0--s3))(3G<DDgNr    N)__name__
__module____qualname__r   r&   rB   rQ   r]   r`   rc   re   r   r   r   r    r    r   r   r      sJ    B&B
>	@8O0
O9Kv=\~'OROr    r   z"tests.wizard.namedwizardtests.urls)ROOT_URLCONFc            
       H    e Zd ZdZddiZddddddd	d
ddddddddddfZy)NamedSessionWizardTestsnwiz_session#session_contact_wizard-current_stepr-   rl   2)
form1-nameform1-thirstyr   rn   ro   r/   )form2-address1form2-address2r   rs   r_   )form3-random_crapr   0r.   )form4-INITIAL_FORMSform4-TOTAL_FORMSform4-MAX_NUM_FORMSform4-0-random_crapform4-1-random_crapr   Nr   r   r   r4   rZ   r   r   r    r   r   r   /  sb    #N-w
 ! 3:	
 ,*3:	
 "-3:	

 $'!$#&#.#.3:	
r    r   c            
       H    e Zd ZdZddiZddddddd	d
ddddddddddfZy)NamedCookieWizardTestsnwiz_cookie"cookie_contact_wizard-current_stepr-   rl   r   )r   r   r   rn   ro   r/   )r   r   r   rs   r_   )r   r   r   r.   )r   r   r   r   r   r   Nr   r   r    r   r   r   O  sb    "N,g
 ! 29	
 ,*29	
 "-29	

 $'!$#&#.#.29	
r    r   c                       e Zd Zd Zy)NamedFormTestsc                 
   t               }| j                  j                  dt        fdt        fg| j
                        } ||d      \  }}|j                  d        | j                  |j                  j                  d       y )Nstartstep2)r1   done)rS   )
r   formwizard_classas_viewr   r   r4   render_doner5   storagecurrent_step)r   requesttestformrA   instances        r   test_revalidationz NamedFormTests.test_revalidationq  s|    -((00u/0(( 1 * &gF;(T"))66@r    N)r   r   r   r   r   r    r   r   r   o  s    	Ar    r   c                        e Zd Z fdZ xZS )TestNamedUrlSessionWizardViewc                 2    t        |   |g|i |}|| fS Nsuperdispatchr   r   argsrU   rA   	__class__s        r   r   z&TestNamedUrlSessionWizardView.dispatch  &    7#G=d=f=~r    r   r   r   r   __classcell__r   s   @r   r   r   }       r    r   c                        e Zd Z fdZ xZS )TestNamedUrlCookieWizardViewc                 2    t        |   |g|i |}|| fS r   r   r   s        r   r   z%TestNamedUrlCookieWizardView.dispatch  r   r    r   r   s   @r   r   r     r   r    r   c                       e Zd ZeZdZy)NamedSessionFormTestsr   N)r   r   r   r   r   r4   r   r    r   r   r     s    4#Nr    r   c                       e Zd ZeZdZy)NamedCookieFormTestsr   N)r   r   r   r   r   r4   r   r    r   r   r     s    3"Nr    r   )r   django.contrib.auth.modelsr   django.httpr   django.testr   r   django.urlsr   formtools.wizard.viewsr   r	   
test_formsr   r   r   formsr   rv   r   r   r   r   r   r   r   r   r   r    r   <module>r      s     + ! 3  3 2  ZO ZOz  DE.  F>  DE-x  F>A A$= #;   DE$NH $ F$
  DE#>8 # F#r    