예제 #1
0
파일: tasks.py 프로젝트: fesp21/ureport
def recheck_poll_flow_data(org_id=None):

    active_orgs = Org.objects.filter(is_active=True)
    if org_id:
        active_orgs = Org.objects.filter(pk=org_id)

    for org in active_orgs:
        update_poll_flow_data(org)

    print "Task: recheck_poll_flow_data done"
예제 #2
0
파일: tasks.py 프로젝트: Assaye/ureport
def recheck_poll_flow_data(org_id=None):

    active_orgs = Org.objects.filter(is_active=True)
    if org_id:
        active_orgs = Org.objects.filter(pk=org_id)

    for org in active_orgs:
        update_poll_flow_data(org)

    logger.info("Task: recheck_poll_flow_data done")
예제 #3
0
파일: tasks.py 프로젝트: fesp21/ureport
def fetch_poll(poll_id):
    try:
        # get our poll
        from .models import Poll
        poll = Poll.objects.get(pk=poll_id)

        # update poll flow_archived
        update_poll_flow_data(poll.org)

        poll.fetch_poll_results()
    except Exception as e:
        logger.exception("Error fetching poll results: %s" % str(e))
예제 #4
0
def fetch_poll(poll_id):
    try:
        # get our poll
        from .models import Poll
        poll = Poll.objects.get(pk=poll_id)

        # update poll flow_archived
        update_poll_flow_data(poll.org)

        poll.fetch_poll_results()
    except Exception as e:
        logger.exception("Error fetching poll results: %s" % str(e))
예제 #5
0
파일: tests.py 프로젝트: forkkit/ureport
    def test_update_poll_flow_data(self):
        poll = Poll.objects.filter(pk=self.poll.pk).first()
        self.assertFalse(poll.flow_archived)
        self.assertEqual(poll.runs_count, 0)

        with patch("ureport.utils.get_flows") as mock_get_flows:
            mock_get_flows.return_value = dict()

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 5}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.flow_uuid, "uuid-1")
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": False, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": False, "runs": 3}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 3)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 2}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1"}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)
예제 #6
0
    def test_update_poll_flow_data(self):
        poll = Poll.objects.filter(pk=self.poll.pk).first()
        self.assertFalse(poll.flow_archived)
        self.assertEqual(poll.runs_count, 0)

        with patch("ureport.utils.get_flows") as mock_get_flows:
            mock_get_flows.return_value = dict()

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': True}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': True, 'runs': 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': True, 'runs': 5}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.flow_uuid, 'uuid-1')
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': True, 'runs': 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': False, 'runs': 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': False, 'runs': 3}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 3)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1', 'archived': True, 'runs': 2}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)

            mock_get_flows.return_value = {'uuid-1': {'uuid': 'uuid-1'}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)
예제 #7
0
파일: tests.py 프로젝트: rapidpro/ureport
    def test_update_poll_flow_data(self):
        poll = Poll.objects.filter(pk=self.poll.pk).first()
        self.assertFalse(poll.flow_archived)
        self.assertEqual(poll.runs_count, 0)

        with patch("ureport.utils.get_flows") as mock_get_flows:
            mock_get_flows.return_value = dict()

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 0)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 5}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.flow_uuid, "uuid-1")
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": False, "runs": 0}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 5)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": False, "runs": 3}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 3)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1", "archived": True, "runs": 2}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertTrue(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)

            mock_get_flows.return_value = {"uuid-1": {"uuid": "uuid-1"}}

            update_poll_flow_data(self.org)
            poll = Poll.objects.filter(pk=self.poll.pk).first()
            self.assertFalse(poll.flow_archived)
            self.assertEqual(poll.runs_count, 2)