Esempio n. 1
0
    def setUp(self):
        self.username1 = 'username1'
        self.username2 = 'username2'
        self.username3 = 'username3'
        self.username4 = 'username4'
        self.username5 = 'username5'
        self.username6 = 'username6'
        self.username7 = 'username7'
        self.username8 = 'username8'
        self.username9 = 'username9'
        self.username10 = 'username10'

        self.username11 = 'username11'
        self.username12 = 'username12'

        self.organizer1 = create_organizer(self.username11, 'org1')
        self.organizer2 = create_organizer(self.username12, 'org2')

        self.manager1 = create_manager(self.username1, self.organizer1,
                                       self.organizer1.org)

        self.agent11 = create_agent(self.username2, self.manager1)
        self.agent12 = create_agent(self.username3, self.manager1)
        self.agent13 = create_agent(self.username4, self.manager1)
        self.agent14 = create_agent(self.username8, self.manager1)

        self.manager2 = create_manager(self.username5, self.organizer1,
                                       self.organizer1.org)
        self.agent21 = create_agent(self.username6, self.manager2)
        self.agent22 = create_agent(self.username7, self.manager2)

        self.ntf1 = create_notification(self.agent11, NTD['SOS'],
                                        [self.manager1])
        self.ntf2 = create_notification(self.agent12, NTD['Unreachable'],
                                        [self.manager1])
        self.ntf3 = create_notification(self.agent13, NTD['Deadline crossed'],
                                        [self.agent13, self.manager1])
        self.ntf4 = create_notification(None, NTD['New Task'], [self.agent13])
        self.ntf5 = create_notification(self.agent14, NTD['Task started'],
                                        [self.manager1])

        self.ntf6 = create_notification(self.agent11, NTD['SOS'],
                                        [self.manager1])
        self.ntf7 = create_notification(self.agent12, NTD['Unreachable'],
                                        [self.manager1])
        self.ntf8 = create_notification(self.agent13, NTD['Deadline crossed'],
                                        [self.agent13, self.manager1])
        self.ntf9 = create_notification(None, NTD['New Task'], [self.agent13])
        self.ntf10 = create_notification(self.agent14, NTD['Task started'],
                                         [self.manager1])

        self.ntf11 = create_notification(self.agent11, NTD['SOS'],
                                         [self.manager1])
        self.ntf12 = create_notification(self.agent12, NTD['Unreachable'],
                                         [self.manager1])
        self.ntf13 = create_notification(self.agent13, NTD['Deadline crossed'],
                                         [self.agent13, self.manager1])
        self.ntf14 = create_notification(None, NTD['New Task'], [self.agent13])
        self.ntf15 = create_notification(self.agent14, NTD['Task started'],
                                         [self.manager1])
Esempio n. 2
0
    def setUp(self):
        self.username1 = 'username1'
        self.username2 = 'username2'
        self.username3 = 'username3'
        self.username4 = 'username4'
        self.username5 = 'username5'
        self.username6 = 'username6'
        self.username7 = 'username7'
        self.username8 = 'username8'
        self.username9 = 'username9'
        self.username10 = 'username10'

        self.username11 = 'username11'
        self.username12 = 'username12'

        self.organizer1 = create_organizer(self.username11, 'org1')
        self.organizer2 = create_organizer(self.username12, 'org2')

        self.manager1 = create_manager(self.username1, self.organizer1,
                                       self.organizer1.org)

        self.agent11 = create_agent(self.username2, self.manager1)
        self.agent12 = create_agent(self.username3, self.manager1)
        self.agent13 = create_agent(self.username4, self.manager1)
        self.agent14 = create_agent(self.username8, self.manager1)

        self.manager2 = create_manager(self.username5, self.organizer1,
                                       self.organizer1.org)
        self.agent21 = create_agent(self.username6, self.manager2)
        self.agent22 = create_agent(self.username7, self.manager2)
