Ejemplo n.º 1
0
    def setUp(self):
        """Setup method for some initial data."""
        ActivityFactory.create(name=ACTIVITY_EVENT_ATTEND)
        ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
        functional_area = FunctionalAreaFactory.create()
        metrics = EventMetricFactory.create_batch(3)
        campaign = CampaignFactory.create()

        self.data = {
            'name': u'Test edit event',
            'description': u'This is a description',
            'external_link': '',
            'categories': [functional_area.id],
            'campaign': [campaign.id],
            'venue': u'Hackerspace.GR',
            'lat': 38.01697,
            'lon': 23.7314,
            'city': u'Athens',
            'region': u'Attica',
            'country': u'Greece',
            'start_form_0_month': 01,
            'start_form_0_day': 25,
            'start_form_0_year': now().year + 1,
            'start_form_1_hour': 04,
            'start_form_1_minute': 01,
            'end_form_0_month': 01,
            'end_form_0_day': 03,
            'end_form_0_year': now().year + 2,
            'end_form_1_hour': 03,
            'end_form_1_minute': 00,
            'timezone': u'Europe/Athens',
            'mozilla_event': u'on',
            'estimated_attendance': u'10',
            'actual_attendance': u'10',
            'extra_content': u'This is extra content',
            'planning_pad_url': u'',
            'hashtag': u'#testevent',
            'swag_bug_form': u'',
            'budget_bug_form': u'',
            'eventmetricoutcome_set-0-id': '',
            'eventmetricoutcome_set-0-metric': metrics[0].id,
            'eventmetricoutcome_set-0-expected_outcome': 100,
            'eventmetricoutcome_set-1-id': '',
            'eventmetricoutcome_set-1-metric': metrics[1].id,
            'eventmetricoutcome_set-1-expected_outcome': 10,
            'eventmetricoutcome_set-TOTAL_FORMS': 2,
            'eventmetricoutcome_set-INITIAL_FORMS': 0
        }
Ejemplo n.º 2
0
 def test_base(self):
     user = UserFactory.create()
     activity = ActivityFactory.create()
     functional_area = FunctionalAreaFactory.create()
     data = {
         'report_date': '25 March 2012',
         'activity': activity.id,
         'longitude': 44.33,
         'latitude': 55.66,
         'location': 'world',
         'link': 'https://example.com',
         'link_description': 'Test link.',
         'activity_description': 'Test activity',
         'functional_areas': [functional_area.id],
     }
     form = NGReportForm(data, instance=NGReport(user=user))
     ok_(form.is_valid())
     db_obj = form.save()
     eq_(db_obj.report_date, date(2012, 03, 25))
     eq_(db_obj.activity, activity)
     eq_(db_obj.longitude, 44.33)
     eq_(db_obj.latitude, 55.66)
     eq_(db_obj.location, 'world')
     eq_(db_obj.link, 'https://example.com/')
     eq_(db_obj.link_description, 'Test link.')
     eq_(db_obj.activity_description, 'Test activity'),
     eq_(db_obj.functional_areas.all().count(), 1)
     eq_(db_obj.functional_areas.all()[0], functional_area)
     eq_(db_obj.mentor, user.userprofile.mentor)
Ejemplo n.º 3
0
 def test_campain_activity_without_campaign(self):
     activity = ActivityFactory.create(name=ACTIVITY_CAMPAIGN)
     data = {"activity": activity.id}
     form = NGReportForm(data)
     ok_(not form.is_valid())
     ok_("campaign" in form.errors)
     ok_(form.errors["campaign"], "Please select an option from the list.")
