Example #1
0
 def test_anon_user_returns_public_objects(self, owned_mock, membership_mock):
     contact = utils.get_user_mock()
     viewer = utils.get_anon_mock()
     result = views.get_hub_list(contact, viewer=viewer)
     owned_mock.assert_called_once_with(contact, viewer=viewer)
     membership_mock.assert_called_once_with(contact, viewer=viewer)
     eq_(result, [])
Example #2
0
 def test_organization_is_not_visible(self, mock_get):
     mock_instance = Mock(spec=Organization)()
     mock_get.return_value = mock_instance
     mock_instance.is_visible_by.return_value = False
     request = utils.get_request("get", "/organization/foo/", user=utils.get_anon_mock())
     assert_raises(Http404, views.organization_detail, request, "foo")
     mock_instance.is_visible_by.assert_called_once_with(request.user)
Example #3
0
 def test_entry_request_requires_authentication(self):
     request = utils.get_request(
         'get', '/challenges/foo/enter/abc/', user=utils.get_anon_mock())
     response = views.challenge_entry(request, 'foo', 'abc')
     eq_(response.status_code, 302)
     eq_(response['Location'],
         utils.get_login_url('/challenges/foo/enter/abc/'))
Example #4
0
 def test_anon_user_returns_public_objects(self, filter_mock):
     contact = utils.get_user_mock()
     viewer = utils.get_anon_mock()
     result = views.get_resource_list(contact, viewer=viewer)
     filter_mock.assert_called_once_with(
         contact=contact, status=Resource.PUBLISHED)
     eq_(list(result), [])
Example #5
0
 def test_is_not_visible_when_is_draft(self):
     user = get_user('us-ignite')
     challenge = fixtures.get_challenge(user=user)
     application = get_application(owner=user)
     entry = fixtures.get_entry(
         application, challenge=challenge, status=Entry.DRAFT)
     eq_(entry.is_visible_by(utils.get_anon_mock()), False)
Example #6
0
 def test_entry_detail_requires_authentication(self):
     request = utils.get_request(
         'get', '/challenges/gigabit/app/', user=utils.get_anon_mock())
     response = views.entry_detail(request, 'gigabit', 'app')
     eq_(response.status_code, 302)
     eq_(response['Location'],
         utils.get_login_url('/challenges/gigabit/app/'))
Example #7
0
 def test_is_visible_for_published_challenges(self):
     user = get_user('us-ignite')
     challenge = fixtures.get_challenge(user=user)
     application = get_application(owner=user)
     entry = fixtures.get_entry(
         application, challenge=challenge, status=Entry.SUBMITTED)
     eq_(entry.is_visible_by(utils.get_anon_mock()), True)
Example #8
0
 def test_membership_requires_authentication(self):
     request = utils.get_request(
         'post', '/hub/community/membership/', user=utils.get_anon_mock())
     response = views.hub_membership(request, 'community')
     eq_(response.status_code, 302)
     eq_(response['Location'],
         utils.get_login_url('/hub/community/membership/'))
Example #9
0
 def test_invalid_published_post_returns_404(self, mock_get):
     mock_get.side_effect = Http404
     request = utils.get_request('get', '/blog/', user=utils.get_anon_mock())
     assert_raises(Http404, views.post_detail, request, 2013, 12, 'gigabit')
     mock_get.assert_called_once_with(
         Post, slug='gigabit', publication_date__year=2013,
         publication_date__month=12)
Example #10
0
 def setUp(self):
     # key is a mk5 key, determined between the remote ip and
     # path from the request
     self.key = '8243f83255259f10db07a5c781f7c3ab'
     self.factory = client.RequestFactory()
     kwargs = {'HTTP_X_FORWARDED_FOR': '127.0.0.1'}
     self.request = self.factory.get('/', **kwargs)
     self.request.user = utils.get_anon_mock()
Example #11
0
 def test_get_request_is_successful(self, all_mock):
     user = utils.get_anon_mock()
     request = utils.get_request('get', '/hub/', user=user)
     response = views.hub_list(request)
     eq_(response.status_code, 200)
     eq_(response.template_name, 'hubs/object_list.html')
     eq_(sorted(response.context_data.keys()), ['page'])
     all_mock.assert_called_once_with()
Example #12
0
 def challenge_detail_anon_request_is_valid(self, mock_filter):
     request = utils.get_request(
         'get', '/challenges/gigabit/', user=utils.get_anon_mock())
     response = views.challenge_detail(request, 'gigabit')
     eq_(response.status_code, 200)
     eq_(response.template_name, 'challenges/object_detail.html')
     eq_(sorted(response.context_data.keys()), ['entry_list', 'object'])
     eq_(mock_filter.call_count, 0)
