def test_event_detail_is_successful(self): user = get_user("ignite-user") event = fixtures.get_event(user=user, slug="foo", status=Event.PUBLISHED) request = utils.get_request("get", event.get_absolute_url(), user=user) response = views.event_edit(request, "foo") eq_(response.status_code, 200) eq_(response.template_name, "events/object_edit.html") eq_(sorted(response.context_data.keys()), ["form", "formset", "object"])
def test_google_calendar_url_succeeds(self): user = get_user('us-ignite') ny_tz = pytz.timezone("America/New_York") start = ny_tz.localize(datetime.datetime(2013, 12, 2, 12, 00)) end = ny_tz.localize(datetime.datetime(2013, 12, 2, 13, 00)) event = fixtures.get_event( user=user, start_datetime=start, end_datetime=end) ok_(event.get_google_calendar_url())
def test_event_invalid_payload_fails(self): user = get_user("ignite-user") event = fixtures.get_event(user=user, slug="foo", status=Event.PUBLISHED) request = utils.get_request("post", event.get_absolute_url(), data={}, user=user) response = views.event_edit(request, "foo") eq_(response.status_code, 200) eq_(response.template_name, "events/object_edit.html") ok_(response.context_data["form"].errors)
def test_different_day_event_date_is_displayed(self): user = get_user('us-ignite') ny_tz = pytz.timezone("America/New_York") start = ny_tz.localize(datetime.datetime(2014, 1, 30, 12, 00)) end = ny_tz.localize(datetime.datetime(2014, 2, 2, 13, 00)) event = fixtures.get_event( user=user, start_datetime=start, end_datetime=end) eq_(event.printable_date, 'Jan 30 - Feb 02 2014')
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)
def test_event_url_is_created_successfully(self): user = get_user('us-ignite') event = fixtures.get_event(user=user) data = { 'event': event, 'name': 'US Ignite', 'url': 'http://us-ignite.org/', } instance = models.EventURL.objects.create(**data) ok_(instance.id) eq_(instance.event, event) eq_(instance.name, 'US Ignite') eq_(instance.url, 'http://us-ignite.org/')
def test_valid_payload_is_saved(self): user = get_user("ignite-user") event = fixtures.get_event(user=user, slug="foo", status=Event.PUBLISHED) data = { "name": "Gigabit community", "status": Event.DRAFT, "start_datetime": "2013-12-14 14:30:59", "address": "London UK", "scope": 1, "description": "Gigabit event", } formset_data = utils.get_inline_payload(EventURLFormSet) data.update(formset_data) request = utils.get_request("post", event.get_absolute_url(), data=data, user=user) request._messages = utils.TestMessagesBackend(request) response = views.event_edit(request, "foo") eq_(response.status_code, 302) eq_(response["Location"], event.get_absolute_url())
def test_is_visible_by_owner(self): user = get_user('us-ignite') event = fixtures.get_event(user=user, status=models.Event.DRAFT) eq_(event.is_visible_by(user), True)
def test_userless_event_is_not_owned(self): user = get_user('us-ignite') event = fixtures.get_event(user=None) eq_(event.is_owner(user), False)
def test_get_location_dict(self): user = get_user('us-ignite') event = fixtures.get_event(user=user) eq_(sorted(event.get_location_dict().keys()), sorted(['type', 'latitude', 'longitude', 'name', 'website', 'content', 'category', 'image']))
def test_event_edit_requires_owner(self): user = get_user("ignite-user") event = fixtures.get_event(user=user, slug="foo", status=Event.PUBLISHED) request = utils.get_request("get", event.get_absolute_url(), user=get_user("other")) assert_raises(Http404, views.event_edit, request, "foo") self._tear_down()
def test_unpublished_events_are_not_shown(self): user = get_user('ignite-user') event = fixtures.get_event(user=user, status=Event.DRAFT) eq_(list(Event.published.all()), [])
def test_published_events_are_shown(self): user = get_user('ignite-user') event = fixtures.get_event(user=user, status=Event.PUBLISHED) eq_(list(Event.published.all()), [event])
def test_google_calendar_url_is_none(self): user = get_user('us-ignite') event = fixtures.get_event(user=user, status=models.Event.DRAFT) eq_(event.get_google_calendar_url(), None)
def test_event_can_be_userless(self): event = fixtures.get_event(user=None) ok_(event.id) eq_(event.user, None)
def test_is_owner(self): user = get_user('us-ignite') event = fixtures.get_event(user=user) eq_(event.is_owner(user), True)
def test_absolute_url_is_draft(self): user = get_user('us-ignite') event = fixtures.get_event(user=user, status=models.Event.DRAFT) eq_(event.is_draft(), True)
def test_absolute_url_is_published(self): user = get_user('us-ignite') event = fixtures.get_event(user=user, status=models.Event.PUBLISHED) eq_(event.is_published(), True)
def test_absolute_url_is_correct(self): user = get_user('us-ignite') event = fixtures.get_event(user=user) eq_(event.get_absolute_url(), '/event/%s/' % event.slug)