Ignore:
Timestamp:
May 31, 2010 4:30:47 PM (14 years ago)
Author:
mylan
Message:

#131: Update default fallback values for news-sitemaps. Added tests for minimal news item object

File:
1 edited

Legend:

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

    r2413 r2415  
    108108        self.reParse() 
    109109        self.assertNotEqual("n:genres" in self.start.keys(), True) 
     110 
     111 
     112class TestNewsSitemapsXMLDefaultObject(FunctionalTestCase): 
     113 
     114    def afterSetUp(self): 
     115        super(TestNewsSitemapsXMLDefaultObject, self).afterSetUp() 
     116        # Create news sitemaps  
     117        _createObjectByType("Sitemap", self.portal, id="news-sitemaps", 
     118                            sitemapType="news", portalTypes=("News Item",)) 
     119        self.portal["news-sitemaps"].at_post_create_script() 
     120        # Add minimal testing news item to portal 
     121        self.pubdate = (DateTime()+1).strftime("%Y-%m-%d") 
     122        my_news = self.portal.invokeFactory("News Item", id="my_news") 
     123        self.my_news = self.portal["my_news"] 
     124        self.my_news.edit(effectiveDate=self.pubdate) 
     125        self.portal.portal_workflow.doActionFor(self.my_news, "publish") 
     126        self.reParse() 
     127 
     128    def reParse(self): 
     129        # Parse news sitemap 
     130        self.sitemap = self.publish("/"+self.portal.absolute_url(1) + "/news-sitemaps", 
     131                                    "%s:%s" % (portal_owner, default_password)).getBody() 
     132        parsed_sitemap = parse(self.sitemap) 
     133        self.start = parsed_sitemap["start"] 
     134        self.data = parsed_sitemap["data"] 
     135 
     136    def test_nnews(self): 
     137        self.assert_("n:news" in self.start.keys()) 
     138         
     139    def test_npublication(self): 
     140        open("/tmp/news.sm.xml", "w").write(self.sitemap) 
     141        self.assert_("n:publication" in self.start.keys()) 
     142        self.assert_("n:name" in self.start.keys()) 
     143        self.assert_("my_news" in self.data, "No 'First news' in data") 
     144        self.assert_("n:language" in self.start.keys()) 
     145        self.assert_("en" in self.data, "No 'en' in data") 
     146 
     147    def test_npublication_date(self): 
     148        self.assert_("n:publication_date" in self.start.keys()) 
     149        self.assert_(self.pubdate in self.data, "No %s in data" % self.pubdate) 
     150         
     151    def test_ntitle(self): 
     152        self.assert_("n:title" in self.start.keys()) 
     153        self.assert_("my_news" in self.data, "No 'First news (test)' in data") 
     154 
     155    def test_no_naccess(self): 
     156        self.assert_("n:access" not in self.start.keys()) 
     157 
     158    def test_no_ngenres(self): 
     159        self.assert_("n:genres" not in self.start.keys()) 
     160 
     161    def test_no_keywords(self): 
     162        self.assert_("n:keywords" not in self.start.keys()) 
    110163 
    111164 
     
    148201    suite = TestSuite() 
    149202    suite.addTest(makeSuite(TestNewsSitemapsXML)) 
     203    suite.addTest(makeSuite(TestNewsSitemapsXMLDefaultObject)) 
    150204    suite.addTest(makeSuite(TestSchemaExtending)) 
    151205    return suite 
Note: See TracChangeset for help on using the changeset viewer.