@@ -30,6 +30,56 @@ def afterSetUp(self):
30
30
self .my_doc = self .portal ['my_doc' ]
31
31
self .mydoc_path = "/%s" % self .my_doc .absolute_url (1 )
32
32
33
+ def set_title (self , title = '' , title_override = 0 , comment = '' ,
34
+ comment_override = 0 ):
35
+ """ Set seo title """
36
+ portal = self .portal
37
+ fp = portal ['front-page' ]
38
+ request = portal .REQUEST
39
+ view = portal .restrictedTraverse ('@@plone' )
40
+ manager = getMultiAdapter ((fp , request , view ), IViewletManager ,
41
+ name = u'plone.htmlhead' )
42
+
43
+ directlyProvides (request , IPloneSEOLayer )
44
+ viewlet = getMultiAdapter ((fp , request , view , manager ), IViewlet ,
45
+ name = u'plone.htmlhead.title' )
46
+
47
+ form_data = {'seo_title' : title ,
48
+ 'seo_title_override:int' : title_override ,
49
+ 'seo_html_comment' : comment ,
50
+ 'seo_html_comment_override:int' : comment_override ,
51
+ 'form.button.Save' : "Save" ,
52
+ 'form.submitted:int' : 1 }
53
+
54
+ self .publish (path = fp .absolute_url (1 ) + '/@@seo-context-properties' ,
55
+ basic = self .basic_auth , request_method = 'POST' ,
56
+ stdin = StringIO (urllib .urlencode (form_data )))
57
+ viewlet .update ()
58
+ seo_title_comment = viewlet .render ()
59
+ return seo_title_comment
60
+
61
+ def test_seo_title (self ):
62
+ """ Test changing title """
63
+ title = "New Title"
64
+ new_title = u'<title>%s</title>' % title
65
+ seo_title = self .set_title (title = title , title_override = 1 )
66
+ self .assertEqual (new_title , seo_title )
67
+
68
+ def test_seo_comment (self ):
69
+ """ Test changing comment """
70
+ comment = "New Comment"
71
+ seo_title_comment = self .set_title (comment = comment , comment_override = 1 )
72
+ self .assert_ (seo_title_comment .endswith ("<!--%s-->" % comment ))
73
+
74
+ def test_seo_title_comment (self ):
75
+ """ Test changing title and comment """
76
+ title = "New Title"
77
+ comment = "New Comment"
78
+ new_title = u'<title>%s</title>\n <!--%s-->' % (title , comment )
79
+ seo_title_comment = self .set_title (title = title , title_override = 1 ,
80
+ comment = comment , comment_override = 1 )
81
+ self .assertEqual (new_title , seo_title_comment )
82
+
33
83
def test_modification_date (self ):
34
84
""" Modification date changing on SEO properties edit """
35
85
form_data = {'seo_title' : 'New Title' ,
0 commit comments