Ejemplo n.º 4
0
 def test_base(self):
     user = UserFactory.create()
     activity = ActivityFactory.create()
     campaign = CampaignFactory.create()
     functional_area = FunctionalAreaFactory.create()
     data = {
         "report_date": "25 March 2012",
         "activity": activity.id,
         "campaign": campaign.id,
         "longitude": 44.33,
         "latitude": 55.66,
         "location": "world",
         "link": "https://example.com",
         "link_description": "Test link.",
         "activity_description": "Test activity",
         "functional_areas": functional_area.id,
     }
     form = NGReportForm(data, instance=NGReport(user=user))
     ok_(form.is_valid())
     db_obj = form.save()
     eq_(db_obj.report_date, date(2012, 03, 25))
     eq_(db_obj.activity, activity)
     eq_(db_obj.longitude, 44.33)
     eq_(db_obj.latitude, 55.66)
     eq_(db_obj.location, "world")
     eq_(db_obj.link, "https://example.com/")
     eq_(db_obj.link_description, "Test link.")
     eq_(db_obj.activity_description, "Test activity"),
     eq_(db_obj.functional_areas.all().count(), 1)
     eq_(db_obj.functional_areas.all()[0], functional_area)
     eq_(db_obj.mentor, user.userprofile.mentor)
Ejemplo n.º 5
0
 def test_base(self):
     mentor = UserFactory.create()
     user = UserFactory.create(userprofile__mentor=mentor)
     event = EventFactory.create()
     functional_areas = [FunctionalAreaFactory.create()]
     campaign = CampaignFactory.create()
     activity = ActivityFactory.create()
     report = NGReportFactory.create(
         functional_areas=functional_areas, mentor=mentor,
         campaign=campaign, user=user, event=event, activity=activity)
     url = '/api/beta/activities/%s' % report.id
     request = RequestFactory().get(url)
     data = ActivitiesDetailedSerializer(report,
                                         context={'request': request}).data
     eq_(data['user']['first_name'], user.first_name)
     eq_(data['user']['last_name'], user.last_name)
     eq_(data['user']['display_name'], user.userprofile.display_name)
     ok_(data['user']['_url'])
     eq_(data['activity'], activity.name)
     eq_(data['initiative'], campaign.name)
     eq_(data['functional_areas'][0]['name'], functional_areas[0].name)
     eq_(data['activity_description'], report.activity_description)
     eq_(data['location'], report.location)
     eq_(data['latitude'], float(report.latitude))
     eq_(data['longitude'], float(report.longitude))
     eq_(data['report_date'], report.report_date.strftime('%Y-%m-%d'))
     eq_(data['link'], report.link)
     eq_(data['link_description'], report.link_description)
     eq_(data['mentor']['first_name'], mentor.first_name)
     eq_(data['mentor']['last_name'], mentor.last_name)
     eq_(data['mentor']['display_name'], mentor.userprofile.display_name)
     ok_(data['mentor']['_url'])
     eq_(data['passive_report'], report.is_passive)
     eq_(data['event']['name'], event.name)
     ok_(data['event']['_url'])
Ejemplo n.º 6
0
 def test_base(self):
     user = UserFactory.create()
     activity = ActivityFactory.create()
     campaign = CampaignFactory.create()
     functional_area = FunctionalAreaFactory.create()
     data = {
         'report_date': '25 March 2012',
         'activity': activity.id,
         'campaign': campaign.id,
         'longitude': 44.33,
         'latitude': 55.66,
         'location': 'world',
         'link': 'https://example.com',
         'link_description': 'Test link.',
         'activity_description': 'Test activity',
         'functional_areas': functional_area.id,
     }
     form = NGReportForm(data, instance=NGReport(user=user))
     ok_(form.is_valid())
     db_obj = form.save()
     eq_(db_obj.report_date, date(2012, 03, 25))
     eq_(db_obj.activity, activity)
     eq_(db_obj.longitude, 44.33)
     eq_(db_obj.latitude, 55.66)
     eq_(db_obj.location, 'world')
     eq_(db_obj.link, 'https://example.com')
     eq_(db_obj.link_description, 'Test link.')
     eq_(db_obj.activity_description, 'Test activity'),
     eq_(db_obj.functional_areas.all().count(), 1)
     eq_(db_obj.functional_areas.all()[0], functional_area)
     eq_(db_obj.mentor, user.userprofile.mentor)
Ejemplo n.º 7
0
 def test_campain_activity_without_campaign(self):
     activity = ActivityFactory.create(name=ACTIVITY_CAMPAIGN)
     data = {'activity': activity.id}
     form = NGReportForm(data)
     ok_(not form.is_valid())
     ok_('campaign' in form.errors)
     ok_(form.errors['campaign'], 'Please select an option from the list.')
