[Erp5-report] r34205 ivan - in /erp5/trunk/bt5/erp5_km: TestTemplateItem/ bt/

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Mar 30 15:13:22 CEST 2010


Author: ivan
Date: Tue Mar 30 15:13:21 2010
New Revision: 34205

URL: http://svn.erp5.org?rev=34205&view=rev
Log:
Add web site browser gadget tests, remove non generic test.

Modified:
    erp5/trunk/bt5/erp5_km/TestTemplateItem/testKMGadget.py
    erp5/trunk/bt5/erp5_km/bt/revision

Modified: erp5/trunk/bt5/erp5_km/TestTemplateItem/testKMGadget.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_km/TestTemplateItem/testKMGadget.py?rev=34205&r1=34204&r2=34205&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_km/TestTemplateItem/testKMGadget.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_km/TestTemplateItem/testKMGadget.py [utf8] Tue Mar 30 15:13:21 2010
@@ -61,9 +61,7 @@
             'erp5_trade',
             'erp5_dms',
             'erp5_project',
-            'nexedi_erp5_express_customer',
-            'erp5_km',
-            )
+            'erp5_km')
 
   def getTitle(self):
     return "Gadgets"
@@ -851,111 +849,6 @@
     request.set('editable_mode',  1)
     self.failUnless('View Web Section' in relation_form_renderer())
 
