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


Python TestRequest.stdin方法代码示例

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


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

示例1: test_invalid_input

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import stdin [as 别名]
 def test_invalid_input(self):
     import json
     import StringIO
     from zope.publisher.browser import TestRequest
     request = TestRequest()
     request.stdin = StringIO.StringIO('invalid json')
     view = self.JsonView(None, request)
     response = view()
     self.assertEqual(
             json.loads(response),
             {'type': 'error',
              'message': 'Invalid JSON input'})
开发者ID:,项目名称:,代码行数:14,代码来源:

示例2: test_bad_method

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import stdin [as 别名]
 def test_bad_method(self):
     import json
     import StringIO
     import mock
     from zope.publisher.browser import TestRequest
     request = TestRequest()
     request.stdin = StringIO.StringIO()
     context = mock.Mock()
     context.getPhysicalPath.return_value = ['', 'Plone', 'client', 'api']
     view = self.JsonView(context, request)
     response = view()
     self.assertEqual(request.response.getStatus(), 405)
     self.assertEqual(
             json.loads(response),
             {'type': 'error',
              'message': 'HTTP method not allowed'})
开发者ID:,项目名称:,代码行数:18,代码来源:

示例3: test_input_error

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import stdin [as 别名]
 def test_input_error(self):
     request = TestRequest()
     request.stdin = StringIO(json.dumps({'template': {
         'data': [
             {
                 'name': 'SearchableText',
                 'value': None,
             }
         ]
     }}))
     f = search.JsonSearchPage(self.portal, request)
     results = json.loads(f())
     self.assertEqual(results,  {'collection': {
         'version': '1.0',
         'error': 'input error',
         'template': [
             {
                 u'name': u'SearchableText',
                 u'prompt': u'SearchableText',
                 u'value': u'',
             },
             {
                 u'name': u'Title',
                 u'prompt': u'Title',
                 u'value': u'',
             },
             {
                 u'name': u'Description',
                 u'prompt': u'Description',
                 u'value': u'',
             },
             {
                 u'name': u'Subject',
                 u'prompt': u'Subject',
                 u'value': u'',
                 u'options': [],
             },
             {
                 u'name': u'portal_type',
                 u'prompt': u'portal_type',
                 u'value': u'',
                 u'options': [],
             },
         ],
     }})
开发者ID:PMR2,项目名称:pmr2.json,代码行数:47,代码来源:test_search.py

示例4: test_query

# 需要导入模块: from zope.publisher.browser import TestRequest [as 别名]
# 或者: from zope.publisher.browser.TestRequest import stdin [as 别名]
    def test_query(self):
        portal = self.portal

        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)
        portal.invokeFactory('News Item', 'testnews', title=u'Test News',
            subject=['Portal News'])
        portal.invokeFactory('Document', 'testpage', title=u'Test Page',
            text='This is a simple page')
        workflowTool = getToolByName(portal, 'portal_workflow')
        workflowTool.setDefaultChain("simple_publication_workflow")
        workflowTool.doActionFor(portal.testpage, 'publish')

        setRoles(portal, TEST_USER_ID, ['Member'])

        answer = {'collection': {
            'version': '1.0',
            'template': [
                {
                    u'name': u'SearchableText',
                    u'prompt': u'SearchableText',
                    u'value': u'',
                },
                {
                    u'name': u'Title',
                    u'prompt': u'Title',
                    u'value': u'',
                },
                {
                    u'name': u'Description',
                    u'prompt': u'Description',
                    u'value': u'',
                },
                {
                    u'name': u'Subject',
                    u'prompt': u'Subject',
                    u'value': u'',
                    u'options': [{u'value': u'Portal News'}],
                },
                {
                    u'name': u'portal_type',
                    u'prompt': u'portal_type',
                    u'value': u'',
                    u'options': [
                        {u'value': u'Document'},
                        {u'value': u'News Item'}
                    ],
                },
            ],
        }}

        f = search.JsonSearchPage(self.portal, self.request)
        results = json.loads(f())
        self.assertEqual(results, answer)

        import transaction
        transaction.commit()

        answer['collection']['href'] = 'http://nohost/plone/search'

        self.testbrowser.addHeader('Accept',
            'application/vnd.physiome.pmr2.json.1')
        self.testbrowser.open('http://nohost/plone/search')
        self.assertEqual(json.loads(self.testbrowser.contents), answer)

        request = TestRequest()
        request.stdin = StringIO(json.dumps({'template': {
            'data': [
                {
                    'name': 'SearchableText',
                    'value': 'simple',
                }
            ]
        }}))
        f = search.JsonSearchPage(self.portal, request)
        results = json.loads(f())
        links = [{
            'href': u'http://nohost/plone/testpage',
            'prompt': u'Test Page',
            'rel': u'bookmark'
        }]
        self.assertEqual(results['collection']['links'], links)

        self.testbrowser.open('http://nohost/plone/search',
            data=request.stdin.getvalue())
        self.assertEqual(
            json.loads(self.testbrowser.contents)['collection']['links'],
            links)
开发者ID:PMR2,项目名称:pmr2.json,代码行数:90,代码来源:test_search.py


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