def test_my_view(self):
from .views import my_view
request = testing.DummyRequest()
info = my_view(request)
self.assertEqual(info['project'], 'nflpool')
python类DummyRequest()的实例源码
def test_action_map(self):
request = testing.DummyRequest()
response = self.viewset(request)
expected = {'method': 'GET', 'action': 'list'}
assert response.status_code == 200
assert response.body == expected
def setUp(self):
self.dbsession = get_dbsession()
self.list_viewset = UserViewSet.as_view({'get': 'list', 'post': 'create'})
self.detail_viewset = UserViewSet.as_view(
{'get': 'retrieve', 'put': 'update', 'patch': 'partial_update', 'delete': 'destroy'})
self.request = testing.DummyRequest()
self.request.dbsession = self.dbsession
def setUp(self):
self.test_view = MyView.as_view(name='MyView')
self.request = testing.DummyRequest()
def test_no_page_number(self):
request = testing.DummyRequest()
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
content = self.get_paginated_content(queryset)
assert queryset == [1, 2, 3, 4, 5]
assert content == {
'results': [1, 2, 3, 4, 5],
'previous': None,
'next': 'http://testserver/?page=2',
'count': 100
}
def test_second_page(self):
request = testing.DummyRequest()
request.params['page'] = 2
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
content = self.get_paginated_content(queryset)
assert queryset == [6, 7, 8, 9, 10]
assert content == {
'results': [6, 7, 8, 9, 10],
'previous': 'http://testserver/',
'next': 'http://testserver/?page=3',
'count': 100
}
def test_invalid_page(self):
request = testing.DummyRequest()
request.params['page'] = 'invalid'
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
self.assertRaises(HTTPNotFound, self.paginate_queryset, request)
def test_no_page_number(self):
request = testing.DummyRequest()
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
content = self.get_paginated_content(queryset)
assert queryset == [1]
assert content == {
'results': [1, ],
'previous': None,
'next': None,
'count': 1
}
def test_invalid_page(self):
request = testing.DummyRequest()
request.params['page'] = 'invalid'
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
with pytest.raises(HTTPNotFound):
self.paginate_queryset(request)
def test_overridden_query_param(self):
request = testing.DummyRequest()
request.params['unit'] = 1
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
content = self.get_paginated_content(queryset)
assert queryset == [1]
assert content == {
'results': [1, ],
'previous': None,
'next': None,
'count': 1
}
def test_no_page_number(self):
request = testing.DummyRequest()
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
response = self.get_paginated_response(queryset)
assert queryset == [1, 2, 3, 4, 5]
assert response.json_body == [1, 2, 3, 4, 5] # todo, if renders are ever implemented this needs updated
assert response.headers['Link'] == '<http://testserver/?page=2>; rel="next", <http://testserver/?page=1>; ' + \
'rel="first", <http://testserver/?page=20>; rel="last"'
def test_last_page(self):
request = testing.DummyRequest()
request.params['page'] = 'last'
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
queryset = self.paginate_queryset(request)
response = self.get_paginated_response(queryset)
assert queryset == [96, 97, 98, 99, 100]
assert response.json_body == [96, 97, 98, 99, 100] # todo, if renders are ever implemented this needs updated
assert response.headers['Link'] == '<http://testserver/?page=19>; rel="prev", <http://testserver/?page=1>; ' +\
'rel="first", <http://testserver/?page=20>; rel="last"'
def test_invalid_page(self):
request = testing.DummyRequest()
request.params['page'] = 'invalid'
request.current_route_url = mock.Mock(side_effect=self.get_current_url)
with pytest.raises(HTTPNotFound):
self.paginate_queryset(request)
def setUp(self):
self.request = testing.DummyRequest()
self.request.dbsession = mock.Mock()
def setUp(self):
self.request = testing.DummyRequest()
self.request.dbsession = self.dbsession
def setUp(self):
super(TestAPIResourceListing, self).setUp()
self.config.include('cornice')
self.config.scan('.views')
self.request = testing.DummyRequest()
self.request.registry.db = Mock()
self.request.registry.server_id = Mock()
self.request.registry.couchdb_server = Mock()
self.request.registry.update_after = True
self.context = Mock()
def test_unauthenticated_userid_bearer(self):
request = testing.DummyRequest()
request.headers['Authorization'] = 'Bearer chrisr'
policy = self._makeOne(None)
self.assertEqual(policy.unauthenticated_userid(request), 'chrisr')
def test_my_view(self):
from .views import my_view
request = testing.DummyRequest()
info = my_view(request)
self.assertEqual(info['project'], 'consuming_services_apis')