Changeset 1872 in products
- Timestamp:
- Mar 10, 2010 1:59:57 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
quintagroup.seoptimizer/branches/refactoring2.3.0/quintagroup/seoptimizer/tests/testUsageKeywords.py
r1834 r1872 4 4 from config import * 5 5 6 KWSTMPL = '.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="%s"\s*)){2}/>)' 6 7 7 8 class TestUsageKeywords(FunctionalTestCase): … … 23 24 self.my_doc = self.portal['my_doc'] 24 25 25 def test_listMetaTags_empty(self): 26 27 def test_noDefaultKeywords(self): 28 """No keywords added for the content by default""" 26 29 metatags = self.pu.listMetaTags(self.my_doc) 27 30 self.assert_('keywords' not in metatags) 31 28 32 29 def test_listMetaTags_one(self): 30 self.my_doc.setText('<p>foo</p>') 31 self.my_doc.manage_addProperty('qSEO_keywords', ('foo',), 'lines') 32 self.html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 33 m = re.match('.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="foo"\s*)){2}/>)', self.html, re.S|re.M) 34 self.assert_(m, "No 'foo' keyword find") 33 def testrender_SEOKeywords(self): 34 """ """ 35 self.my_doc.setText('<p>foo bar</p>') 36 self.my_doc.manage_addProperty('qSEO_keywords', [], 'lines') 35 37 36 def test_listMetaTags_two(self): 37 self.my_doc.setText('<p>foo bar</p>') 38 self.my_doc.manage_addProperty('qSEO_keywords', ('foo', 'bar'), 'lines') 39 self.html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 40 m = re.match('.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="(?:foo|bar),\s*(?:foo|bar)"\s*)){2}/>)', 41 self.html, re.S|re.M) 42 self.assert_(m, "No 'foo, bar' keyword find") 38 for seokws in [('foo',), ('foo', 'bar')]: 39 self.my_doc._updateProperty('qSEO_keywords', seokws) 40 html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 41 expect = ',\s*'.join(seokws) 42 self.assert_(re.match(KWSTMPL % expect, html, re.S|re.M), 43 "No '%s' keyword found" % str(seokws)) 43 44 44 def setup_testing_render_keywords(self, keywords=('local',), 45 html='<p>local subject</p>'): 46 self.my_doc.setText(html) 47 if len(keywords): 48 self.my_doc.manage_addProperty('qSEO_keywords', keywords, 'lines') 49 aq_inner(self.my_doc).aq_explicit.setSubject('subject') 45 46 def testbehave_NoSEOKeywordsOnlySubject(self): 47 self.my_doc.setText('<p>local subject</p>') 48 self.my_doc.setSubject('subject') 50 49 html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 51 return html52 50 53 def test_render_only_subject(self): 54 self.html = self.setup_testing_render_keywords(keywords=()) 55 m = re.match('.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="subject"\s*)){2}/>)', self.html, re.S|re.M) 56 self.assert_(m, "No 'subject' keyword find") 51 expect = "subject" 52 self.assert_(re.match(KWSTMPL % expect, html, re.S|re.M), 53 "No '%s' keyword find" % expect) 57 54 58 def test_render_only_local_seokeywords(self): 59 self.html = self.setup_testing_render_keywords() 60 m = re.match('.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="local\s*"\s*)){2}/>)', self.html, re.S|re.M) 61 self.assert_(m, "No 'local' keywords find") 55 def testbehave_SEOKeywordsOverrideSubject(self): 56 SEOKWS = ('local',) 57 self.my_doc.setText('<p>local subject</p>') 58 self.my_doc.setSubject('subject') 59 self.my_doc.manage_addProperty('qSEO_keywords', SEOKWS, 'lines') 60 html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 61 62 expect = ',\s*'.join(SEOKWS) 63 self.assert_(re.match(KWSTMPL % expect, html, re.S|re.M), 64 "No '%s' keywords find" % SEOKWS) 65 66 def testbehave_noSEOKeywordsNoSubject(self): 67 """Nor seo keywords not subject added""" 68 html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth)) 69 self.assertFalse(re.match('.*(<meta\s[^\>]*name="keywords"[^\>]*>)', 70 html, re.S|re.M), "'keyword' meta tag found") 62 71 63 72
Note: See TracChangeset
for help on using the changeset viewer.