Example #13
0
 def test_event_list_request_is_successful(self, mock_filter):
     mock_filter.return_value = []
     request = utils.get_request("get", "/events/", user=utils.get_anon_mock())
     response = views.event_list(request)
     eq_(response.status_code, 200)
     eq_(response.template_name, "events/object_list.html")
     eq_(sorted(response.context_data.keys()), sorted(["page", "timeframe", "featured_list"]))
     mock_filter.assert_called_once()
Example #14
0
 def test_resource_list_request_is_successful(self, mock_filter):
     mock_filter.return_value = []
     request = utils.get_request(
         'get', '/resource/', user=utils.get_anon_mock())
     response = views.resource_list(request)
     eq_(response.status_code, 200)
     eq_(response.template_name, 'resources/object_list.html')
     eq_(sorted(response.context_data.keys()), ['page'])
Example #15
0
 def test_not_visible_event_raises_404(self, mock_get):
     mock_instance = Mock(spec=Event)()
     mock_instance.is_visible_by.return_value = False
     mock_get.return_value = mock_instance
     request = utils.get_request("get", "/event/abc/", user=utils.get_anon_mock())
     assert_raises(Http404, views.event_detail, request, "abc")
     mock_get.assert_called_once_with(Event, slug__exact="abc")
     mock_instance.is_visible_by.assert_called_once()
Example #16
0
 def test_non_visible_resource_raises_404(self, mock_get):
     instance_mock = Mock(spec=Resource)
     instance_mock.is_visible_by.return_value = False
     mock_get.return_value = instance_mock
     request = utils.get_request(
         'get', '/resource/foo/', user=utils.get_anon_mock())
     assert_raises(Http404, views.resource_detail, request, 'foo')
     mock_get.assert_called_once_with(Resource, slug__exact='foo')
     instance_mock.is_visible_by.assert_called_once_with(request.user)
Example #17
0
 def test_request_is_successful(self, related_mock):
     related_mock.return_value.filter.return_value = []
     related_mock.return_value.all.return_value = []
     request = utils.get_request('get', '/blog/', user=utils.get_anon_mock())
     response = views.post_list(request)
     eq_(response.status_code, 200)
     eq_(response.template_name, 'blog/object_list.html')
     eq_(sorted(response.context_data.keys()), ['featured_list', 'page'])
     eq_(related_mock.return_value.filter.call_count, 2)
Example #18
0
 def test_valid_event_returns_calendar(self):
     user = get_user("ignite-user")
     event = fixtures.get_event(user=user, slug="abc", status=Event.PUBLISHED)
     request = utils.get_request("get", "/event/abc/ics/", user=utils.get_anon_mock())
     response = views.event_detail_ics(request, "abc")
     eq_(response.status_code, 200)
     ok_('attachment; filename="' in response["Content-Disposition"])
     eq_(response["Content-Type"], "text/calendar")
     ok_(response.content)
Example #19
0
 def test_organization_request_is_successful(self, mock_get):
     mock_instance = Mock(spec=Organization)()
     mock_get.return_value = mock_instance
     mock_instance.is_visible_by.return_value = True
     request = utils.get_request("get", "/org/foo/", user=utils.get_anon_mock())
     response = views.organization_detail(request, "foo")
     eq_(response.status_code, 200)
     eq_(response.template_name, "organizations/object_detail.html")
     eq_(sorted(response.context_data.keys()), ["is_member", "member_list", "object"])
Example #20
0
 def test_resource_request_is_successful(self, mock_get):
     instance_mock = Mock(spec=Resource)
     instance_mock.is_visible_by.return_value = True
     mock_get.return_value = instance_mock
     request = utils.get_request(
         'get', '/resource/foo/', user=utils.get_anon_mock())
     response = views.resource_detail(request, 'foo')
     eq_(response.status_code, 200)
     eq_(response.template_name, 'resources/object_detail.html')
     eq_(response.context_data.keys(), ['object', 'is_owner'])
Example #21
0
 def test_anon_user_returns_public_objects(self, related_mock):
     filter_mock = Mock()
     filter_mock.filter.return_value = OrganizationMember.objects.none()
     related_mock.return_value = filter_mock
     user = utils.get_user_mock()
     viewer = utils.get_anon_mock()
     result = views.get_organization_list(user, viewer=viewer)
     related_mock.assert_called_once_with('organization')
     filter_mock.filter.assert_called_once_with(
         user=user, organization__status=Organization.PUBLISHED)
