def test_get_request_is_successful(self): app = fixtures.get_application( slug='alpha', status=Application.PUBLISHED, owner=self.user) request = self.factory.get('/app/alpha/hubs/') request.user = self.user response = views.app_hub_membership(request, 'alpha') eq_(response.status_code, 200) eq_(response.template_name, 'apps/object_hub_membership.html') eq_(sorted(response.context_data.keys()), ['form', 'object']) eq_(response.context_data['object'], app)
def test_post_payload_is_successful(self): app = fixtures.get_application( slug='alpha', status=Application.PUBLISHED, owner=self.user) data = { 'hubs': [self.hub.id], } request = self.factory.post('/app/alpha/hubs/', data) request.user = self.user request._messages = utils.TestMessagesBackend(request) response = views.app_hub_membership(request, 'alpha') eq_(response.status_code, 302) eq_(response['Location'], app.get_absolute_url()) ok_(HubAppMembership.objects.get(application=app, hub=self.hub))
def test_non_existing_app_raises_404(self, mock_get): mock_get.side_effect = Http404 request = self._get_request() views.app_hub_membership(request, 'my-app') mock_get.assert_called_once_with( Application.active, slug__exact='my-app')
def test_application_post_request_require_login(self): request = self.factory.post('/app/my-app/hubs/', {}) request.user = utils.get_anon_mock() response = views.app_hub_membership(request) eq_(response['Location'], utils.get_login_url('/app/my-app/hubs/'))