Ejemplo n.º 8
0
    def setUp(self):
        """Setup method for some initial data."""
        ActivityFactory.create(name=ACTIVITY_EVENT_ATTEND)
        ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
        functional_area = FunctionalAreaFactory.create()
        metrics = EventMetricFactory.create_batch(3)
        campaign = CampaignFactory.create()

        self.data = {
            'name': u'Test edit event',
            'description': u'This is a description',
            'external_link': '',
            'categories': [functional_area.id],
            'campaign': [campaign.id],
            'venue': u'Hackerspace.GR',
            'lat': 38.01697,
            'lon': 23.7314,
            'city': u'Athens',
            'region': u'Attica',
            'country': u'Greece',
            'start_form_0_month': 01,
            'start_form_0_day': 25,
            'start_form_0_year': 2018,
            'start_form_1_hour': 04,
            'start_form_1_minute': 01,
            'end_form_0_month': 01,
            'end_form_0_day': 03,
            'end_form_0_year': 2019,
            'end_form_1_hour': 03,
            'end_form_1_minute': 00,
            'timezone': u'Europe/Athens',
            'mozilla_event': u'on',
            'estimated_attendance': u'10',
            'actual_attendance': u'10',
            'extra_content': u'This is extra content',
            'planning_pad_url': u'',
            'hashtag': u'#testevent',
            'swag_bug_form': u'',
            'budget_bug_form': u'',
            'eventmetricoutcome_set-0-id': '',
            'eventmetricoutcome_set-0-metric': metrics[0].id,
            'eventmetricoutcome_set-0-expected_outcome': 100,
            'eventmetricoutcome_set-1-id': '',
            'eventmetricoutcome_set-1-metric': metrics[1].id,
            'eventmetricoutcome_set-1-expected_outcome': 10,
            'eventmetricoutcome_set-TOTAL_FORMS': 2,
            'eventmetricoutcome_set-INITIAL_FORMS': 0}
Ejemplo n.º 9
0
 def test_base(self):
     activity = ActivityFactory.create()
     report = NGReportFactory.create(activity=activity)
     url = '/api/beta/activities/%s' % report.id
     request = RequestFactory().get(url)
     serializer = ActivitiesSerializer(report, context={'request': request})
     eq_(serializer.data['activity'], activity.name)
     ok_(serializer.data['_url'])
Ejemplo n.º 10
0
 def test_base(self):
     activity = ActivityFactory.create()
     report = NGReportFactory.create(activity=activity)
     url = '/api/beta/activities/%s' % report.id
     request = RequestFactory().get(url)
     serializer = ActivitiesSerializer(report,
                                       context={'request': request})
     eq_(serializer.data['activity'], activity.name)
     ok_(serializer.data['_url'])
Ejemplo n.º 11
0
 def test_base_content_activity_delete_post(self):
     """Test delete activity."""
     admin = UserFactory.create(groups=['Admin'])
     activity = ActivityFactory.create(name='test activity')
     response = self.post(reverse('delete_activity',
                                  kwargs={'pk': activity.id}), user=admin,
                          follow=True)
     eq_(response.status_code, 200)
     query = Activity.objects.filter(name='test activity')
     eq_(query.exists(), False)
Ejemplo n.º 12
0
 def test_campain_activity_without_campaign(self):
     activity = ActivityFactory.create(
         name='Participated in a campaign')
     data = {
         'activity': activity.id
     }
     form = NGReportForm(data)
     ok_(not form.is_valid())
     ok_('campaign' in form.errors)
     ok_(form.errors['campaign'],
         'Please select an option from the list.')
Ejemplo n.º 13
0
 def test_base_content_activity_delete_post(self):
     """Test delete activity."""
     admin = UserFactory.create(groups=['Admin'])
     activity = ActivityFactory.create(name='test activity')
     response = self.post(reverse('delete_activity',
                                  kwargs={'pk': activity.id}),
                          user=admin,
                          follow=True)
     eq_(response.status_code, 200)
     query = Activity.objects.filter(name='test activity')
     eq_(query.exists(), False)
