当前位置: 首页>>代码示例>>Python>>正文


Python TestRequest.form[Update]方法代码示例

本文整理汇总了Python中zope.publisher.browser.TestRequest.form[Update]方法的典型用法代码示例。如果您正苦于以下问题:Python TestRequest.form[Update]方法的具体用法?Python TestRequest.form[Update]怎么用?Python TestRequest.form[Update]使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在zope.publisher.browser.TestRequest的用法示例。


在下文中一共展示了TestRequest.form[Update]方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_update

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import form[Update] [as 别名]
    def test_update(self):
        c = C()
        request = TestRequest()
        v = EV(c, request)
        request.form[Update] = ''
        request.form['field.foo'] = u'r foo'
        request.form['field.bar'] = u'r bar'
        request.form['field.getbaz'] = u'r baz'
        request.form['field.a'] = u'c a'

        message = v.update()
        self.assertTrue(message.startswith('Updated '), message)
        self.assertEqual(c.foo, u'r foo')
        self.assertEqual(c.bar, u'r bar')
        self.assertEqual(c.a  , u'c a')
        self.assertEqual(c.b  , u'c b') # missing from form - unchanged
        self.assertEqual(c.getbaz(), u'r baz')

        # Verify that calling update multiple times has no effect

        c.__dict__.clear()
        self.assertEqual(v.update(), message)
        self.assertEqual(c.foo, u'c foo')
        self.assertEqual(c.bar, u'c bar')
        self.assertEqual(c.a  , u'c a')
        self.assertEqual(c.b  , u'c b')
        self.assertEqual(c.getbaz(), u'c baz')
开发者ID:zopefoundation,项目名称:zope.app.form,代码行数:29,代码来源:test_editview.py

示例2: test_hooks

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import form[Update] [as 别名]
    def test_hooks(self):

        @implementer(IAdding)
        class Adding(object):
            pass

        adding = Adding()
        self._invoke_add()
        (descriminator, callable, args, kw) = self._context.last_action
        factory = AddViewFactory(*args)
        request = TestRequest()

        request.form.update(dict([
            ("field.%s" % k, v)
            for (k, v) in dict(SampleData.__dict__).items()
            ]))
        request.form[Update] = ''
        view = getMultiAdapter((adding, request), name='addthis')

        # Add hooks to V

        l=[None]

        def add(aself, ob):
            l[0] = ob
            self.assertEqual(
                ob.__dict__,
                {'args': ("bar", "baz"),
                 'kw': {'email': '[email protected]'},
                 '_foo': 'foo',
                 })
            return ob

        V.add = add

        V.nextURL = lambda self: 'next'

        try:
            self.assertEqual(view.update(), '')

            self.assertEqual(view.errors, ())

            self.assertEqual(l[0].extra1, "extra1")
            self.assertEqual(l[0].extra2, "extra2")
            self.assertEqual(l[0].name, "foo")
            self.assertEqual(l[0].address, "aa")

            self.assertEqual(request.response.getHeader("Location"), "next")

            # Verify that calling update again doesn't do anything.
            l[0] = None
            self.assertEqual(view.update(), '')
            self.assertEqual(l[0], None)

        finally:
            # Uninstall hooks
            del V.add
            del V.nextURL
开发者ID:zopefoundation,项目名称:zope.app.form,代码行数:60,代码来源:test_add.py

示例3: test_update_via_adapter

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import form[Update] [as 别名]
 def test_update_via_adapter(self):
     f = Foo()
     request = TestRequest()
     v = BarV(f, request)
     # check adapter
     self.assertEqual(f.foo, u'Foo foo')
     a = IBar(f)
     self.assertEqual(a.bar, u'Foo foo')
     # update
     request.form[Update] = ''
     request.form['field.bar'] = u'r bar'
     message = v.update()
     self.assertTrue(message.startswith('Updated '), message)
     self.assertEqual(a.bar, u'r bar')
     # wrong update
     self.assertFalse(getEvents())
开发者ID:zopefoundation,项目名称:zope.app.form,代码行数:18,代码来源:test_editview.py


注:本文中的zope.publisher.browser.TestRequest.form[Update]方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。