def test_anon_gets_404_on_non_public_project(self): auth = UserAuth.objects.create_user(username='******', password='******') owner = auth.profile project = Project.objects.create(slug='test-slug', title='test title', location='test location', description='test description', owner=owner, public=False) kwargs = { 'owner_name': 'mjumbewu', 'slug': 'test-slug' } url = reverse('app-project', kwargs=kwargs) request = self.factory.get(url) request.user = AnonymousUser() with assert_raises(Http404): project_view(request, **kwargs)
def test_owner_gets_editable_details_on_non_public_project(self): auth = UserAuth.objects.create_user(username='******', password='******') owner = auth.profile project = Project.objects.create(slug='test-slug', title='test title', location='test location', description='test description', owner=owner, public=False) kwargs = { 'owner_name': 'mjumbewu', 'slug': 'test-slug' } url = reverse('app-project', kwargs=kwargs) request = self.factory.get(url) request.user = auth response = project_view(request, **kwargs) assert_equal(response.status_code, 200) assert_equal(response.context_data.get('is_editable'), True)
def test_anon_gets_redirect_to_home_on_non_public_project(self): auth = UserAuth.objects.create_user(username='******', password='******') owner = auth.profile project = Project.objects.create(slug='test-slug', title='test title', location='test location', owner=owner, public=False) kwargs = { 'owner_name': 'mjumbewu', 'slug': 'test-slug' } url = reverse('app-project', kwargs=kwargs) request = self.factory.get(url) request.user = AnonymousUser() response = project_view(request, **kwargs) home_url = reverse('app-index') assert_equal(response.status_code, 302) assert_equal(response.url, home_url)
def test_can_render_project_without_theme(self): auth = UserAuth.objects.create_user(username='******', password='******') owner = auth.profile project = Project.objects.create(slug='test-slug', title='test title', location='test location', description='test description', owner=owner, public=True) kwargs = { 'owner_name': 'mjumbewu', 'slug': 'test-slug' } url = reverse('app-project', kwargs=kwargs) request = self.factory.get(url) request.user = AnonymousUser() response = project_view(request, **kwargs) assert_equal(response.status_code, 200) assert_equal(response.context_data.get('is_editable'), False) response.render() assert_not_in('<link rel="stylesheet" href="http://example.com/style.css">', response.content.decode('utf-8'))