def test_button_update_local(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled in Geneva
     calvin = ElvantoPerson.objects.get(
         e_id='f7cfa258-d3c6-11e4-95ba-068b656294b7')
     geneva_grp = ElvantoGroup.objects.get(name='Geneva')
     assert geneva_grp not in calvin.disabled_groups.all()
     # disable calvin in group
     post_data = {
         'p_id': calvin.pk,
         'g_id': geneva_grp.pk,
         'disable': False,
     }
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_local'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp in calvin.disabled_groups.all()
     # re-enable him again
     post_data = {
         'p_id': calvin.pk,
         'g_id': geneva_grp.pk,
         'disable': True,
     }
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_local'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp not in calvin.disabled_groups.all()
 def test_push_auto_button(self, clients):
     refresh_elvanto_data()
     # ensure Geneva not syncing
     geneva = ElvantoGroup.objects.get(name='Geneva')
     assert not geneva.push_auto
     # send button request
     post_data = {
         'pk': geneva.pk,
         'push_auto': True,
     }
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_sync'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert geneva.push_auto
     # and the other direction
     post_data['push_auto'] = False
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_sync'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert not geneva.push_auto
 def test_button_update_global(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled
     calvin = ElvantoPerson.objects.get(
         e_id='f7cfa258-d3c6-11e4-95ba-068b656294b7'
     )
     assert not calvin.disabled_entirely
     # disable calvin
     post_data = {'pk': calvin.pk, 'disable': True}
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_global'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert calvin.disabled_entirely
     # re-enable him again
     post_data = {'pk': calvin.pk, 'disable': False}
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_global'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert not calvin.disabled_entirely
 def test_push_auto_button(self, clients):
     refresh_elvanto_data()
     # ensure Geneva not syncing
     geneva = ElvantoGroup.objects.get(name='Geneva')
     assert not geneva.push_auto
     # send button request
     post_data = {
         'pk': geneva.pk,
         'push_auto': True,
     }
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_sync'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert geneva.push_auto
     # and the other direction
     post_data['push_auto'] = False
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_sync'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert not geneva.push_auto
    def test_post_to_group(self, clients):
        pk_ = 1
        refresh_elvanto_data()
        post_data = {"google_email": "*****@*****.**", "push_auto": False}
        resp = clients["c_in"].post(reverse("group", kwargs={"pk": pk_}), post_data)
        assert resp.status_code == 302
        assert resp.url.endswith(reverse("group", kwargs={"pk": pk_}))
        assert ElvantoGroup.objects.get(pk=pk_).google_email == "*****@*****.**"

        post_data_invalid = {"google_email": "not_an_email", "push_auto": True}
        resp = clients["c_in"].post(reverse("group", kwargs={"pk": pk_}), post_data_invalid)
        assert resp.status_code == 200
        assert ElvantoGroup.objects.get(pk=pk_).google_email == "*****@*****.**"
        assert ElvantoGroup.objects.get(pk=pk_).push_auto is False
 def test_email_field(self, clients):
     refresh_elvanto_data()
     # ensure Geneva not syncing
     geneva = ElvantoGroup.objects.get(name='Geneva')
     assert not geneva.google_email
     # send button request
     post_data = {'googleEmail': '*****@*****.**'}
     resp = clients['c_in'].generic('POST',
                                    reverse('api_group',
                                            kwargs={'pk': geneva.pk}),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert geneva.google_email == '*****@*****.**'
Example #7
0
 def test_delete_old_groups(self):
     elvanto.refresh_elvanto_data()
     assert ElvantoGroup.objects.count() == 5
     assert ElvantoPerson.objects.count() == 11
     # construct synthetic elvanto data:
     data = {
         'groups': {
             'group': [{
                 'id': '7ebd2605-d3c7-11e4-95ba-068b656294b7',
             }]
         }
     }
     elvanto.delete_missing_groups(data)
     # check:
     assert ElvantoGroup.objects.count() == 1
     assert ElvantoPerson.objects.count() == 11
 def test_button_update_global(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled
     calvin = ElvantoPerson.objects.get(e_id="f7cfa258-d3c6-11e4-95ba-068b656294b7")
     assert not calvin.disabled_entirely
     # disable calvin
     post_data = {"p_id": [calvin.pk], "disabled_boolean": "1"}
     resp = clients["c_in"].post(reverse("button_update_global"), post_data)
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert calvin.disabled_entirely
     # re-enable him again
     post_data = {"p_id": [calvin.pk], "disabled_boolean": "0"}
     resp = clients["c_in"].post(reverse("button_update_global"), post_data)
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert not calvin.disabled_entirely
 def test_delete_old_groups(self):
     elvanto.refresh_elvanto_data()
     assert ElvantoGroup.objects.count() == 5
     assert ElvantoPerson.objects.count() == 11
     # construct synthetic elvanto data:
     data = {
         'groups': {
             'group': [
                 {
                     'id': '7ebd2605-d3c7-11e4-95ba-068b656294b7',
                 }
             ]
         }
     }
     elvanto.delete_missing_groups(data)
     # check:
     assert ElvantoGroup.objects.count() == 1
     assert ElvantoPerson.objects.count() == 11
 def test_email_field(self, clients):
     refresh_elvanto_data()
     # ensure Geneva not syncing
     geneva = ElvantoGroup.objects.get(name='Geneva')
     assert not geneva.google_email
     # send button request
     post_data = {'googleEmail': '*****@*****.**'}
     resp = clients['c_in'].generic(
         'POST',
         reverse(
             'api_group', kwargs={'pk': geneva.pk}
         ),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     geneva.refresh_from_db()
     assert geneva.google_email == '*****@*****.**'
 def test_button_update_local(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled in Geneva
     calvin = ElvantoPerson.objects.get(e_id="f7cfa258-d3c6-11e4-95ba-068b656294b7")
     geneva_grp = ElvantoGroup.objects.get(name="Geneva")
     assert geneva_grp not in calvin.disabled_groups.all()
     # disable calvin in group
     post_data = {"p_id": [calvin.pk], "g_id": [geneva_grp.pk], "disabled_boolean": "0"}
     resp = clients["c_in"].post(reverse("button_update_local"), post_data)
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp in calvin.disabled_groups.all()
     # re-enable him again
     post_data = {"p_id": [calvin.pk], "g_id": [geneva_grp.pk], "disabled_boolean": "1"}
     resp = clients["c_in"].post(reverse("button_update_local"), post_data)
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp not in calvin.disabled_groups.all()
 def test_button_update_local(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled in Geneva
     calvin = ElvantoPerson.objects.get(
         e_id='f7cfa258-d3c6-11e4-95ba-068b656294b7'
     )
     geneva_grp = ElvantoGroup.objects.get(name='Geneva')
     assert geneva_grp not in calvin.disabled_groups.all()
     # disable calvin in group
     post_data = {
         'p_id': calvin.pk,
         'g_id': geneva_grp.pk,
         'disable': False,
     }
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_local'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp in calvin.disabled_groups.all()
     # re-enable him again
     post_data = {
         'p_id': calvin.pk,
         'g_id': geneva_grp.pk,
         'disable': True,
     }
     resp = clients['c_in'].generic(
         'POST',
         reverse('button_update_local'),
         json.dumps(post_data),
         content_type='application/json'
     )
     assert resp.status_code == 200
     geneva_grp.refresh_from_db()
     assert geneva_grp not in calvin.disabled_groups.all()
 def test_button_update_global(self, clients):
     refresh_elvanto_data()
     # ensure Calvin is enabled
     calvin = ElvantoPerson.objects.get(
         e_id='f7cfa258-d3c6-11e4-95ba-068b656294b7')
     assert not calvin.disabled_entirely
     # disable calvin
     post_data = {'pk': calvin.pk, 'disable': True}
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_global'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert calvin.disabled_entirely
     # re-enable him again
     post_data = {'pk': calvin.pk, 'disable': False}
     resp = clients['c_in'].generic('POST',
                                    reverse('button_update_global'),
                                    json.dumps(post_data),
                                    content_type='application/json')
     assert resp.status_code == 200
     calvin.refresh_from_db()
     assert not calvin.disabled_entirely
 def test_logged_in_db(self, url, status_code, clients):
     refresh_elvanto_data()
     assert clients["c_in"].get(url).status_code == status_code
 def test_refresh_data(self):
     elvanto.refresh_elvanto_data()
Example #16
0
 def test_refresh_data(self):
     elvanto.refresh_elvanto_data()
Example #17
0
def bg_refresh_elvanto_data():
    refresh_elvanto_data()
Example #18
0
def bg_refresh_elvanto_data():
    refresh_elvanto_data()
Example #19
0
 def handle(self, *args, **options):
     self.stdout.write('Beginning pull from elvanto')
     refresh_elvanto_data()
     self.stdout.write('Successfully pulled from elvanto')
 def test_logged_in_db(self, url, status_code, clients):
     refresh_elvanto_data()
     assert clients['c_in'].get(url).status_code == status_code