Esempio n. 3
0
    def test_get_account_fail_org(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        manager2 = create_manager(self.username1, self.organizer2,
                                  self.organizer2.org)
        agent = create_agent(self.username3, manager2)

        client.force_authenticate(manager1)
        response = client.get(
            user_prefix +
            USER_ULRS['account_id'].replace('<int:pk>', str(agent.id)),
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
Esempio n. 4
0
    def test_get_resource_list_success(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        agent11 = create_agent(self.username2, manager1)
        agent12 = create_agent(self.username3, manager1)

        task1 = create_task('Task_test1',
                            manager1, [agent11, agent12],
                            status=TSTATE['In progress'])

        client.force_authenticate(manager1)
        response = client.get(
            user_prefix + USER_ULRS['resource_list'],
            {'status': 'working'},
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 2)

        client.force_authenticate(None)
        client.force_authenticate(self.organizer1)
        response = client.get(
            user_prefix + USER_ULRS['resource_list'],
            {'status': 'working'},
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 0)
Esempio n. 5
0
    def test_get_profile_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        AppInfo.objects.create(current_version=10, app_name='manager')

        AppInfo.objects.create(current_version=11, app_name='agent')

        client.force_authenticate(manager)
        response = client.get(
            user_prefix +
            USER_ULRS['profile_id'].replace('<int:pk>', str(manager.id)),
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data['current_version'], 10)

        # print(json.dumps(response.data))
        agent = create_agent(self.username2, manager)

        client.force_authenticate(None)
        client.force_authenticate(agent)
        response = client.get(
            user_prefix +
            USER_ULRS['profile_id'].replace('<int:pk>', str(agent.id)),
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data['current_version'], 11)
Esempio n. 6
0
    def test_search_account_in_list_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent1 = create_agent(self.username3, manager)
        agent2 = create_agent(self.username4, manager)
        agent3 = create_agent('halios', manager)

        client.force_authenticate(self.organizer1)
        response = client.get(
            user_prefix + USER_ULRS['accounts_paginated'],
            {'token': ''},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data['results']), 4)

        client.force_authenticate(self.organizer1)
        response = client.get(
            user_prefix + USER_ULRS['accounts_paginated'],
            {'token': 'username'},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data['results']), 3)
Esempio n. 7
0
    def test_change_manger_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        manager2 = create_manager(self.username5, self.organizer1,
                                  self.organizer1.org)
        agent = create_agent(self.username2, manager)

        client.force_authenticate(self.organizer1)
        response = client.patch(
            user_prefix +
            USER_ULRS['account_id'].replace('<int:pk>', str(agent.id)),
            {
                'username': self.username2,
                'full_name': 'agent1',
                'parent': manager2.id,
                'role': ROLE_DICT['Employee'],
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Esempio n. 8
0
    def test_get_account_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)

        agent = create_agent(self.username2, manager)

        client.force_authenticate(manager)
        response = client.get(
            user_prefix +
            USER_ULRS['account_id'].replace('<int:pk>', str(agent.id)),
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Esempio n. 9
0
    def test_fb_token_update_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        token = uuid.uuid4()

        client.force_authenticate(manager)
        response = client.post(
            user_prefix + USER_ULRS['update_fb_token'],
            {
                'fb_token': token,
            },
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Esempio n. 10
0
    def test_set_password_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)

        password = '******'

        client.force_authenticate(manager)
        response = client.post(
            user_prefix + USER_ULRS['set_password'],
            {
                'password': password,
            },
            format='json',
        )
        # print('Password set response: ' + str(response.data))
        self.assertEqual(response.status_code, status.HTTP_200_OK)
Esempio n. 11
0
    def test_delete_account_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent = create_agent(self.username3, manager)

        client.force_authenticate(self.organizer1)
        response = client.delete(
            user_prefix +
            USER_ULRS['account_id'].replace('<int:pk>', str(agent.id)),
            {},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(
            User.objects.filter(phone=self.username3).exists(), False)
Esempio n. 12
0
    def test_search_account_light_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent1 = create_agent(self.username3, manager)
        agent2 = create_agent(self.username4, manager)
        agent3 = create_agent('halios', manager)

        client.force_authenticate(self.organizer1)
        response = client.get(
            user_prefix +
            USER_ULRS['search_user'].replace('<str:token>', 'user'),
            {},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 3)
Esempio n. 13
0
    def test_change_password_fail(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        password = '******'
        manager1.set_password(password)

        client.force_authenticate(manager1)
        response = client.post(
            user_prefix + USER_ULRS['change_password'],
            {
                'old_password': password,
                'new_password': '******',
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 400)
Esempio n. 14
0
    def test_login_success(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        password = '******'
        manager1.set_password(password)
        manager1.save()

        response = client.post(
            user_prefix + USER_ULRS['login_password'],
            {
                'oid': manager1.org.oid,
                'username': self.username1,
                'password': password,
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 200)

        oid_upper = manager1.org.oid.upper()
        # print(oid_upper)
        response = client.post(
            user_prefix + USER_ULRS['login_password'],
            {
                'oid': oid_upper,
                'username': self.username1,
                'password': password,
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 200)

        response = client.post(
            user_prefix + USER_ULRS['login_password'],
            {
                'oid': manager1.org.oid,
                'username': self.username1,
                'password': '******',
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 401)
Esempio n. 15
0
    def test_create_account_fail_username(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent = create_agent(self.username2, manager)

        client.force_authenticate(self.organizer1)
        response = client.post(
            user_prefix + USER_ULRS['account'],
            {
                'username': self.username2,
                'full_name': 'agent1',
                'designation': 'AGM',
                'parent': manager.id,
                'role': ROLE_DICT['Employee'],
                'org': manager.org.id,
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 406)
Esempio n. 16
0
    def test_change_password_success(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        password = '******'
        manager1.set_password(password)
        manager1.save()

        client.force_authenticate(manager1)
        response = client.post(
            user_prefix + USER_ULRS['change_password'],
            {
                'old_password': password,
                'new_password': '******',
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        manager1.refresh_from_db()
        self.assertEqual(manager1.check_password('new_password'), True)
Esempio n. 17
0
    def test_data_usage_upload_success(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent1 = create_agent(self.username3, manager)
        agent2 = create_agent(self.username4, manager)

        mb_list1 = [0.5, 1.5, 0.5, 1.5, 2.0]
        # total1 = .5 + 1 + .5 + 1 + .5 = 3.5

        mb_list2 = [7.5, 8.5, 0.5, 1.5, 2.0]
        # total2 = 7.5 + 1 + .5 + 1 + .5 = 10.5

        for mb in mb_list1:
            upload_data(self, mb, agent1, '00:0a:95:9d:68:16')

        for mb in mb_list2:
            upload_data(self, mb, agent1, '00:0a:95:9d:68:17')

        for mb in mb_list1:
            upload_data(self, mb, agent2, '00:0a:95:9d:68:18')

        client.force_authenticate(None)
        client.force_authenticate(manager)
        response = client.get(
            user_prefix + USER_ULRS['data_usage'],
            {},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 2)

        response = client.get(
            user_prefix + USER_ULRS['data_usage_id'].replace(
                '<int:agent_id>', str(agent1.id)),
            {},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data['megabytes'], 14.0)
Esempio n. 18
0
    def test_edit_account_fail_username_with_spaces(self):
        manager = create_manager(self.username1, self.organizer1,
                                 self.organizer1.org)
        agent = create_agent(self.username3, manager)
        agent2 = create_agent(self.username4, manager)

        client.force_authenticate(self.organizer1)
        response = client.patch(
            user_prefix +
            USER_ULRS['account_id'].replace('<int:pk>', str(agent.id)),
            {
                'username': '******',
                'full_name': 'agent1',
                'parent': manager.id,
                'role': ROLE_DICT['Employee'],
                'org': manager.org.id,
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, 400)
Esempio n. 19
0
    def test_edit_profile_success(self):
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)

        client.force_authenticate(user=manager1)
        response = client.patch(
            user_prefix +
            USER_ULRS['profile_id'].replace('<int:pk>', str(manager1.id)),
            {
                'full_name': 'Manager1',
                'phone': '+8801788000000',
                'email': '*****@*****.**',
                'designation': 'AGM Dhaka Zone',
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)

        response = client.patch(
            user_prefix +
            USER_ULRS['profile_id'].replace('<int:pk>', str(manager1.id)),
            {
                'full_name': 'Manager1',
                'username': self.username10,
                'phone': '+8801788000000',
                'email': '*****@*****.**',
                'designation': 'AGM Dhaka Zone',
            },
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        manager1.refresh_from_db()
        self.assertEqual(manager1.username,
                         create_username(manager1.org.oid, self.username10))
Esempio n. 20
0
    def setUp(self):
        self.username1 = 'username1'
        self.username2 = 'username2'
        self.username3 = 'username3'
        self.username4 = 'username4'
        self.username5 = 'username5'
        self.username6 = 'username6'
        self.username7 = 'username7'
        self.username8 = 'username8'
        self.username9 = 'username9'
        self.username10 = 'username10'

        self.username11 = 'username11'
        self.username12 = 'username12'

        self.organizer1 = create_organizer(self.username11, 'org1')
        self.organizer2 = create_organizer(self.username12, 'org2')

        self.manager1 = create_manager(self.username1, self.organizer1,
                                       self.organizer1.org)

        self.agent11 = create_agent(self.username2,
                                    self.manager1,
                                    is_present=False)
        self.agent12 = create_agent(self.username3,
                                    self.manager1,
                                    is_present=False)
        self.agent13 = create_agent(self.username4,
                                    self.manager1,
                                    is_present=False)
        self.agent14 = create_agent(self.username8,
                                    self.manager1,
                                    is_present=False)

        self.manager2 = create_manager(self.username5, self.organizer1,
                                       self.organizer1.org)
        self.agent21 = create_agent(self.username6,
                                    self.manager2,
                                    is_present=False)
        self.agent22 = create_agent(self.username7,
                                    self.manager2,
                                    is_present=False)
        self.agent23 = create_agent(self.username9,
                                    self.manager2,
                                    is_present=False)

        date_str = '2019-03-06'

        # Feb 2019: 26/tue, 27/wed, 28/thu. Mar 2019: 1/fri, 2/sat, 3/sun, 4/mon, 5/tue, 6/wed
        date = timezone.datetime.strptime(date_str, '%Y-%m-%d')
        date = utc.localize(date)
        date += timezone.timedelta(hours=9)
        self.date = date

        # Creating attendance current day.................................
        date_6_3_19 = date
        create_attendance(self.agent11, task_hour_p=49.0, date=date_6_3_19)
        create_attendance(self.agent12,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_6_3_19)
        create_attendance(self.agent13, date=date_6_3_19)

        create_attendance(self.agent21, late_arrival=True, date=date_6_3_19)
        create_attendance(self.agent22,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_6_3_19)
        # This week/month for agent11..........................
        date_5_3_19 = date - timezone.timedelta(days=1)

        create_attendance(self.agent11, date=date_5_3_19)
        create_attendance(self.agent12,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_5_3_19)

        create_attendance(self.agent13, date=date_5_3_19)

        create_attendance(self.agent14, date=date_5_3_19)

        date_4_3_19 = date - timezone.timedelta(days=2)

        create_attendance(self.agent11, late_arrival=True, date=date_4_3_19)

        create_attendance(self.agent12, date=date_4_3_19)

        create_attendance(self.agent14, date=date_4_3_19)

        date_3_3_19 = date - timezone.timedelta(days=3)

        create_attendance(self.agent11, task_hour_p=49.0, date=date_3_3_19)

        create_attendance(self.agent12, task_hour_p=49.0, date=date_3_3_19)

        create_attendance(self.agent13, date=date_3_3_19)

        # last week/month for agent11...........

        date_28_2_19 = date - timezone.timedelta(days=6)

        create_attendance(self.agent11, task_hour_p=49.0, date=date_28_2_19)

        create_attendance(self.agent12,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_28_2_19)

        create_attendance(self.agent14, date=date_28_2_19)

        date_27_2_19 = date - timezone.timedelta(days=7)

        create_attendance(self.agent11,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_27_2_19)

        create_attendance(self.agent12, task_hour_p=49.0, date=date_27_2_19)

        create_attendance(self.agent13, date=date_27_2_19)

        date_26_2_19 = date - timezone.timedelta(days=8)

        create_attendance(self.agent11, task_hour_p=49.0, date=date_26_2_19)

        create_attendance(self.agent12, date=date_26_2_19)

        create_attendance(self.agent13,
                          work_hour=timezone.timedelta(hours=6),
                          date=date_26_2_19)

        create_attendance(self.agent14, date=date_26_2_19)

        # Creating tasks this week/month.................................
        create_task_rpt(self.manager1, [self.agent11],
                        deadline=date - timezone.timedelta(days=1),
                        status=TSD['Complete'])
        create_task_rpt(self.manager1, [self.agent11],
                        deadline=date - timezone.timedelta(days=1),
                        status=TSD['Cancelled'])
        create_task_rpt(self.manager1, [self.agent13],
                        deadline=date - timezone.timedelta(days=2),
                        status=TSD['Remaining'],
                        delayed=True)
        create_task_rpt(self.manager1, [self.agent12],
                        deadline=date - timezone.timedelta(days=2),
                        status=TSD['Postponed'])

        create_task_rpt(self.manager1, [self.agent13],
                        deadline=date - timezone.timedelta(days=3),
                        status=TSD['Remaining'],
                        delayed=True)

        create_task_rpt(self.manager1, [self.agent12],
                        deadline=date - timezone.timedelta(days=3),
                        status=TSD['Complete'],
                        delayed=True)

        # last week/month...........

        create_task_rpt(self.manager1, [self.agent11],
                        deadline=date - timezone.timedelta(days=6),
                        status=TSD['Complete'])
        create_task_rpt(self.manager1, [self.agent11],
                        deadline=date - timezone.timedelta(days=6),
                        status=TSD['Cancelled'])
        create_task_rpt(self.manager1, [self.agent13],
                        deadline=date - timezone.timedelta(days=7),
                        status=TSD['Remaining'],
                        delayed=True)
        create_task_rpt(self.manager1, [self.agent12],
                        deadline=date - timezone.timedelta(days=7),
                        status=TSD['Postponed'])

        create_task_rpt(self.manager1, [self.agent13],
                        deadline=date - timezone.timedelta(days=8),
                        status=TSD['Remaining'],
                        delayed=True)

        create_task_rpt(self.manager1, [self.agent12],
                        deadline=date - timezone.timedelta(days=8),
                        status=TSD['Complete'],
                        delayed=True)
Esempio n. 21
0
    def test_get_account_list(self):

        manager1 = create_manager(self.username1, None, self.organizer1.org)
        manager11 = create_manager(self.username2, manager1,
                                   self.organizer1.org)
        agent11 = create_agent(self.username3, manager1)

        manager111 = create_manager(self.username7, manager11,
                                    self.organizer1.org)
        agent111 = create_agent(self.username8, manager11)
        agent112 = create_agent(self.username9, manager11)

        manager2 = create_manager(self.username4, self.organizer1,
                                  self.organizer1.org)
        manager21 = create_manager(self.username5, manager2,
                                   self.organizer1.org)
        agent22 = create_agent(self.username6, manager2)

        manager3 = create_manager(self.username20, None, self.organizer1.org)

        client.force_authenticate(manager1)

        response = client.get(
            user_prefix + USER_ULRS['account'],
            {},
            format='json',
        )
        self.assertEqual(response.status_code, 200)
        self.assertEqual(len(response.data), 6)

        response = client.get(
            user_prefix + USER_ULRS['account'],
            {'role': ROLE_DICT['Manager']},
            format='json',
        )
        self.assertEqual(response.status_code, 200)
        self.assertEqual(len(response.data), 3)

        client.force_authenticate(None)
        client.force_authenticate(self.organizer1)

        response = client.get(
            user_prefix + USER_ULRS['account'],
            {'role': ROLE_DICT['Manager']},
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 6)

        response = client.get(
            user_prefix + USER_ULRS['account'],
            {'manager_id': manager11.id},
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data), 3)

        response = client.get(
            user_prefix + USER_ULRS['account'],
            {'manager_id': self.organizer1.id},
            format='json',
        )
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        # print(response.data)
        self.assertEqual(len(response.data), 2)
Esempio n. 22
0
    def test_get_dashboard_success(self):
        '''Team1 details'''
        manager1 = create_manager(self.username1, self.organizer1,
                                  self.organizer1.org)
        agent1 = create_agent(self.username2, manager1)
        agent2 = create_agent(self.username3, manager1)
        agent3 = create_agent(self.username4, manager1)
        agent4 = create_agent(self.username5, manager1)

        task1 = create_task('Retailer 1',
                            manager1, [agent1, agent2],
                            status=TSTATE['In progress'])
        task2 = create_task('Doctor Visit', manager1, [agent2])
        task3 = create_task('Survey 1', manager1, [agent3])
        task3.delayed = True
        task3.save()
        task4 = create_task('Survey 2',
                            manager1, [agent4],
                            status=TSTATE['Cancelled'])
        '''Team2 details'''
        manager2 = create_manager(self.username6, self.organizer1,
                                  self.organizer1.org)
        agent5 = create_agent(self.username7, manager2)

        task5 = create_task('Demand Collection',
                            manager2, [agent5],
                            status=TSTATE['In progress'])
        task5 = create_task('Delivery',
                            manager2, [agent5],
                            status=TSTATE['Cancelled'])

        client.force_authenticate(manager1)
        response = client.get(
            user_prefix +
            USER_ULRS['search_api_manager'].replace('<str:token>', 'survey'),
            {},
            format='json',
        )

        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)

        client.force_authenticate(user=None)
        client.force_authenticate(manager2)
        response = client.get(
            user_prefix + USER_ULRS['manager_dashboard'],
            {},
            format='json',
        )

        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)

        client.force_authenticate(user=None)
        client.force_authenticate(agent2)
        response = client.get(
            user_prefix + USER_ULRS['agent_dashboard'],
            {},
            format='json',
        )
        # print(response.data)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(len(response.data['current_task']), 1)
        self.assertEqual(response.data['current_task'][0]['title'],
                         'Retailer 1')