
    BhL                         d dl 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 d dlmZmZ  ej                   e j"                  j%                  d	      
      Z e
e      Zd Z G d d      Zy)    N)datetime)import_module)settings)User)FileSystemStorage)SimpleUploadedFile)HttpRequestHttpResponseDJANGO_TEST_TEMP_DIR)dir)locationc                  x    t               } t        t        j                        }|j	                  d       | _        | S )N)r	   r   r   SESSION_ENGINESessionStoresession)requestengines     D/home/dcms/DCMS/lib/python3.12/site-packages/tests/wizard/storage.pyget_requestr      s0    mG8223F))$/GON    c                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)TestStoragec                 T    t         j                  j                  d      \  | _        }y )N	testuser1)username)r   objectsget_or_createtestuser)selfcreateds     r   setUpzTestStorage.setUp   s     !%!;!;[!;!Qwr   c                    t               } | j                         d|d       }d}| j                  |j                  d        ||_        | j                  |j                  |       |j	                          | j                  |j                  d        ||_         | j                         d|d       }| j                  |j                  d        y )Nwizard1   wizard2)r   get_storageassertEqualcurrent_stepreset)r   r   storagemy_stepstorage2s        r   test_current_stepzTestStorage.test_current_step   s    -$$""$Y>--t4&--w7--t4&%4##%i$?..5r   c                 2   t               } | j                         d|d       }d}ddt        j                         | j                  d}| j                  |j                  |      d        |j                  ||       | j                  |j                  |      |       |j                          | j                  |j                  |      d        |j                  ||        | j                         d|d       }| j                  |j                  |      d        y )Nr#   startdata1data2)field1field2field3field4r%   )	r   r&   r   nowr   r'   get_step_dataset_step_datar)   )r   r   r*   step1
step_data1r,   s         r   test_step_datazTestStorage.test_step_data,   s    -$$""$Y> ' ' ( $/

 	..u5t<eZ0..u5zB..u5t<eZ0%4##%i$?//6=r   c                    t               } | j                         d|d       }ddt        j                         | j                  d}| j                  |j                  i        ||_        | j                  |j                  |       |j                          | j                  |j                  i        ||_         | j                         d|d       }| j                  |j                  i        y )Nr#   r0   r1   )key1key2key3key4r%   )r   r&   r   r6   r   r'   
extra_datar)   )r   r   r*   extra_contextr,   s        r   test_extra_contextzTestStorage.test_extra_contextA   s    -$$""$Y>!(!(!)!%0
 	++R0*++];++R0*%4##%i$?,,b1r   c                     t               } | j                         d|d       }| j                  d|j                  v        d|j                  d<   | j	                  d|j                  v        y )Nr#   testT)r   r&   assertFalserA   
assertTrue)r   r   r*   s      r   "test_extra_context_key_persistencez.TestStorage.test_extra_context_key_persistenceU   sb    -$$""$Y>7#5#556%)6"'"4"445r   c                    t               } | j                         d|t              }d}t        dd      }|j	                  |d|i       |j                  |      d   5 }|j                  }d d d        | j                  |j                  j                               |j                          |j                  t                      | j                  |j                  j                  |             y # 1 sw Y   xY w)Nr#   r/   zfile.txts   contentfile)r   r&   temp_storager   set_step_filesget_step_filesnamerG   file_storageexistsr)   update_responser
   rF   )r   r   r*   stepfile_rJ   tmp_names          r   test_reset_deletes_tmp_filesz(TestStorage.test_reset_deletes_tmp_files_   s    -$$""$YF":z:tfe_5##D)&1 	!TyyH	! 	,,33H=>/--44X>?	! 	!s   C00C9N)	__name__
__module____qualname__r!   r-   r;   rC   rH   rU    r   r   r   r      s"    R6">*2(6@r   r   )ostempfiler   	importlibr   django.confr   django.contrib.auth.modelsr   django.core.files.storager   django.core.files.uploadedfiler   django.httpr	   r
   mkdtempenvirongettemp_storage_locationrK   r   r   rY   r   r   <module>rf      s_    	   #   + 7 = 1(((RZZ^^<R-ST  *?@W@ W@r   