Ejemplo n.º 14
0
 def test_base_content_activity_edit_post(self):
     """Test post edit activity."""
     admin = UserFactory.create(groups=['Admin'])
     activity = ActivityFactory.create(name='test activity')
     with self.login(admin) as client:
         response = client.post(reverse('edit_activity', kwargs={'pk': activity.id}),
                                data={'name': 'edit activity'},
                                follow=True)
     eq_(response.status_code, 200)
     query = Activity.objects.filter(name='edit activity')
     eq_(query.exists(), True)
Ejemplo n.º 15
0
 def test_base_content_activity_edit_post(self):
     """Test post edit activity."""
     admin = UserFactory.create(groups=['Admin'])
     activity = ActivityFactory.create(name='test activity')
     with self.login(admin) as client:
         response = client.post(reverse('edit_activity',
                                        kwargs={'pk': activity.id}),
                                data={'name': 'edit activity'},
                                follow=True)
     eq_(response.status_code, 200)
     query = Activity.objects.filter(name='edit activity')
     eq_(query.exists(), True)
Ejemplo n.º 16
0
 def test_edit_event(self):
     """Edit NGReport with inactive categories."""
     activity = ActivityFactory.create()
     active_area = FunctionalAreaFactory.create()
     inactive_areas = FunctionalAreaFactory.create_batch(2, active=False)
     report = NGReportFactory.create(activity=activity,
                                     functional_areas=inactive_areas)
     data = model_to_dict(report)
     areas = [active_area.id] + [x.id for x in inactive_areas]
     data['functional_areas'] = areas
     form = NGReportForm(data, instance=report)
     ok_(form.is_valid())
     result = form.save()
     for area in inactive_areas + [active_area]:
         ok_(area in result.functional_areas.all())
Ejemplo n.º 17
0
 def test_edit_event(self):
     """Edit NGReport with inactive categories."""
     activity = ActivityFactory.create()
     active_area = FunctionalAreaFactory.create()
     inactive_areas = FunctionalAreaFactory.create_batch(2, active=False)
     report = NGReportFactory.create(activity=activity,
                                     functional_areas=inactive_areas)
     data = model_to_dict(report)
     areas = [active_area.id] + [x.id for x in inactive_areas]
     data['functional_areas'] = areas
     form = NGReportForm(data, instance=report)
     ok_(form.is_valid())
     result = form.save()
     for area in inactive_areas + [active_area]:
         ok_(area in result.functional_areas.all())
Ejemplo n.º 18
0
    def test_edit_event(self):
        """Edit NGReport with inactive categories."""
        activity = ActivityFactory.create()
        campaign = CampaignFactory.create()
        active_area = FunctionalAreaFactory.create()
        inactive_areas = FunctionalAreaFactory.create_batch(2, active=False)
        report = NGReportFactory.create(activity=activity, campaign=campaign, functional_areas=inactive_areas)

        data = model_to_dict(report)
        data["functional_areas"] = active_area.id
        form = NGReportForm(data, instance=report)
        ok_(form.is_valid())
        result = form.save()
        ok_(active_area in result.functional_areas.all())
        eq_(result.functional_areas.all().count(), 1)
Ejemplo n.º 19
0
    def test_verify_activity(self):
        model = ContentType.objects.get_for_model(NGReport)
        items = ActionItem.objects.filter(content_type=model)
        ok_(not items.exists())

        activity = ActivityFactory.create(name=RECRUIT_MOZILLIAN)
        mentor = UserFactory.create()
        user = UserFactory.create(groups=['Rep'], userprofile__mentor=mentor)
        report = NGReportFactory.create(activity=activity, user=user,
                                        mentor=mentor)

        items = ActionItem.objects.filter(content_type=model,
                                          object_id=report.id,
                                          resolved=False)
        eq_(items.count(), 1)
Ejemplo n.º 20
0
    def test_verify_activity(self):
        model = ContentType.objects.get_for_model(NGReport)
        items = ActionItem.objects.filter(content_type=model)
        ok_(not items.exists())

        activity = ActivityFactory.create(name=RECRUIT_MOZILLIAN)
        mentor = UserFactory.create()
        user = UserFactory.create(groups=['Rep'], userprofile__mentor=mentor)
        report = NGReportFactory.create(activity=activity, user=user,
                                        mentor=mentor)

        items = ActionItem.objects.filter(content_type=model,
                                          object_id=report.id,
                                          resolved=False)
        eq_(items.count(), 1)
