Files
pyGoEdge-UserPanel/.venv/Lib/site-packages/django/test/__pycache__/selenium.cpython-312.pyc

47 lines
14 KiB
Plaintext
Raw Normal View History

2025-11-18 03:36:49 +08:00
<EFBFBD>
j<> i<>%<00><00><><00>ddlZddlZddlmZddlmZddlmZddlm Z ddl
m Z m Z m Z ddlmZddlmZdd lmZGd
<EFBFBD>d ee <0B><00>ZGd <0C>d <0A>Ze d<0E>Gd<0F>de e<15><11><00>Zd<12>Zy)<13>N)<01>contextmanager)<01>wraps)<01>Path)<01>settings)<03>LiveServerTestCase<73>override_settings<67>tag)<01> classproperty<74><01> import_string)<01>capfirstc<00>n<00><00>eZdZgZdZdZdZdZ<07>fd<03>Ze d<04><00>Z
e d<05><00>Z e d<06><00>Z d<07>Z d<08>Z<0E>xZS) <09>SeleniumTestCaseBaseNFc <00>l<00><01>t<00>
|<00>||||<03>}|js td<01>|j <00>D<00><00>s|S|j
r<>|j
d}||_|j s |jnd}||_|j|_tj|j}|j
ddD]T}|j|t|<08><00>|<01><01>|f|||j|jd<06><04>} t|| j| <09><00>V|Stj d<07>|<04>S)z<>
Dynamically create new classes and add them to the test module when
multiple browsers specs are provided (e.g. --selenium=firefox,chrome).
c3<00>^K<00>|]%\}}|jd<00>xr t|<02><00><01><00>'y<01>w)<02>testN)<02>
startswith<EFBFBD>callable)<03>.0<EFBFBD>name<6D>values <20>CE:\Project\pygoedge\.venv\Lib\site-packages\django/test/selenium.py<70> <genexpr>z/SeleniumTestCaseBase.__new__.<locals>.<genexpr>!s-<00><00><><00>)
<EFBFBD>KX<EFBFBD>K<EFBFBD>D<EFBFBD>%<25>D<EFBFBD>O<EFBFBD>O<EFBFBD>F<EFBFBD> #<23> 7<><08><15><0F> 7<>=<3D>s<00>+-rz0.0.0.0<EFBFBD>N)<04>browser<65>host<73> external_host<73>
__module__zNo browsers specified.)<11>super<65>__new__r<00>any<6E>items<6D>browsers<72> selenium_hubrr<00>sys<79>modulesrr <00>setattr<74>__name__<5F>unittest<73>skip) <0B>clsr<00>bases<65>attrs<72>
test_class<EFBFBD> first_browserr<00>moduler<00>browser_test_class<73> __class__s <20>rr zSeleniumTestCaseBase.__new__s2<00><><00>
<1B>W<EFBFBD>_<EFBFBD>S<EFBFBD>$<24><05>u<EFBFBD>=<3D>
<EFBFBD> <15> <1D> <1D>S<EFBFBD>)
<EFBFBD>KP<EFBFBD>;<3B>;<3B>=<3D>)
<EFBFBD>&
<EFBFBD><1E> <1D> <17> <20> <20>
'<27>/<2F>/<2F><01>2<>M<EFBFBD>!.<2E>J<EFBFBD> <1E>*4<>*A<>*A<>:<3A>?<3F>?<3F>y<EFBFBD>D<EFBFBD>"<22>J<EFBFBD>O<EFBFBD>'*<2A>'8<>'8<>J<EFBFBD> $<24><19>[<5B>[<5B><1A>!6<>!6<>7<>F<EFBFBD>%<25>.<2E>.<2E>q<EFBFBD>r<EFBFBD>2<><07>%(<28>[<5B>[<5B><17>&<26>w<EFBFBD>/<2F><14>6<><1F>M<EFBFBD>#*<2A> $<24>),<2C>):<3A>):<3A>&0<>&;<3B>&;<3B> <16>
&<12>"<22><18><06> 2<> ;<3B> ;<3B>=O<>P<>3<><1E> <1D>6<>x<EFBFBD>}<7D>}<7D>5<>6<>z<EFBFBD>B<>B<>c<00><00>td|z<00>S)Nz)selenium.webdriver.%s.webdriver.WebDriverr <00>r+rs r<00>import_webdriverz%SeleniumTestCaseBase.import_webdriverDs<00><00><1C>H<>7<EFBFBD>R<>S<>Sr3c<00><00>td|z<00>S)Nz%selenium.webdriver.%s.options.Optionsr r5s r<00>import_optionsz#SeleniumTestCaseBase.import_optionsHs<00><00><1C>D<>w<EFBFBD>N<>O<>Or3c<00>B<00>ddlm}t||j<00><00>S)Nr)<01>DesiredCapabilities)<04>.selenium.webdriver.common.desired_capabilitiesr:<00>getattr<74>upper)r+rr:s r<00>get_capabilityz#SeleniumTestCaseBase.get_capabilityLs<00><00>V<><16>*<2A>G<EFBFBD>M<EFBFBD>M<EFBFBD>O<EFBFBD><<3C><r3c<00><><00>|j|j<00><00>}|jrF|jxxdk(rnxdk(rnn|jd<03>|Sdk(r|jd<05>|S|S)N<>chrome<6D>edgez--headless=new<65>firefoxz -headless)r8r<00>headless<73> add_argument)<02>self<6C>optionss r<00>create_optionsz#SeleniumTestCaseBase.create_optionsRse<00><00>3<>$<24>%<25>%<25>d<EFBFBD>l<EFBFBD>l<EFBFBD>3<>5<><07> <0F>=<3D>=<3D><16>,<2C>,<2C>&<26>X<EFBFBD><06>&<26><1B>(<28>(<28>)9<>:<3A><17><0E><1F><1B>(<28>(<28><1B>5<><16><0E>w<EFBFBD>r3c<00>J<00>|j<00>}|jrfddlm}|j |j
<00>j <00>D]\}}|j||<04><00>|j|j|<01><03>S|j|j
<00>|<01><04>S)Nr)<01> webdriver)<02>command_executorrF)rF)
rGr$<00>seleniumrIr>rr"<00>set_capability<74>Remoter6)rErFrI<00>keyrs r<00>create_webdriverz%SeleniumTestCaseBase.create_webdriver\s<><00><00><16>%<25>%<25>'<27><07> <0F> <1C> <1C> *<2A>"<22>1<>1<>$<24>,<2C>,<2C>?<3F>E<>E<>G<>
<EFBFBD><03>U<EFBFBD><17>&<26>&<26>s<EFBFBD>E<EFBFBD>2<>H<01><1D>#<23>#<23>T<EFBFBD>5F<35>5F<35>PW<50>#<23>X<> X<>2<>t<EFBFBD>$<24>$<24>T<EFBFBD>\<5C>\<5C>2<>7<EFBFBD>C<>Cr3)r(r<00> __qualname__r#r$rrrCr <00> classmethodr6r8r>rGrO<00> __classcell__<5F>r2s@rrrsn<00><><00><11>H<EFBFBD><17>L<EFBFBD><18>M<EFBFBD><12>G<EFBFBD><14>H<EFBFBD>(C<01>T<11>T<01><11>T<01><11>P<01><11>P<01><11>=<3D><11>=<3D>
<17> Dr3rc<00><00>eZdZd<01>Zd<02>Zd<03>Zy)<05>ChangeWindowSizec<00>$<00>||_||f|_y<00>N)rK<00>new_size)rE<00>width<74>heightrKs r<00>__init__zChangeWindowSize.__init__is<00><00> <20><04> <0A><1E><06><0F><04> r3c<00><><00>|jj<00>|_|jj|j<00>|SrW)rK<00>get_window_size<7A>old_size<7A>set_window_sizerX<00>rEs r<00> __enter__zChangeWindowSize.__enter__ms3<00><00><1C> <0A> <0A>5<>5<>7<><04> <0A>%<25><04> <0A> <0A>%<25>%<25>t<EFBFBD>}<7D>}<7D>5<><13> r3c<00>p<00>|jj|jd|jd<00>y)NrYrZ)rKr_r^)rE<00>exc_type<70> exc_value<75> tracebacks r<00>__exit__zChangeWindowSize.__exit__rs(<00><00> <0C> <0A> <0A>%<25>%<25>d<EFBFBD>m<EFBFBD>m<EFBFBD>G<EFBFBD>&<<3C>d<EFBFBD>m<EFBFBD>m<EFBFBD>H<EFBFBD>>U<>Vr3N)r(rrPr[rarf<00>r3rrUrUhs<00><00>(<28><14>
Wr3rUrKc<00><><00><00>eZdZdZdZdZe<06>fd<04><08>Zed<05><00>Z ed<06><00>Z
e<06>fd<07><08>Z e d<08><00>Z e d <09><00>Ze d
<EFBFBD><00>Ze d <0B><00>Ze d <0C><00>Zddd <0A>d<0E>Ze d<0F><00>Zd<10>Zed<11><00>Ze d<12><00>Z<16>xZS)<13>SeleniumTestCase<73>
NFc <00><><00><01>t<00>|<00>di|<01><01>|jsyt|jj <00><00>D]<5D>\}}t |d<01>s<01>t||<02>t|d<01>D]^}t|<03>||d<02>d<03><02>}|<02>d|<04><00>|_
|j<00>d|<04><00>|_ ||_ ||_ t||j|<05><00>`<00><>y)N<>_screenshot_cases)<02>_func<6E>_casec<00>h<00>t||<02><00>5||g|<03><01>i|<04><01>cddd<00>S#1swYyxYwrW)r<)rErmrn<00>args<67>kwargss rrz0SeleniumTestCase.__init_subclass__.<locals>.test<73>s/<00><00>-<2D><17><14>u<EFBFBD>-<2D>/<2F>$<24>T<EFBFBD>;<3B>D<EFBFBD>;<3B>F<EFBFBD>;<3B>0<>/<2F>/<2F>s<00> (<03>1<07>_rg)r<00>__init_subclass__<5F> screenshots<74>list<73>__dict__r"<00>hasattr<74>delattrr<rr(rP<00>_screenshot_name<6D>_screenshot_caser')r+rqr<00>func<6E>screenshot_caserr2s <20>rrsz"SeleniumTestCase.__init_subclass__|s<><00><><00> <0A><07>!<21>+<2B>F<EFBFBD>+<2B><12><EFBFBD><EFBFBD> <12><1E>s<EFBFBD>|<7C>|<7C>1<>1<>3<>4<>J<EFBFBD>D<EFBFBD>$<24><1A>4<EFBFBD>!4<>5<><18> <13>C<EFBFBD><14> <1E>#*<2A>4<EFBFBD>1D<31>#E<><0F><16>t<EFBFBD><1B>,0<><0F><<3C><1D><<3C>$(<28>&<26><01>/<2F>):<3A> ;<3B><04> <0A>'+<2B>'8<>'8<>&9<><11>?<3F>:K<>$L<><04>!<21>(,<2C><04>%<25>(7<><04>%<25><17><03>T<EFBFBD>]<5D>]<5D>D<EFBFBD>1<>$F<01> 5r3c<00>j<00>d|jxs |j<00>d|jj<00><01>S)Nzhttp://<2F>:)rr<00> server_thread<61>port<72>r+s r<00>live_server_urlz SeleniumTestCase.live_server_url<72>s+<00><00>!$<24>!2<>!2<>!><3E>c<EFBFBD>h<EFBFBD>h<EFBFBD>!><3E><03>@Q<>@Q<>@V<>@V<>W<>Wr3c<00>6<00>|jxs |jSrW)rrr<>s r<00> allowed_hostzSeleniumTestCase.allowed_host<73>s<00><00><12> <20> <20>,<2C>C<EFBFBD>H<EFBFBD>H<EFBFBD>,r3c<00><><00><01>|j<00>|_|jj|j<00>t<00>|<00><00>|j |j<00>yrW)rOrK<00>implicitly_wait<69> implicit_waitr<00>
setUpClass<EFBFBD>addClassCleanup<75>_quit_selenium)r+r2s <20>rr<>zSeleniumTestCase.setUpClass<73>sJ<00><><00><1A>+<2B>+<2B>-<2D><03> <0C> <0B> <0C> <0C>$<24>$<24>S<EFBFBD>%6<>%6<>7<> <0A><07><1A><1C> <0B><1B><1B>C<EFBFBD>.<2E>.<2E>/r3c#<00>lK<00>tdd|j<00>5d<00><02>ddd<00>y#1swYyxYw<01>w)Nii<><00>rUrKr`s r<00> desktop_sizezSeleniumTestCase.desktop_size<7A><00>$<00><00><><00> <1D>d<EFBFBD>C<EFBFBD><14><1D><1D> 7<> <11>8<> 7<> 7<><37><00>4<01>(<03> 4<01>1<07>4c#<00>lK<00>tdd|j<00>5d<00><02>ddd<00>y#1swYyxYw<01>w)Niir<>r`s r<00>small_screen_sizez"SeleniumTestCase.small_screen_size<7A>r<>r<>c#<00>lK<00>tdd|j<00>5d<00><02>ddd<00>y#1swYyxYw<01>w)Nihi r<>r`s r<00> mobile_sizezSeleniumTestCase.mobile_size<7A>s$<00><00><><00> <1D>c<EFBFBD>3<EFBFBD><04> <0A> <0A> 6<> <11>7<> 6<> 6<>r<EFBFBD>c#<00><>K<00>|j<00>5ttjd<00><02>5d<00><03>ddd<00>ddd<00>y#1swY<00>xYw#1swYyxYw<01>w)N<><4E><EFBFBD><EFBFBD><EFBFBD>)<01> LANGUAGE_CODE)r<>rr<00>LANGUAGES_BIDIr`s r<00>rtlzSeleniumTestCase.rtl<74>sE<00><00><><00> <11> <1E> <1E> <20>"<22><18>1H<31>1H<31><12>1L<31>M<><15>N<01>!<21> <20>M<>M<><4D>!<21> <20>s1<00>A<01>A<03>A<05>A<03> A<01>A <09> A<03>A<07>Ac#<00>XK<00>|jj|j<00>|jjd<01>|j <00>5 d<00><03>|jjd<02> ddd<00>y#|jjd<02>wxYw#1swYyxYw<01>w)Nz&localStorage.setItem('theme', 'dark');z!localStorage.removeItem('theme');)rK<00>getr<74><00>execute_scriptr<74>r`s r<00>darkzSeleniumTestCase.dark<72>s<><00><00><><00> <0A> <0A> <0A><19><19>$<24>.<2E>.<2E>/<2F> <0C> <0A> <0A>$<24>$<24>%M<>N<> <11> <1E> <1E> <20> R<01><15><14> <0A> <0A>,<2C>,<2C>-P<>Q<> !<21> <20><><15> <0A> <0A>,<2C>,<2C>-P<>Q<><51> !<21> <20>s6<00>AB*<01>B<03>A><02>B<03>5 B*<01>>B<05>B<03>B'<07>#B*)<02>media<69>featuresc<00><><00>|jdvr|jd<02>i}|<01>||d<|<02>||d<|jjdd|d<07><02><08>y) N>rAr@z<>Emulation.setEmulatedMedia is only supported on Chromium and Chrome-based browsers. See https://chromedevtools.github.io/devtools-protocol/1-3/Emulation/#method-setEmulatedMedia for more details.r<>r<><00>executeCdpCommandzEmulation.setEmulatedMedia)<02>cmd<6D>params)<02>driver_commandr<64>)r<00>skipTestrK<00>execute)rEr<>r<>r<>s r<00>set_emulated_mediaz#SeleniumTestCase.set_emulated_media<69>sk<00><00> <0F><<3C><<3C>1<> 1<> <10>M<EFBFBD>M<EFBFBD>T<01> <0E>
<14><06> <10> <1C>#<23>F<EFBFBD>7<EFBFBD>O<EFBFBD> <13> <1F>!)<29>F<EFBFBD>:<3A> <1E> <0A> <0A> <0A><1D><1D>.<2E>7<>6<EFBFBD>J<> <1E>
r3c#<00><>K<00>|jddd<03>g<01><04>|j<00>5 d<00><03>|jddd<03>g<01><04> ddd<00>y#|jddd<03>g<01><04>wxYw#1swYyxYw<01>w)Nz forced-colors<72>active)rr)r<><00>none)r<>r<>r`s r<00> high_contrastzSeleniumTestCase.high_contrast<73>s<><00><00><><00> <0C><1F><1F>?<3F>X<EFBFBD>*V<>)W<><1F>X<> <11> <1E> <1E> <20> <12><15><14>'<27>'<27>'6<><16>H<>I<>(<28><12> !<21> <20><><15>'<27>'<27>'6<><16>H<>I<>(<28><12><> !<21> <20>s2<00>'A6<01>A*<03>A<02>A*<03> A6<01>A'<05>'A*<03>*A3<07>/A6c<00>,<00>|jsyt||j<00>}|j<00>d|<01>d|j<00>d<02>}t j <00>dz |z }|jjdd<04><05>|jj|<04>y)Nz--z.pngrtT)<02>exist_ok<6F>parents) rtr<<00>_testMethodNameryrzr<00>cwd<77>parent<6E>mkdirrK<00>save_screenshot)rErr<00>filename<6D>paths r<00>take_screenshotz SeleniumTestCase.take_screenshot<6F>s<><00><00><13><1F><1F> <12><16>t<EFBFBD>T<EFBFBD>1<>1<>2<><04><1A>+<2B>+<2B>,<2C>B<EFBFBD>t<EFBFBD>f<EFBFBD>B<EFBFBD>t<EFBFBD>7L<37>7L<37>6M<36>T<EFBFBD>R<><08><13>x<EFBFBD>x<EFBFBD>z<EFBFBD>M<EFBFBD>)<29>H<EFBFBD>4<><04> <0C> <0B> <0B><19><19>4<EFBFBD><14><19>6<> <0C> <0A> <0A>%<25>%<25>d<EFBFBD>+r3c<00>R<00>t|d<01>r|jj<00>yy)NrK)rwrK<00>quitr<74>s rr<>zSeleniumTestCase._quit_selenium<75>s#<00><00>
<13>3<EFBFBD>
<EFBFBD> #<23> <0F>L<EFBFBD>L<EFBFBD> <1D> <1D> <1F> $r3c#<00><>K<00>|jjd<01> d<02><02>|jj|j<00>y#|jj|j<00>wxYw<01>w)z"Disable the default implicit wait.rN)rKr<>r<>r`s r<00>disable_implicit_waitz&SeleniumTestCase.disable_implicit_wait<69>sR<00><00><><00> <0A> <0A> <0A>%<25>%<25>a<EFBFBD>(<28> ><3E> <11> <10>M<EFBFBD>M<EFBFBD> )<29> )<29>$<24>*<<3C>*<<3C> =<3D><>D<EFBFBD>M<EFBFBD>M<EFBFBD> )<29> )<29>$<24>*<<3C>*<<3C> =<3D>s<00>A3<01>A <00>&A3<01> 'A0<03>0A3)r(rrPr<>rrtrQrsr
r<>r<>r<>rr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rRrSs@rririvs<00><><00><16>M<EFBFBD><18>M<EFBFBD><17>K<EFBFBD><10>2<><11>2<>0<13>X<01><13>X<01><13>-<2D><13>-<2D><11>0<><11>0<> <14><12><14><12><14><12><14><12><14><12><14><12><14><16><14><16>
<14>R<01><14>R<01>+/<2F><14>
<EFBFBD>(<14><12><14><12>,<2C><11> <20><11> <20><14>><3E><14>>r3ri)<01> metaclassc<00>T<00><00>t<00>t<00>r<11>jd<01><00><00>fd<02>}|S)N<>,c <00>v<00><01><00>|_t|ddhjt|dt <00><00><00><00>|S)N<>tags<67>
screenshot)rlr'<00>unionr<<00>set)r{<00> method_namess <20>r<00>wrapperz!screenshot_cases.<locals>.wrappers4<00><><00>!-<2D><04><1E><0F><04>f<EFBFBD>|<7C>n<EFBFBD>2<>2<>7<EFBFBD>4<EFBFBD><16><13><15>3O<33>P<>Q<><13> r3)<03>
isinstance<EFBFBD>str<74>split)r<>r<>s` r<00>screenshot_casesr<73><00>s)<00><><00><11>,<2C><03>$<24>#<23>)<29>)<29>#<23>.<2E> <0C><14>
<13>Nr3)r%r)<00>
contextlibr<00> functoolsr<00>pathlibr<00> django.confr<00> django.testrrr <00>django.utils.functionalr
<00>django.utils.module_loadingr <00>django.utils.textr <00>typerrUrir<>rgr3r<00><module>r<>su<00><01>
<EFBFBD><0F>%<25><1B><18> <20>B<>B<>1<>5<>&<26>WD<01>4<EFBFBD> 2<>3<>WD<01>t W<01> W<01><05>Z<EFBFBD><1F>D><3E>)<29>5I<35>D><3E><11>D><3E>N r3