def test_render_mobile_override(self): """ Render a document with mobile overrides enabled. """ self.setDiscriminateMode("mobile") self.create_doc() doc = self.portal.doc doc.setTitle("Not reached") # This title should not be visible in mobile mode overrider = IOverrider(doc) storage = IOverrideStorage(doc) storage.enabled_overrides = ["Title"] storage.Title = u"Foobar" self.portal.portal_workflow.doActionFor(doc, "submit") self.portal.portal_workflow.doActionFor(doc, "publish") browser = self.browser browser.open(self.portal.doc.absolute_url()) html = browser.contents self.assertTrue(MOBILE_HTML_MARKER in html, "Got page:" + html) assert "Foobar" in html
def test_helper_view_web(self): """ See that we get proper proxy object through helper view. """ self.setDiscriminateMode(MobileRequestType.WEB) self.create_doc() doc = self.portal.doc doc.setTitle("Not reached") overrider = IOverrider(doc) storage = IOverrideStorage(doc) storage.enabled_overrides = ["Title"] storage.Title = u"Foobar" helper = doc.restrictedTraverse("multichannel_overrider") context = helper() # Return mobile proxy object with overriden values # In web mode, you dont get override self.assertEqual(context.Title(), "Not reached")