Ejemplo n.º 21
0
    def test_edit_event(self):
        """Edit NGReport with inactive categories."""
        activity = ActivityFactory.create()
        campaign = CampaignFactory.create()
        active_area = FunctionalAreaFactory.create()
        inactive_areas = FunctionalAreaFactory.create_batch(2, active=False)
        report = NGReportFactory.create(activity=activity, campaign=campaign,
                                        functional_areas=inactive_areas)

        data = model_to_dict(report)
        data['functional_areas'] = active_area.id
        form = NGReportForm(data, instance=report)
        ok_(form.is_valid())
        result = form.save()
        ok_(active_area in result.functional_areas.all())
        eq_(result.functional_areas.all().count(), 1)
Ejemplo n.º 22
0
 def test_base(self):
     mentor = UserFactory.create()
     user = UserFactory.create(userprofile__mentor=mentor)
     event = EventFactory.create()
     functional_areas = [FunctionalAreaFactory.create()]
     campaign = CampaignFactory.create()
     activity = ActivityFactory.create()
     report = NGReportFactory.create(functional_areas=functional_areas,
                                     mentor=mentor,
                                     campaign=campaign,
                                     user=user,
                                     event=event,
                                     activity=activity)
     url = '/api/beta/activities/%s' % report.id
     request = RequestFactory().get(url)
     data = ActivitiesDetailedSerializer(report,
                                         context={
                                             'request': request
                                         }).data
     eq_(data['user']['first_name'], user.first_name)
     eq_(data['user']['last_name'], user.last_name)
     eq_(data['user']['display_name'], user.userprofile.display_name)
     ok_(data['user']['_url'])
     eq_(data['activity'], activity.name)
     eq_(data['initiative'], campaign.name)
     eq_(data['functional_areas'][0]['name'], functional_areas[0].name)
     eq_(data['activity_description'], report.activity_description)
     eq_(data['location'], report.location)
     eq_(data['latitude'], float(report.latitude))
     eq_(data['longitude'], float(report.longitude))
     eq_(data['report_date'], report.report_date.strftime('%Y-%m-%d'))
     eq_(data['link'], report.link)
     eq_(data['link_description'], report.link_description)
     eq_(data['mentor']['first_name'], mentor.first_name)
     eq_(data['mentor']['last_name'], mentor.last_name)
     eq_(data['mentor']['display_name'], mentor.userprofile.display_name)
     ok_(data['mentor']['_url'])
     eq_(data['passive_report'], report.is_passive)
     eq_(data['event']['name'], event.name)
     ok_(data['event']['_url'])
Ejemplo n.º 23
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
Ejemplo n.º 24
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_ATTEND)
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
Ejemplo n.º 25
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     self.single_day_end = START_DT + datetime.timedelta(hours=4)
Ejemplo n.º 26
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     self.single_day_end = START_DT + datetime.timedelta(hours=4)
Ejemplo n.º 27
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     self.start = datetime.combine(get_date(days=-1), datetime.min.time())
     self.end = datetime.combine(get_date(days=-1), datetime.max.time())
Ejemplo n.º 28
0
 def setUp(self):
     self.factory = RequestFactory()
     self.url = '/api/kpi/events'
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
Ejemplo n.º 29
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     self.event = EventFactory.create()
Ejemplo n.º 30
0
 def setUp(self):
     self.factory = RequestFactory()
     self.url = '/api/kpi/events'
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
Ejemplo n.º 31
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     self.start = datetime.combine(get_date(days=-1), datetime.min.time())
     self.end = datetime.combine(get_date(days=-1), datetime.max.time())
Ejemplo n.º 32
0
 def setUp(self):
     ActivityFactory.create(name=ACTIVITY_EVENT_CREATE)
     ActivityFactory.create(name=ACTIVITY_EVENT_ATTEND)
     ActivityFactory.create(name=ACTIVITY_POST_EVENT_METRICS)