mς .αΈEc@sdkZdkZdkZdkZdkZdklZdkZdkl Z l Z l Z dk Z dkZdklZlZeiƒZeiiedƒZdZedZd„Zd„Zdad eifd „ƒYZd „Zd „Z e!d jo e ƒndS(N(s getLogger(s ApplicationsAppInitializers get_products(sgetConfigurationssetConfigurationtProductss instancehome <> mount-point / name mappingstorage s # Temporary storage database (for sessions) name temporary storage for sessioning mount-point /temp_folder container-class Products.TemporaryFolder.TemporaryContainer cCsFtiitiitiiƒƒ}tii|dƒ}t i |ƒS(Nszopeschema.xml( tostpathtdirnametrealpathtZope2tStartupt__file__tstartuptjoint schemafiletZConfigt loadSchema(RR ((t;/data/zmath/zope/lib/python/OFS/tests/testAppInitializer.pyt getSchema2s$cCs;dkl}tƒiidƒ}||dtfdƒƒS(N(sZApplicationWrappert/t Applicationtfoo(tApp.ZApplicationtZApplicationWrappertgetConfigurationtdbtabt getDatabasetDBR(RR((R tgetApp7s tTestInitializationcBs§tZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„ZRS(s) Test the application initializer object cCsDtdjo tƒantƒ|_titƒtit ƒdS(N( toriginal_configtNoneRRtselftschemaRtmakedirstTEMPNAMEt TEMPPRODUCTS(R((R tsetUpAs     cCs„dk}|`|iitƒtit ƒtit ƒdk }g}|i D]$}tii|ƒo ||qPqP~|_ dS(N(t App.configtAppRRtconfigtsetConfigurationRRtrmdirR RRt_[1]t__path__tdRtexists(RR)R'RR#((R ttearDownIs    cCs]|i}ti|idtƒƒ}ti ||ƒ\}}|i |i tƒt|ƒdS(Ns<>(RRt cStringIOtStringIOttexttreplaceRtsioR tloadConfigFiletconfthandlert assertEqualt instancehomeR%(RR.R3R2RR0((R t configureSs  cCstƒ}t|ƒS(N(RtapptAppInitializer(RR7((R tgetOne]s cCs‘|itƒ|iƒ}|iƒ}|iƒ|it |dƒƒ|i |i i dƒ|it |i dƒƒ|i |i i i dƒdS(Nt Control_Panels Control PanelRsProduct Management(RR6tgood_cfgR9tiRR7tinstall_cp_and_productst failUnlessthasattrR4R:t meta_typeR(RR<R7((R ttest_install_cp_and_productsas    cCsx|itƒ|iƒ}|iƒ|iƒ}|i|i i dƒ|i|i i i dƒ|i |i dƒƒdS(NsTemporary FoldersTransient Object Containert temp_folder(RR6R;R9R<tinstall_tempfolder_and_sdcRR7R4RBR@t session_dataR>t_getInitializerFlag(RR<R7((R ttest_install_tempfolder_and_sdcls    cCsŽ|itƒ|iƒ}|iƒ}|i|ƒ|iƒ}|itƒz%t dƒ}d|_ |iƒ}Wdd|_ X|i |ƒdS(NsZope.ZODBMountPointii( RR6R;R9R<RCtstatusR>tbad_cfgt getLoggertloggertdisabledtfailIf(RRGR<RJ((R t&test_install_tempfolder_and_sdc_statusvs         cCshtd}|i|ƒ|iƒ}|iƒ}|i|ƒ|i ƒi i }|i |iƒdƒdS(Ns5 maximum-number-of-session-objects 0 i(R;t unlimited_cfgRR6R9R<RCRGR>RRBRDtsdcR4tgetSubobjectLimit(RRGR<RNRO((R t2test_install_tempfolder_and_sdc_unlimited_sessions†s     cCs_|itƒ|iƒ}|iƒ}|iƒ|i|i i dƒ|i |i dƒƒdS(NsBrowser Id Managertbrowser_id_manager( RR6R;R9R<RR7tinstall_browser_id_managerR4RRR@R>RE(RR<R7((R ttest_install_browser_id_manager’s     cCs_|itƒ|iƒ}|iƒ}|iƒ|i|i i dƒ|i |i dƒƒdS(NsVirtual Host Monstertvirtual_hosting( RR6R;R9R<RR7tinstall_virtual_hostingR4RUR@R>RE(RR<R7((R ttest_install_virtual_hostingšs     cCs_|itƒ|iƒ}|iƒ|iƒ}|i|i i dƒ|i |i dƒƒdS(NsSession Data Managertsession_data_manager( RR6R;R9R<tinstall_session_data_managerRR7R4RXR@R>RE(RR<R7((R t!test_install_session_data_manager’s    cCs_|itƒ|iƒ}|iƒ|iƒ}|id|i jƒ|id|i jƒdS(NtOwnert Authenticated( RR6R;R9R<tinstall_required_rolesRR7R>t __ac_roles__(RR<R7((R ttest_install_required_roles«s     cCsydkl}|itƒ|iƒ}|iƒ|iƒi i ƒ}|i |i dƒƒ|i t |d|ƒƒdS(N(sOOBTreetZGlobals(tBTrees.OOBTreetOOBTreeRR6R;R9R<tinstall_zglobalsRt_p_jartrootR>thas_keyt isinstance(RRbR<Re((R ttest_install_zglobals³s    cCs³tiitdƒ}t|dƒ}|idƒ|iƒzL|i t ƒ|i ƒ}|iƒ|iƒ}|i|iidƒƒWdtii|ƒoti|ƒnXdS(Ntinitusertwstheuser:passwordttheuser(RRR RtfnametopentftwritetcloseRR6R;R9R<tinstall_inituserRR7R>t acl_userstgetUserR*tunlink(RRnR<RlR7((R ttest_install_inituserΌs      cCs_|itƒ|iƒ}|iƒ|iƒ}|i|i i dƒ|i |i dƒƒdS(NsSite Error Logt error_log( RR6R;R9R<tinstall_errorlogRR7R4RvR@R>RE(RR<R7((R ttest_install_errorlogΛs     cCsC|itƒ|iƒ}|iƒ|itii i dƒƒdS(NtOFSP( RR6R;R9R<tinstall_productsR>Rtmisc_t__dict__Rf(RR<((R ttest_install_productsΣs   cCsΗ|itƒ|iƒ}|iƒ|iƒ|iƒ}|i |i i dƒ|i |i i dƒ|i |i i dƒ|i |ii dƒ|i t|dƒi dƒ|it|dƒƒdS(Ns DTML Methodsstandard_template.pts Page Templatet!_standard_objects_have_been_added(RR6R;R9R<Rztinstall_standardsRR7R4t index_htmlR@tstandard_error_messagetstandard_html_headertstandard_html_footertgetattrR>R?(RR<R7((R ttest_install_standardsΩs     (t__name__t __module__t__doc__R!R+R6R9RARFRMRQRTRWRZR_RhRuRxR}R…(((R R>s$          cCs&tiƒ}|ititƒƒ|S(N(tunittestt TestSuitetsuitetaddTestt makeSuiteR(R‹((R t test_suiteθs cCstiddƒdS(Nt defaultTestRŽ(R‰tmain(((R Rνst__main__("RtsysR‰ttempfileR,tloggingRItZODBtOFS.ApplicationRR8t get_productst Zope2.StartupRR R"RR%tmktempRRR R RHR;RRRRtTestCaseRRŽRR†(R,R R‰RRR;R8R%R—R“RŽRHRRRR R’R•RRIRRR((R t?s$-       ͺ