a "e@'@s&ddlmZddlTddlmZddlmZddlmZddl m Z m Z ddl m Z dd lmZdd lmZmZdd lZdd lZdd lZdd lZejd d dgdZejZzddlmZWnddlmZYn0eejj_eejj_eejj _Gddde!j"Z#Gddde$Z%Gddde$Zd S))unicode_literals)*)StringIO) DefaultView) HelperView) Applications Application)ApplicationsCollection)Package) ProcessMockAffectedProcessMockNtracerTen)fallback languages)patchc@sxeZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ edddddZdS) TestViewscCs t|_dSN)routselfr;/usr/lib/python3.9/site-packages/tracer/tests/test_views.pysetUp#szTestViews.setUpcCsFt|j}|dt|dtg|||jddS)Nargs applications)rrassignArgsMockr render assertEqualgetvaluerviewrrrtest_default_none&s  zTestViews.test_default_nonec Cspt|j}|dt|dttddddtddddtdd d dg|||jd dS) Nrr application first helperfirsttypehelpername second helpersecond third helperthirdzkYou should restart: * Some applications using: first helper second helper third helper rrrrr r r r!r"r#rrrtest_default_with_helpers-s  z#TestViews.test_default_with_helpersc Cspt|j}|dt|dttddddtddddtddddg|||jddS) Nrrr&foor*r,r+barbazzSYou should restart: * These applications manually: bar baz foo r1r#rrrtest_default_without_helpers>s  z&TestViews.test_default_without_helperscCst|j}|dt|dttddddtddddtdd d dtdd dd tdd dd tdddd g|||jddS)Nrrr&r'r(r)r-r.r/r0r3r4r5r6zYou should restart: * Some applications using: first helper second helper third helper * These applications manually: bar baz foo r1r#rrr!test_default_with_without_helpersOs  z+TestViews.test_default_with_without_helpersc Cstt|j}|dtdd|dttddddtdd d dtdd d dg|||jd dS)NrTallrsessionr3h1r4r5h2r6h3zbYou should restart: * These applications restarting your session: bar baz foo r1r#rrrtest_default_all_sessionhs  z"TestViews.test_default_all_sessionc Cstt|j}|dtdd|dttddddtdd d dtdd d dg|||jd dS)NrTr9rstaticr3r<r4r5r=r6r>zbYou should restart: * These applications rebooting your computer: bar baz foo r1r#rrrtest_default_all_staticys  z!TestViews.test_default_all_staticcCst|j}|dtdd|dttddddtdd d dtdd d dtd dddtd dddtd dddg|||jddS)NrTr9rr;r3r<r4r5r=r6r>r@aaah4bbbZh5ZcccZh6zYou should restart: * These applications restarting your session: bar baz foo * These applications rebooting your computer: aaa bbb ccc r1r#rrrtest_default_all_session_statics  z)TestViews.test_default_all_session_staticcCst|j}|dtdd|dttddddtdd d dtdd dd tdd dd tdddd tdddd tdddd tdddd g|||jddS)NrTr9rr&r'r(r)r-r.r3r4r5r;r6r<quxr=r@rBr>rDrCaYou should restart: * Some applications using: first helper second helper * These applications manually: bar foo * These applications restarting your session: baz qux * These applications rebooting your computer: aaa bbb r1r#rrrtest_default_alls    zTestViews.test_default_allcCst|j}|dt|dttddddtddddtdd dd tdd dd td d dd td ddd tdddd g|||jddS)Nrrr&r'r(r)r-r.r3r4r5r;r6r<rFr=r@rBr>a!You should restart: * Some applications using: first helper second helper * These applications manually: bar foo Additionally, there are: - 2 processes requiring restart of your session (i.e. Logging out & Logging in again) - 1 processes requiring reboot r1r#rrrtest_default_not_alls   zTestViews.test_default_not_allc Cspt|j}|dt|dttddddtddddtd d d dg|||jd dS) Nrrr;r3r<r4r5r=r@r6r>zThere are: - 2 processes requiring restart of your session (i.e. Logging out & Logging in again) - 1 processes requiring reboot r1r#rrrtest_default_note_onlys  z TestViews.test_default_note_onlyz0tracer.resources.applications.System.init_systemZdummy)Z return_valuecCstdddddgtdddddgg}td }d|_d |_d |_ddg|_td}t|g|_|g}t |j }| d t dd | d|| dt d| d|| d|| dd|||j ddS)Nr3iZfile1Zfile2i.Zfile3Z foopackagezFoo package descriptionZcategr)verbose processesr&package affected_byZaffectsa;* foo Package: foopackage Description: Foo package description Type: Application State: foo has been started by None some-time ago. PID - 2 foo has been started by None some-time ago. PID - 3 Affected by: foopackage file1 file2 )r r Zmodified descriptioncategoryfilesr setZpackagesrrrrrfindr r!r")rZ init_systemrMrNZa1rOr$rrr test_helpers,        zTestViews.test_helperN)__name__ __module__ __qualname__rr%r2r7r8r?rArErGrHrIrrUrrrrr!s! rc@seZdZdZZdddZdS)rNFcCs||_||_||_||_dSr)r:quietuserrL)rr:rYrZrLrrr__init__szArgsMock.__init__)FFFF)rVrWrXr:rYr[rrrrrsrc@s4eZdZddZddZddZddZd d Zd S) r cCs(d|_||_||_||_||_d|_dS)Nz some-time)parentpidrR_name _create_timeZstr_started_ago)rr]r, create_timerRrrrr["s zProcessMock.__init__cCs|jSr)r^rrrrr,*szProcessMock.namecCs|jSr)r_rrrrr`-szProcessMock.create_timecCsgSrrrrrrchildren0szProcessMock.childrencCsdSrrrrrrusername3szProcessMock.usernameN)rVrWrXr[r,r`rarbrrrrr !s r )&Z __future__rZ__meta__Ztracer.resources.pycomprZtracer.views.defaultrZtracer.views.helperrZtracer.resources.applicationsrr Ztracer.resources.collectionsr Ztracer.resources.packager Z test_tracerr r rZtracer.views.note_for_hiddengettext translationtZugettext_Z unittest.mockrZmockZviewsdefaultr+Znote_for_hiddenZunittestZTestCaserobjectrrrrrs2         w