-  def test_14ExpressAdvertisementSystemGadget(self, quiet=quiet, run=run_all_test):
-    """ Check Express Advertisement gadget. 
-         Express advertisement system uses gadgets in customer instances and KM web site. """
-    if not run: return
-    portal = self.getPortal()
-    request = self.app.REQUEST
-
-    portal_gadgets = portal.portal_gadgets
-    express_advertisement_gadget = portal_gadgets.express_advertisement
-
-    response = self.publish('%s/WebSite_viewHomeAreaFormRenderer' %self.web_site_url, self.auth)
-    self.failUnless(self.web_front_knowledge_pad.getTitle() in response.getBody())
-
-    # Web Front gadgets
-    web_front_gadgets = [express_advertisement_gadget]
-    for gadget in web_front_gadgets:
-      self.web_front_knowledge_pad.KnowledgePad_addBoxList(**{'uids':[gadget.getUid()]})
-    self.stepTic()
-
-    self.changeSkin('KM')
-    # check that gadgets are added to web front page view
-    response = self.publish('%s/WebSite_viewHomeAreaFormRenderer' %self.web_site_url, self.auth)
-    for gadget in web_front_gadgets:
-      self.failUnless(gadget.getTitle() in response.getBody())
-
-    # emulate JavaScript by calling directly WebSection_getTextContentAsJSON
-    web_page_module = self.portal.web_page_module
-    web_site_module = self.portal.web_site_module
-    portal_categories = portal.portal_categories 
-    publication_section_category_id_list = ['express_ads',  'KM_ads']
-    for category_id in publication_section_category_id_list:
-      portal_categories.publication_section.newContent(portal_type = 'Category', \
-                                                       id = category_id)
-    referenced_doc =  web_page_module.newContent(
-                                      portal_type='Web Page', \
-                                      language='en', \
-                                      reference='ref-doc-1')
-    referenced_doc.publish() 
-
-    express_web_page_ad = web_page_module.newContent(
-                               portal_type='Web Page', \
-                               language='en', \
-                               reference='km-1', \
-                               text_content='Express Ads CONTENT', \
-                               publication_section_list=[publication_section_category_id_list[0]])
-    # set reference to other real document from which we borrow content
-    express_web_page_ad.setSuccessorValue(referenced_doc)
-    express_web_page_ad.publish()
-
-    installation_image = self.portal.image_module.newContent(portal_type='Image', \
-                                   language='en', \
-                                   reference='express-install-image', \
-                                   publication_section_list=[publication_section_category_id_list[0]])
-    installation_image.publish()
-
-    km_web_page_ad = web_page_module.newContent(
-                               portal_type='Web Page', \
-                               language='en', \
-                               reference='km-1', \
-                               text_content='KM Express Ads CONTENT', \
-                               publication_section_list=[publication_section_category_id_list[1]])
-    km_web_page_ad.publish()
-
-
-    express_frame = web_site_module.newContent(portal_type='Web Site', \
-                                               id = 'express_frame')
-    advertisement_section = express_frame.newContent(portal_type='Web Section', \
-                                                     id = 'advertisement_section')
-    predicate_kw = dict(membership_criterion_base_category = ['publication_section'],
-                        membership_criterion_category=['publication_section/%s' \
-                                       %publication_section_category_id_list[0]])
-    for key in ['gadget', 'installation', 'message', 'product']:
-      section = advertisement_section.newContent(portal_type='Web Section', \
-                                                 id = key, 
-                                                 **predicate_kw)
-    # add documentation (for gadget)
-    section = advertisement_section.gadget.newContent(portal_type='Web Section', \
-                                                      id = 'documentation', 
-                                                      **predicate_kw)
-    # set predicate & web page
-    km_section = advertisement_section.newContent(portal_type='Web Section', \
-                                                  id = 'km')
-    km_section.edit(membership_criterion_base_category = ['publication_section'], 
-                    membership_criterion_category=['publication_section/%s' \
-                      %publication_section_category_id_list[1]])
-    self.stepTic()
-
-    # installation should return images tags
-    json_result = json.loads(
-                    advertisement_section.WebSection_getTextContentAsJSON(type_list='installation'))
-    self.assertEquals(json_result['installation'][0]['content'],
-                      installation_image.tag(display='medium'))
-
-    # check Express ads returned JSON result
-    for ad_type in ['gadget', 'message', 'documentation']:
-      json_result = json.loads(
-                      advertisement_section.WebSection_getTextContentAsJSON(type_list=ad_type))
-      self.assertEquals(json_result[ad_type][0]['content'], express_web_page_ad.getTextContent())
-      self.assertEquals(json_result[ad_type][0]['url'], referenced_doc.getReference())
-
-    # check KM ads returned JSON result
-    json_result = json.loads(advertisement_section.WebSection_getTextContentAsJSON(type_list=['km']))
-    self.assertEquals(json_result['km'][0]['content'], km_web_page_ad.getTextContent())
-    self.assertEquals(json_result['km'][0]['url'], km_web_page_ad.absolute_url())
-
   def test_15GadgetServerSideFailure(self, quiet=quiet, run=run_all_test):
     """ 
       Check that if gadget uses a non existent view / edit form
@@ -996,6 +889,44 @@
     response = self.publish('%s/WebSite_viewHomeAreaFormRenderer' %self.web_site_url, self.auth)
     self.failUnless('Server side error' not in response.getBody())
 
+  def test_16WebSiteBrowserGadget(self, quiet=quiet, run=run_all_test):
+    """ 
+      Check Web Site Browser Gadget.
+     """
+    if not run: return 
+    portal = self.getPortal()
+    web_site_browser_gadget = portal.portal_gadgets.web_site_browser
+
+    # add gadget
+    self.web_front_knowledge_pad.KnowledgePad_addBoxList(**{'uids':[web_site_browser_gadget.getUid()]})
+    self.stepTic()
+
+    self.changeSkin('KM')
+    # "Subsections" gadget
+    gadget_view_form_id  = web_site_browser_gadget.view_form_id
+    box_url = _getGadgetInstanceUrlFromKnowledgePad( \
+                                     self.web_front_knowledge_pad,  \
+                                     web_site_browser_gadget)
+    # .. create subsection and make sure it appears in gadget
+    subsection = self.website.newContent(portal_type='Web Section',  
+                                         title='Sub Section 12345')
+    self.stepTic()
+    url = self.base_url_pattern %(self.web_site_url,  
+                                  gadget_view_form_id, 
+                                  self.website.getRelativeUrl(),  
+                                  box_url)    
+    self.failUnless(subsection.getTitle() not in 
+                    self.publish(url, self.auth).getBody())
+    self.failUnless('Browse' in 
+                    self.publish(url, self.auth).getBody())
+
+    # make section visible
+    subsection.edit(visible=True)
+    self.stepTic()
+    self.changeSkin('KM')
+    self.failUnless(subsection.getTitle() in 
+                    self.publish(url, self.auth).getBody())
+
 def test_suite():
   suite = unittest.TestSuite()
   suite.addTest(unittest.makeSuite(TestGadgets))

Modified: erp5/trunk/bt5/erp5_km/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_km/bt/revision?rev=34205&r1=34204&r2=34205&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_km/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_km/bt/revision [utf8] Tue Mar 30 15:13:21 2010
@@ -1,1 +1,1 @@
-1316
+1317




More information about the Erp5-report mailing list