Changeset 2894 in products
- Timestamp:
- Oct 19, 2010 5:48:19 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
quintagroup.seoptimizer/trunk/quintagroup/seoptimizer/tests/testUsageKeywords.py
r2139 r2894 1 1 from base import * 2 import urllib2 3 from zope.component import queryMultiAdapter 4 from zope.interface import alsoProvides 5 from quintagroup.seoptimizer.browser.interfaces import IPloneSEOLayer 2 6 3 7 KWSTMPL = '.*(<meta\s+(?:(?:name="keywords"\s*)|(?:content="%s"\s*)){2}/>)' … … 59 63 60 64 65 class TestCalcKeywords(FunctionalTestCase): 66 67 def afterSetUp(self): 68 self.loginAsPortalOwner() 69 self.seo = self.portal.portal_properties.seo_properties 70 #Preparation for functional testing 71 self.key = "SEO_KEYWORD " 72 self.portal.invokeFactory('Document', id='my_doc') 73 self.my_doc = getattr(self.portal, 'my_doc') 74 self.my_doc.setText(self.key * 2) 75 # Emulate JS request 76 self.app.REQUEST.set("text", self.key) 77 # Mark request with IPloneSEOLayer browser layer interface 78 alsoProvides(self.app.REQUEST, IPloneSEOLayer) 79 # Get checkSEOKeywords view 80 self.chckView = queryMultiAdapter((self.my_doc, self.app.REQUEST), 81 name="checkSEOKeywords") 82 83 def patchURLLib(self): 84 self.orig_urlopen = urllib2.urlopen 85 def patch_urlopen(*args, **kwargs): 86 if args[0] == self.my_doc.absolute_url(): 87 return unicode(self.my_doc() + self.key).encode("utf-8") 88 else: 89 return self.orig_urlopen(*args, **kwargs) 90 urllib2.urlopen = patch_urlopen 91 92 def unpatchURLLib(self): 93 urllib2.urlopen = self.orig_urlopen 94 95 def test_InternalPageRendering(self): 96 self.assertTrue(not self.seo.external_keywords_test) 97 self.assertTrue('2' in self.chckView()) 98 99 def test_ExternalPageRendering(self): 100 self.seo._updateProperty("external_keywords_test", True) 101 self.patchURLLib() 102 self.assertTrue(self.seo.external_keywords_test) 103 self.assertTrue('3' in self.chckView()) 104 self.unpatchURLLib() 105 106 61 107 def test_suite(): 62 108 from unittest import TestSuite, makeSuite 63 109 suite = TestSuite() 64 110 suite.addTest(makeSuite(TestUsageKeywords)) 111 suite.addTest(makeSuite(TestCalcKeywords)) 65 112 return suite 113
Note: See TracChangeset
for help on using the changeset viewer.