def test_invoke_edit_form(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = news.Assignment(count=5) editview = getMultiAdapter((mapping['foo'], request), name='edit') editview.update() editview.applyChanges(data={'count': 6, EXTENDER_PREFIX+'.css_class': 'my-class'}) portlet_assignment = mapping.values()[0] settings = IPortletAssignmentSettings(portlet_assignment) self.assertEqual(portlet_assignment.count, 6) # We have not extended our storage adapter, so nothing gets saved: self.assertIsNone(settings.get('css_class', None)) # Register our schemaextender gsm = getGlobalSiteManager() gsm.registerAdapter(PortletCssClassAdapter, (IPortletAssignment,)) gsm.registerAdapter(PortletCssClassFormExtender, (Interface, IDefaultBrowserLayer, IPortletEditForm), IFormExtender, 'portletcssclass.extender') mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = news.Assignment(count=5) editview = getMultiAdapter((mapping['foo'], request), name='edit') editview.update() editview.applyChanges(data={'count': 6, EXTENDER_PREFIX+'.css_class': 'my-class'}) portlet_assignment = mapping.values()[0] settings = IPortletAssignmentSettings(portlet_assignment) gsm.unregisterAdapter(PortletCssClassFormExtender, (Interface, IDefaultBrowserLayer, IPortletEditForm), IFormExtender, 'portletcssclass.extender') gsm.unregisterAdapter(PortletCssClassAdapter, (IPortletAssignment,)) self.assertEqual(portlet_assignment.count, 6) # The prefix is used for the form field, not for the stored data: self.assertEqual(settings.get('css_class'), 'my-class')
def test_invoke_edit_form(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = news.Assignment(count=5) editview = getMultiAdapter((mapping['foo'], request), name='edit') editview.update() editview.applyChanges(data={ 'count': 6, EXTENDER_PREFIX + '.css_class': 'my-class' }) portlet_assignment = mapping.values()[0] settings = IPortletAssignmentSettings(portlet_assignment) self.assertEqual(portlet_assignment.count, 6) # We have not extended our storage adapter, so nothing gets saved: self.assertIsNone(settings.get('css_class', None)) # Register our schemaextender gsm = getGlobalSiteManager() gsm.registerAdapter(PortletCssClassAdapter, (IPortletAssignment, )) gsm.registerAdapter( PortletCssClassFormExtender, (Interface, IDefaultBrowserLayer, IPortletEditForm), IFormExtender, 'portletcssclass.extender') mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = news.Assignment(count=5) editview = getMultiAdapter((mapping['foo'], request), name='edit') editview.update() editview.applyChanges(data={ 'count': 6, EXTENDER_PREFIX + '.css_class': 'my-class' }) portlet_assignment = mapping.values()[0] settings = IPortletAssignmentSettings(portlet_assignment) gsm.unregisterAdapter( PortletCssClassFormExtender, (Interface, IDefaultBrowserLayer, IPortletEditForm), IFormExtender, 'portletcssclass.extender') gsm.unregisterAdapter(PortletCssClassAdapter, (IPortletAssignment, )) self.assertEqual(portlet_assignment.count, 6) # The prefix is used for the form field, not for the stored data: self.assertEqual(settings.get('css_class'), 'my-class')
def testInvokeEditView(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = portlet_tasks.Assignment() editview = queryMultiAdapter( (mapping['foo'], request), name='edit', default=None) self.failUnless(isinstance(mapping.values()[0], portlet_tasks.Assignment))
def testInvokeEditView(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = portlet_tasks.Assignment() editview = queryMultiAdapter((mapping['foo'], request), name='edit', default=None) self.failUnless( isinstance(list(mapping.values())[0], portlet_tasks.Assignment))
def testInvokeEditView(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = portlet_mod.Assignment() editview = getMultiAdapter((mapping['foo'], request), name='edit') self.failUnless(isinstance(editview, portlet_mod.EditForm)) editview.setUpWidgets(True) editview.handle_edit_action.success( dict(title="Test Title", feeds="Test Feeds", items_shown=16, cache_timeout="32")) assignment = mapping.values()[0] self.failUnless(isinstance(assignment, portlet_mod.Assignment)) self.assertEqual(assignment.title, "Test Title") self.assertEqual(assignment.feeds, "Test Feeds") self.assertEqual(assignment.items_shown, 16) self.assertEqual(assignment.cache_timeout, "32")
def testInvokeEditView(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = portlet_mod.Assignment() editview = getMultiAdapter((mapping['foo'], request), name='edit') self.failUnless(isinstance(editview, portlet_mod.EditForm)) editview.setUpWidgets(True) editview.handle_edit_action.success(dict( title="Test Title", feeds="Test Feeds", items_shown=16, cache_timeout="32")) assignment = mapping.values()[0] self.failUnless(isinstance(assignment, portlet_mod.Assignment)) self.assertEqual(assignment.title, "Test Title") self.assertEqual(assignment.feeds, "Test Feeds") self.assertEqual(assignment.items_shown, 16) self.assertEqual(assignment.cache_timeout, "32")