Example #22
0
 def test_published_hub_request_is_successful(self):
     fixtures.get_hub(name='community', status=models.Hub.PUBLISHED)
     request = utils.get_request(
         'get', '/hub/community/', user=utils.get_anon_mock())
     response = views.hub_detail(request, 'community')
     eq_(response.status_code, 200)
     eq_(sorted(response.context_data.keys()),
         sorted(['object', 'feature_list', 'member_list', 'is_member',
                 'is_contact', 'activity_list', 'event_list', 'award_list'])
     )
Example #23
0
 def test_anon_user_returns_public_objects(self, related_mock):
     filter_mock = Mock()
     filter_mock.filter.return_value = HubMembership.objects.none()
     related_mock.return_value = filter_mock
     user = utils.get_user_mock()
     viewer = utils.get_anon_mock()
     result = views.get_hub_membership_list(user, viewer=viewer)
     related_mock.assert_called_once_with('hub')
     filter_mock.filter.assert_called_once_with(
         user=user, hub__status=Hub.PUBLISHED)
Example #24
0
 def test_not_visible_post_raises_404(self, mock_get):
     mock_post = Mock(spec=Post)()
     mock_post.is_visible_by.return_value = False
     mock_get.return_value = mock_post
     user = utils.get_anon_mock()
     request = utils.get_request('get', '/blog/', user=user)
     assert_raises(Http404, views.post_detail, request, 2013, 12, 'gigabit')
     mock_get.assert_called_once_with(
         Post, slug='gigabit', publication_date__year=2013,
         publication_date__month=12)
     mock_post.is_visible_by.assert_called_once_with(user)
Example #25
0
 def test_get_request_is_valid(self, mock_get):
     mock_instance = Mock(spec=Event)()
     mock_instance.audiences.all.return_value = []
     mock_instance.is_visible_by.return_value = True
     mock_instance.hubs.all.return_value = []
     mock_get.return_value = mock_instance
     request = utils.get_request("get", "/event/abc/", user=utils.get_anon_mock())
     response = views.event_detail(request, "abc")
     mock_get.assert_called_once_with(Event, slug__exact="abc")
     mock_instance.is_visible_by.assert_called_once_with(request.user)
     eq_(response.status_code, 200)
     eq_(sorted(response.context_data.keys()), sorted(["hub_list", "is_owner", "object", "audience_list"]))
     eq_(response.template_name, "events/object_detail.html")
Example #26
0
 def test_organization_request_is_successful(self, mock_get, mock_awards):
     mock_instance = Mock(spec=Organization)()
     mock_instance.interests.all.return_value = []
     mock_get.return_value = mock_instance
     mock_instance.is_visible_by.return_value = True
     mock_awards.return_value = []
     request = utils.get_request(
         'get', '/org/foo/', user=utils.get_anon_mock())
     response = views.organization_detail(request, 'foo')
     eq_(response.status_code, 200)
     eq_(response.template_name, 'organizations/object_detail.html')
     eq_(sorted(response.context_data.keys()),
         sorted(['interest_list', 'is_member', 'member_list', 'object',
                 'award_list']))
Example #27
0
 def test_published_post_request_is_successful(self, mock_get):
     mock_post = Mock(spec=Post)()
     mock_post.is_visible_by.return_value = True
     mock_get.return_value = mock_post
     request = utils.get_request('get', '/blog/', user=utils.get_anon_mock())
     response = views.post_detail(request, 2013, 12, 'gigabit')
     eq_(response.status_code, 200)
     eq_(response.template_name, 'blog/object_detail.html')
     eq_(sorted(response.context_data.keys()),
         sorted(['object', 'featured_list']))
     mock_get.assert_called_once_with(
         Post, slug='gigabit', publication_date__year=2013,
         publication_date__month=12)
     mock_post.is_visible_by.assert_called_once_with(request.user)
Example #28
0
 def test_add_event_requires_auth(self):
     request = utils.get_request("get", "/event/add/", user=utils.get_anon_mock())
     response = views.event_add(request)
     eq_(response.status_code, 302)
     eq_(response["Location"], utils.get_login_url("/event/add/"))
Example #29
0
 def test_missing_event_raises_404(self, mock_get):
     mock_get.side_effect = Http404
     request = utils.get_request("get", "/event/abc/ics/", user=utils.get_anon_mock())
     assert_raises(Http404, views.event_detail_ics, request, "abc")
     mock_get.assert_called_once_with(Event.published, slug__exact="abc")
Example #30
0
 def test_published_hub_is_visible(self):
     instance = fixtures.get_hub(status=Hub.PUBLISHED)
     eq_(instance.is_visible_by(utils.get_anon_mock()), True)