Changeset 2600 in products


Ignore:
Timestamp:
Jul 1, 2010 2:07:34 PM (14 years ago)
Author:
liebster
Message:

Add test update catalog during installation package

File:
1 edited

Legend:

Unmodified
Added
Removed
  • quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/tests/testInstallation.py

    r2594 r2600  
    22from zope.component import getSiteManager 
    33from archetypes.schemaextender.interfaces import ISchemaExtender 
    4  
     4from Products.CMFPlone.utils import _createObjectByType 
     5from quintagroup.canonicalpath.interfaces import ICanonicalLink 
    56 
    67class TestGoogleSitemapsInstallation(TestCase): 
     
    5455        self.assertNotEqual(lsm.queryAdapter(news, interface=ISchemaExtender), None) 
    5556 
     57    def testUpdateCatalog(self): 
     58        # Test added new columns in catalog 
     59        Language = 'test_language' 
     60        gsm_access = 'test_gsm_access' 
     61        gsm_genres = (u'test_gsm_genres',) 
     62        gsm_stock = 'test_gsm_stock' 
     63        cols = ["canonical_link", "Language", "gsm_access", 
     64                "gsm_genres", "gsm_stock"] 
     65        lsm = getSiteManager(self.portal) 
     66        catalog = self.portal.portal_catalog 
     67        setuptools = self.portal.portal_setup 
     68        for col in cols: 
     69            self.assertEqual(col in catalog._catalog.names, True) 
     70 
     71        # Test update catalog 
     72        # Create news 
     73        news = _createObjectByType('News Item', self.portal, id='test_news') 
     74        news_cpath = "/my_test_news" 
     75        news_clink = self.portal.absolute_url() + news_cpath 
     76 
     77        # The canonical_link, Language, gsm_access, gsm_genres, gsm_stock 
     78        # brain must contains not updated canonical_link data 
     79        brain = catalog(id="test_news")[0] 
     80        self.assertNotEqual(brain.canonical_link, news_clink) 
     81        self.assertNotEqual(brain.Language, Language) 
     82        self.assertNotEqual(brain.gsm_access, gsm_access) 
     83        self.assertNotEqual(brain.gsm_genres, gsm_genres) 
     84        self.assertNotEqual(brain.gsm_stock, gsm_stock) 
     85 
     86        # Update fields 
     87        ICanonicalLink(news).canonical_link = news_clink 
     88        news.update( 
     89            language=Language, gsm_access=gsm_access, 
     90            gsm_genres=gsm_genres, gsm_stock=gsm_stock) 
     91        setuptools.runImportStepFromProfile( 
     92            'profile-quintagroup.plonegooglesitemaps:default', 'catalog') 
     93 
     94        # The canonical_link, Language, gsm_access, gsm_genres, gsm_stock 
     95        # brain must contains updated canonical_link data 
     96        brain = catalog(id="test_news")[0] 
     97        self.assertEqual(brain.canonical_link, news_clink) 
     98        self.assertEqual(brain.Language, Language) 
     99        self.assertEqual(brain.gsm_access, gsm_access) 
     100        self.assertEqual(brain.gsm_genres, gsm_genres) 
     101        self.assertEqual(brain.gsm_stock, gsm_stock) 
     102 
    56103 
    57104class TestGoogleSitemapsUninstallation(TestCase): 
Note: See TracChangeset for help on using the changeset viewer.