def test_getCurrentPractice(self): practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() user = create_user('practicemgr1', 'lin', 'xing', 'demo') #a mhluser login and call this method result = getCurrentPractice(user) self.assertEqual(result, '') #a provider login and call this method provider = Provider(username='******', first_name='tes', last_name="meister", email='*****@*****.**', user=user, office_lat=0.0, office_longit=0.0) provider.current_practice = practice provider.save() result = getCurrentPractice(user) self.assertEqual(result, 'test') #a staff login and call this method staff = OfficeStaff(user=user) staff.current_practice = practice staff.save() result = getCurrentPractice(user) self.assertEqual(result, 'test')
def test_checkoutUserManager(self): practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() user = create_user('staff', 'lin', 'xing', 'demo', '', '', '', '',) staff = OfficeStaff(user=user) staff.save() staff.practices.add(practice) provider = Provider.objects.create(username='******', first_name='heal', last_name='meister', address1="555 Bryant St.", city="Palo Alto", state="CA", lat=0.0, longit=0.0, office_lat=0.0, office_longit=0.0, is_active=True, tos_accepted=True, mobile_confirmed=True, mdcom_phone='123', mobile_phone='456') provider.user = provider # for our unique prov-user reln provider.save() # try provider result = user_is_mgr_of_practice(provider, practice) self.assertEqual(False, result) # try just staff result = user_is_mgr_of_practice(staff.user, practice) self.assertEqual(False, result) # now office manager (make staff an OM) om = Office_Manager.objects.create(user=staff, practice=practice, manager_role=1) result = user_is_mgr_of_practice(om.user.user, practice) self.assertEqual(True, result) result = user_is_mgr_of_practice(staff.user, practice) self.assertEqual(True, result)
def test_getLevelByStaff(self): practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) practice.save() user = create_user('practicemgr1', 'lin', 'xing', 'demo') #not a manager login result = get_level_by_staff(user, practice) self.assertEqual(result, 0) staff = OfficeStaff(user=user) staff.save() manager = Office_Manager(user=staff, practice=practice, manager_role=2) manager.save() #a manager login result = get_level_by_staff(staff.id, practice) self.assertEqual(result, 2)
def setUpClass(cls): clean_db_datas() cls.user = create_user( 'practicemgr1', 'lin', 'xing', 'demo', '', '', '', '', ) call_group = CallGroup(description='test', team='team') call_group.save() cls.call_group = call_group practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() practice.call_groups.add(call_group) cls.practice = practice
def test_getLevelByStaff(self): practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit= -122.081864) practice.save() user = create_user('practicemgr1', 'lin', 'xing', 'demo') #not a manager login result = get_level_by_staff(user, practice) self.assertEqual(result, 0) staff = OfficeStaff(user=user) staff.save() manager = Office_Manager(user=staff, practice=practice, manager_role=2) manager.save() #a manager login result = get_level_by_staff(staff.id, practice) self.assertEqual(result, 2)
def test_canAccessCallGroup(self): call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', call_group=call_group) practice.save() practice.call_groups.add(call_group) user = create_user('user-CallGroup2', 'us', 'er', 'demo') staff = OfficeStaff(user=user) staff.save() staff.practices.add(practice) #a staff call this method result = canAccessCallGroup(staff, long(call_group.pk)) self.assertEqual(result, False) #a manager call this method # manager = Office_Manager(user=staff, practice=practice, manager_role=1) # manager.save() # # result = canAccessCallGroup(manager, long(call_group.pk)) # self.assertEqual(result, True) #admin call this method admin = create_user('user-CallGroup', 'us', 'er', 'demo', '', '', '', '', Administrator) result = canAccessCallGroup(admin.user, call_group) self.assertEqual(result, True) Administrator.objects.all().delete()
def testPracticeManage(self): practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() self.user.current_practice = practice self.user.practices.add(practice) self.user.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), data={'current_practice':practice.id}, **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def test_getCurrentPractice(self): practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() user = create_user('practicemgr1', 'lin', 'xing', 'demo') #a mhluser login and call this method result = getCurrentPractice(user) self.assertEqual(result, '') #a provider login and call this method provider = Provider(username='******', first_name='tes', last_name="meister", email='*****@*****.**', user=user, office_lat=0.0, office_longit=0.0) provider.current_practice = practice provider.save() result = getCurrentPractice(user) self.assertEqual(result, 'test') #a staff login and call this method staff = OfficeStaff(user=user) staff.current_practice = practice staff.save() result = getCurrentPractice(user) self.assertEqual(result, 'test')
def testPracticeManage(self): practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() self.user.current_practice = practice self.user.practices.add(practice) self.user.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.practiceManage'), data={'current_practice':practice.id}, **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def setUpClass(cls): clean_db_datas() user = create_user( 'practicemgr1', 'lin', 'xing', 'demo', '', '', '', '', ) cls.user = user call_group = CallGroup(description='test', team='team') call_group.save() cls.group = call_group practice = PracticeLocation( practice_name='Test Org', practice_longit='0.1', practice_lat='0.0', ) practice.save() cls.practice = practice provider = Provider() provider.user = cls.user provider.office_lat = 0.0 provider.office_longit = 0.0 provider.current_practice = practice provider.save() provider.practices.add(practice) cls.provider = provider practice.call_groups.add(call_group) cls.practice = practice
def testCheckProviderSchedule(self): response = self.client.get(reverse('MHLogin.MHLOrganization.views_member.checkProviderSchedule'),\ data={'org_id': self.practice.id,'prov_id':self.provider.user.id}) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 1) self.call_group = CallGroup.objects.create(description='test', team='team') organization = PracticeLocation(practice_name='testcallgroup', practice_longit='0.1', practice_lat='0.0', call_group = self.call_group,) organization.save() self.organization = organization response = self.client.get(reverse('MHLogin.MHLOrganization.views_member.checkProviderSchedule'),\ data={'org_id': self.practice.id}) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 2) response = self.client.get(reverse('MHLogin.MHLOrganization.views_member.checkProviderSchedule'),\ data={'org_id': self.practice.id,'prov_id':self.provider.user.id}) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 1) response = self.client.post(reverse('MHLogin.MHLOrganization.views_member.checkProviderSchedule'),\ data={'org_id': self.practice.id,'prov_id':self.provider.user.id}) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 1)
def create_organization(auto_type=True, org_type=None, org_type_id=None, org_name="Test Org"): if not org_type: if auto_type: org_setting = OrganizationSetting(can_have_luxury_logo=True, display_in_contact_list_tab=True) org_setting.save() type_name = "Test Org Type1" if org_type_id: org_type = OrganizationType(id=org_type_id, name=type_name, organization_setting=org_setting) org_type.save() else: org_type = OrganizationType(name=type_name, organization_setting=org_setting) # force id for test - MySQL UT's don't re-use ids after cleanup org_type.id = RESERVED_ORGANIZATION_TYPE_ID_PRACTICE # TODO: issue 2030, reserved id's is a hazardous approach, the UT's # were working with SQLlite but not with MySQL, DB engines recycle # id's differently and we should not rely on reserved id fields. This # should be addressed in a separate Redmine as model changes may occur. org_type.save() _organization = PracticeLocation( practice_name="Test Org", practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864, organization_type=org_type) _organization.save() return _organization
def testGetDComNumber(self): user = create_user(get_random_username(), "tian", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff) user.mdcom_phone = '9001234123' user.save() practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() mgr = Office_Manager(user=user, practice=practice, manager_role=2) mgr.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.getDComNumber'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def test_isCallGroupStaff(self): call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.call_group = call_group practice.save() user = create_user('user5', 'us', 'er', 'demo') #a mhluser call this method result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, False) staff = OfficeStaff(user=user) staff.save() staff.practices.add(practice) #a staff call this method result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, True) #a manager call this method manager = Office_Manager(user=staff, practice=practice, manager_role=1) manager.save() result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, True)
def test_canAccessCallGroup(self): call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', call_group=call_group) practice.save() practice.call_groups.add(call_group) user = create_user('user-CallGroup2', 'us', 'er', 'demo') staff = OfficeStaff(user=user) staff.save() staff.practices.add(practice) #a staff call this method result = canAccessCallGroup(staff, long(call_group.pk)) self.assertEqual(result, False) #a manager call this method # manager = Office_Manager(user=staff, practice=practice, manager_role=1) # manager.save() # # result = canAccessCallGroup(manager, long(call_group.pk)) # self.assertEqual(result, True) #admin call this method admin = create_user('user-CallGroup', 'us', 'er', 'demo', '', '', '', '', Administrator) result = canAccessCallGroup(admin.user, call_group) self.assertEqual(result, True) Administrator.objects.all().delete()
def test_isCallGroupStaff(self): call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.call_group = call_group practice.save() user = create_user('user5', 'us', 'er', 'demo') #a mhluser call this method result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, False) staff = OfficeStaff(user=user) staff.save() staff.practices.add(practice) #a staff call this method result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, True) #a manager call this method manager = Office_Manager(user=staff, practice=practice, manager_role=1) manager.save() result = isCallGroupStaff(user, call_group.pk) self.assertEqual(result, True)
def testLocalOffice(self): practice = PracticeLocation(practice_name = "pyang",practice_address1="Palo Alto",\ practice_longit = 0.0,practice_lat = 0.0) practice.save() data = {'id': practice.id} response = self.client.post(reverse\ ('MHLogin.api.v1.views_practices.localOffice'), data, **self.extra) self.assertEqual(response.status_code, 200, response.status_code)
def test_get_all_providers_and_staffs(self): request = generateHttpRequest() #get method request.method = 'GET' result = get_all_providers_and_staffs(request) self.assertEqual(result.status_code, 400) msg = json.loads(result.content) self.assertEqual(msg['errno'], 'GE002') #post method request.method = 'POST' #find 0 any type user result = get_all_providers_and_staffs(request) self.assertEqual(result.status_code, 200) msg = json.loads(result.content) self.assertEqual(len(msg['users']), 0) #has 1 nppa user = create_user('np1', 'abc', '', 'demo') provider = Provider(user=user, username='******', first_name='abc', last_name='', office_lat=0.0, office_longit=0.0) provider.save() nppa = NP_PA(user=provider) nppa.save() request.POST['name'] = unicode('abc') result = get_all_providers_and_staffs(request) self.assertEqual(result.status_code, 200) msg = json.loads(result.content) self.assertEqual(len(msg['users']), 1) self.assertEqual(msg['users'][0]['first_name'], 'abc') phy = Physician(user=provider) phy.save() result = get_all_providers_and_staffs(request) self.assertEqual(result.status_code, 200) msg = json.loads(result.content) self.assertEqual(len(msg['users']), 2) self.assertEqual(msg['users'][0]['first_name'], 'abc') #staff organization_type = create_org_type() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', mdcom_phone='8005550085', organization_type=organization_type) practice.save() staff = OfficeStaff(user=request.user, current_practice=practice) staff.save() staff.practices.add(practice) request.POST['name'] = unicode(request.user.first_name) result = get_all_providers_and_staffs(request) self.assertEqual(result.status_code, 200) self.assertEqual(len(msg['users']), 2) self.assertEqual(msg['users'][0]['first_name'], 'abc')
def test_convert_dt_to_utz(self): local_tz = 'America/New_York' practice = PracticeLocation() practice.time_zone = local_tz dt = datetime(2013, 01, 29) local_tz = timezone(local_tz) local_dt = timezone(settings.TIME_ZONE).localize(dt, is_dst=None) cmp_dt = local_dt.astimezone(local_tz).replace(tzinfo=None) self.assertEqual(cmp_dt, convert_dt_to_utz(dt, self.mhluser, practice))
def test_convert_dt_to_utz(self): local_tz = 'America/New_York' practice = PracticeLocation() practice.time_zone = local_tz dt = datetime(2013, 01, 29) local_tz = timezone(local_tz) local_dt = timezone(settings.TIME_ZONE).localize(dt, is_dst=None) cmp_dt = local_dt.astimezone(local_tz).replace(tzinfo=None) self.assertEqual(cmp_dt, convert_dt_to_utz(dt, self.mhluser, practice))
def testPracticeStaff(self): practice = PracticeLocation(practice_name = "pyang",practice_address1="Palo Alto",\ practice_longit = 0.0,practice_lat = 0.0) practice.save() response = self.client.get\ (reverse('MHLogin.api.v1.views_practices.practiceStaff',\ args=(practice.id,)), **self.extra) self.assertEqual(response.status_code, 200, response.status_code)
def testPracticeStaff(self): practice = PracticeLocation(practice_name = "pyang",practice_address1="Palo Alto",\ practice_longit = 0.0,practice_lat = 0.0) practice.save() response = self.client.get\ (reverse('MHLogin.api.v1.views_practices.practiceStaff',\ args=(practice.id,)), **self.extra) self.assertEqual(response.status_code, 200, response.status_code)
class ChangeCurrentPracticeForStaffTest(TestCase): staff = None practice = None def setUp(self): self.staff = create_user("bblazejowsky", "bill", "blazejowsky", "demo", "Ocean Avenue", "Carmel", "CA", "93921", uklass=OfficeStaff) PracticeLocation.objects.all().delete() self.practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.practice.save() def tearDown(self): OfficeStaff.objects.filter(id=self.staff.id).delete() MHLUser.objects.filter(id=self.staff.user.id).delete() PracticeLocation.objects.all().delete() def testChangeCurrentPracticeForStaff(self): with self.assertRaises(PracticeLocation.DoesNotExist): changeCurrentPracticeForStaff(None, self.staff.user.id) with self.assertRaises(MHLUser.DoesNotExist): changeCurrentPracticeForStaff(self.practice.id, None) with self.assertRaises(PracticeLocation.DoesNotExist): changeCurrentPracticeForStaff(self.practice.id + 1, self.staff.user.id) changeCurrentPracticeForStaff(self.practice.id, self.staff.user.id) staff = OfficeStaff.objects.filter(id=self.staff.id) if staff: staff = staff[0] self.assertEqual(staff.current_practice.id, self.practice.id) mhluser = MHLUser.objects.filter(id=self.staff.user.id) if mhluser: mhluser = mhluser[0] practice = self.practice self.assertEqual(practice.practice_address1, mhluser.address1) self.assertEqual(practice.practice_address2, mhluser.address2) self.assertEqual(practice.practice_city, mhluser.city) self.assertEqual(practice.practice_state, mhluser.state) self.assertEqual(practice.practice_zip, mhluser.zip) self.assertEqual(practice.practice_lat, mhluser.lat) self.assertEqual(practice.practice_longit, mhluser.longit)
def testMyPracticeStaff(self): practice = PracticeLocation(practice_name = "pyang",practice_address1="Palo Alto",\ practice_longit = 0.0,practice_lat = 0.0) practice.save() data = { 'id': practice.id } response = self.client.post(reverse\ ('MHLogin.api.v1.views_practices.myPracticeStaff'), data, **self.extra) self.assertEqual(response.status_code, 200, response.status_code)
def testProfile(self): phys = Physician(user = self.user) phys.save() data = { 'username':get_random_username(), 'first_name':'c', 'last_name':'tian', 'mobile_phone':9001111111, 'gender':'M', 'old_email':'*****@*****.**', 'email':'*****@*****.**', 'lat':0.0, 'longit':0.0, 'address1':'address1', 'address2':'address2', 'city':'Chicago', 'state':'IL', 'zip':60601, 'user_type':1, 'office_lat':41.885805, 'office_longit':-87.6229106, } response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.profile'), data,**self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) site = Site( name='mysite', address1='555 Pleasant Pioneer Grove', address2='Trailer Q615', city='Mountain View', state='CA', zip='94040-4104', lat=37.36876, longit=-122.081864, short_name='MSite' ) site.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() self.user.current_site = site self.user.current_practice = practice self.user.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.profile'), data,**self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def setUpClass(cls): clean_db_datas() cls.user = create_user('practicemgr1', 'lin', 'xing', 'demo') practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() cls.practice = practice
class GetSubTypesICanUseTest(TestCase): org_type = None admin = None manager = None organization = None def setUp(self): clean_db_datas() OrganizationType.objects.all().delete() org_setting = OrganizationSetting() org_setting.save() self.org_type = OrganizationType(name="Test Org Type1", organization_setting=org_setting, is_public=True) # TODO: issue 2030, reserved id's is a hazardous approach, the UT's # were working with SQLlite but not with MySQL, DB engines recycle # id's differently and we should not rely on reserved id fields. This # should be addressed in a separate Redmine as model changes may occur. self.org_type.id = RESERVED_ORGANIZATION_TYPE_ID_PRACTICE self.org_type.save() self.organization = create_organization() self.organization = PracticeLocation( practice_name=get_random_username(), practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.organization.save() self.admin = create_user('admin', 'Morris', 'Kelly', 'demo', uklass=Administrator) staff = create_user('practicemgr1', 'Practice', 'Mgr', 'demo', uklass=OfficeStaff) staff.practices.add(self.organization) staff.save() self.manager = Office_Manager(user=staff, practice=self.organization, manager_role=1) self.manager.save() def test_get_sub_types_I_can_use_empty(self): self.assertEqual(0, len(get_sub_types_by_typeid(self.org_type.id))) def test_get_sub_types_I_can_use(self): create_multiple_organization_types(self.org_type, num=10) self.assertEqual(10, len(get_sub_types_by_typeid(self.org_type.id))) create_multiple_organization_types(self.org_type, num=10, is_public=False) self.assertEqual(10, len(get_sub_types_by_typeid(self.org_type.id))) self.assertEqual(0, len(get_sub_types_by_typeid(self.org_type.id, is_public=True))) def tearDown(self): pass
def create_practice(): practice = PracticeLocation(practice_name='USA practice', practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) practice.save() return practice
def create_practice(): practice = PracticeLocation( practice_name='USA practice', practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) practice.save() return practice
def testProfile(self): phys = Physician(user=self.user) phys.save() data = { 'username': get_random_username(), 'first_name': 'c', 'last_name': 'tian', 'mobile_phone': 9001111111, 'gender': 'M', 'old_email': '*****@*****.**', 'email': '*****@*****.**', 'lat': 0.0, 'longit': 0.0, 'address1': 'address1', 'address2': 'address2', 'city': 'Chicago', 'state': 'IL', 'zip': 60601, 'user_type': 1, 'office_lat': 41.885805, 'office_longit': -87.6229106, } response = self.client.post(reverse\ ('MHLogin.api.v1.views_account.profile'), data,**self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2) site = Site(name='mysite', address1='555 Pleasant Pioneer Grove', address2='Trailer Q615', city='Mountain View', state='CA', zip='94040-4104', lat=37.36876, longit=-122.081864, short_name='MSite') site.save() practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() self.user.current_site = site self.user.current_practice = practice self.user.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.profile'), data,**self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def setUpClass(cls): clean_db_datas() organization_type = create_org_type() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', mdcom_phone='8005550085', organization_type=organization_type) practice.save() cls.practice = practice user = create_user('practicemgr1', 'lin', 'xing', 'demo') cls.user = user
def setUpClass(cls): clean_db_datas() organization_type = create_org_type() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', mdcom_phone='8005550085', organization_type=organization_type) practice.save() cls.practice = practice user = create_user('practicemgr1', 'lin', 'xing', 'demo') cls.user = user
def test_getCurrentPracticeTimeZone(self): role_user = self.mhluser self.assertEqual('', getCurrentPracticeTimeZone(role_user)) practice = PracticeLocation() local_tz = 'America/New_York' practice.time_zone = "America/Detroit" role_user.current_practice = practice self.assertEqual(local_tz, getCurrentPracticeTimeZone(role_user)) practice.time_zone = None role_user.current_practice = practice self.assertEqual('', getCurrentPracticeTimeZone(role_user))
def test_getCurrentPracticeTimeZone(self): role_user = self.mhluser self.assertEqual('', getCurrentPracticeTimeZone(role_user)) practice = PracticeLocation() local_tz = 'America/New_York' practice.time_zone = "America/Detroit" role_user.current_practice = practice self.assertEqual(local_tz, getCurrentPracticeTimeZone(role_user)) practice.time_zone = None role_user.current_practice = practice self.assertEqual('', getCurrentPracticeTimeZone(role_user))
def setUpClass(cls): clean_db_datas() cls.user = create_user('practicemgr1', 'lin', 'xing', 'demo', '', '', '', '',) group = CallGroup(description='test', team='team') group.save() cls.group = group practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() practice.call_groups.add(group) cls.practice = practice
def setUp(self): clean_db_datas() org_setting = OrganizationSetting() org_setting.save() org_type = OrganizationType(name="Test Org Type", organization_setting=org_setting, is_public=True) org_type.save() self.org = PracticeLocation( practice_name="Test1", practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.org.organization_type = org_type self.org.save() for i in range(10): user_name = "".join(["Staff1_", str(i)]) first_name = "".join(["Test1_", str(i)]) user = create_user(user_name, first_name, 'S', 'demo', uklass=OfficeStaff) self.org_staff.append(user) # IntegrityError: column username is not unique # provider_name = "".join(["Pravider1_", str(i)]) # pro = create_user(provider_name, 'Provider', 'P', 'demo', uklass=Provider) # self.org_providers.append(pro) self.staff = create_user("Staff2", 'Test2', 'S', 'demo', uklass=OfficeStaff) self.staff.save() self.provider = create_user("Pravider2", 'Provider', 'P', 'demo', uklass=Provider) self.provider.save()
def setUp(self): clean_db_datas() org_setting = OrganizationSetting() org_setting.save() org_type = OrganizationType(name="Test Org Type", organization_setting=org_setting, is_public=True) org_type.save() self.org = PracticeLocation( practice_name="Test1", practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit= -122.081864) self.org.organization_type = org_type self.org.save() for i in range(10): user_name = "".join(["Staff1_", str(i)]) first_name = "".join(["Test1_", str(i)]) user = create_user(user_name, first_name, 'S', 'demo', uklass=OfficeStaff) self.org_staff.append(user) # IntegrityError: column username is not unique # provider_name = "".join(["Pravider1_", str(i)]) # pro = create_user(provider_name, 'Provider', 'P', 'demo', uklass=Provider) # self.org_providers.append(pro) self.staff = create_user("Staff2", 'Test2', 'S', 'demo', uklass=OfficeStaff) self.staff.save() self.provider = create_user("Pravider2", 'Provider', 'P', 'demo', uklass=Provider) self.provider.save()
def ct_practice(name, organization_type): """ create test practice now this is also as organization """ practices = PracticeLocation.objects.filter(practice_name=name) if practices: return practices[0] practice = PracticeLocation(practice_name='name', practice_longit='0.1', practice_lat='0.0', mdcom_phone='8005550085', organization_type=organization_type) practice.save() return practice
def ct_practice(name, organization_type): """ create test practice now this is also as organization """ practices = PracticeLocation.objects.filter(practice_name=name) if practices: return practices[0] practice = PracticeLocation(practice_name='name', practice_longit='0.1', practice_lat='0.0', mdcom_phone='8005550085', organization_type=organization_type) practice.save() return practice
def setUp(self): PracticeLocation.objects.all().delete() self.practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.practice.save() self.user_datas = [ {"username":"******", "first_name":"bill", "last_name":"blazejowsky", "password":"******", "addr":"Ocean Avenue","addr2":"Ocean Avenue", "city":"Carmel", "state":"CA", "zipcode":"93921", "uklass":OfficeStaff}, {"username":"******", "first_name":"bill1", "last_name":"blazejowsky1", "password":"******", "addr":"Ocean Avenue","addr2":"Ocean Avenue", "city":"Carmel", "state":"CA", "zipcode":"93921", "uklass":Provider}, {"username":"******", "first_name":"bill2", "last_name":"blazejowsky2", "password":"******", "addr":"Ocean Avenue","addr2":"Ocean Avenue", "city":"Carmel", "state":"CA", "zipcode":"93921", "uklass":Broker}, ] for user in self.user_datas: persistent_user = create_user(user['username'], user['first_name'], user['last_name'], user['password'], user['addr'], user['city'], user['state'], user['zipcode'], uklass=user['uklass']) persistent_user.current_practice = self.practice persistent_user.save() user['id'] = persistent_user.user.id user['lat'] = persistent_user.user.lat user['longit'] = persistent_user.user.longit
def testGetDComNumber(self): user = create_user(get_random_username(), "tian", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff) user.mdcom_phone = '9001234123' user.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() mgr = Office_Manager(user=user, practice=practice, manager_role=2) mgr.save() response = self.client.get(reverse\ ('MHLogin.api.v1.views_account.getDComNumber'), **self.extra) self.assertEqual(response.status_code, 200, response.status_code) msg = json.loads(response.content) self.assertEqual(len(msg), 2)
def test_isMultiCallGroupManager(self): #init practice and call group call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() practice.call_groups.add(call_group) user = create_user('user1', 'us', 'er', 'demo') #only mhluser call method result = isMultiCallGroupManager(user, practice.id, call_group.id) self.assertEqual(result, False) #staff call method staff = OfficeStaff(user=user) staff.save() result = isMultiCallGroupManager(user, call_group.id, practice.id) self.assertEqual(result, False) practice2 = PracticeLocation( practice_name='test2', practice_longit='0.1', practice_lat='0.0', ) practice2.save() practice2.call_groups.add(call_group) #manager call method staff.practices.add(practice) staff.save() manager = Office_Manager(user=staff, practice=practice, manager_role=1) manager.save() result = isMultiCallGroupManager(user, call_group.id, practice.id) self.assertEqual(result, True) #manager with specialty call method specialty_name = 'Specialty A' specialty1 = Specialty() specialty1.name = specialty_name specialty1.practice_location = practice specialty1.number_selection = 3 specialty1.save() specialty1.call_groups.add(call_group) manager2 = Office_Manager(user=staff, practice=practice2, manager_role=1) manager2.save() result = isMultiCallGroupManager(user, call_group.id, practice.id) self.assertEqual(result, True)
def test_display_scheduler_nopractice(self): dataEmpty = {} staff = OfficeStaff(user=self.user) staff.save() staff.practices.add(self.practice) manager = Office_Manager(user=staff, practice=self.practice, manager_role=2) manager.save() practice2 = PracticeLocation(practice_name='test2', practice_longit='0.1', practice_lat='0.0',) practice2.save() manager.practice = practice2 manager.save() response = self.client.get(reverse('MHLogin.MHLCallGroups.Scheduler.'\ 'views_multicallgroup.display_scheduler', args=(practice2.id, 0)), data=dataEmpty) self.assertEqual(response.status_code, 200) self.assertTemplateUsed(response, 'error_multicallgroup.html')
def setUp(self): clean_db_datas() OrganizationType.objects.all().delete() org_setting = OrganizationSetting() org_setting.save() self.org_type = OrganizationType(name="Test Org Type1", organization_setting=org_setting, is_public=True) # TODO: issue 2030, reserved id's is a hazardous approach, the UT's # were working with SQLlite but not with MySQL, DB engines recycle # id's differently and we should not rely on reserved id fields. This # should be addressed in a separate Redmine as model changes may occur. self.org_type.id = RESERVED_ORGANIZATION_TYPE_ID_PRACTICE self.org_type.save() self.organization = create_organization() self.organization = PracticeLocation( practice_name=get_random_username(), practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.organization.save() self.admin = create_user('admin', 'Morris', 'Kelly', 'demo', uklass=Administrator) staff = create_user('practicemgr1', 'Practice', 'Mgr', 'demo', uklass=OfficeStaff) staff.practices.add(self.organization) staff.save() self.manager = Office_Manager(user=staff, practice=self.organization, manager_role=1) self.manager.save()
def create_organization_not_member(org_type=None): org_setting = OrganizationSetting() org_setting.save() org_type = OrganizationType(name="Test Org Type", organization_setting=org_setting, is_public=True) organization_not_member = PracticeLocation( practice_name="Test2", practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) if org_type: organization_not_member.organization_type = org_type organization_not_member.save() return organization_not_member
def test_getCurrentTimeZoneForUser(self): tz = settings.TIME_ZONE self.assertEqual(tz, getCurrentTimeZoneForUser(None)) self.mhluser.time_zone = None self.assertEqual(tz, getCurrentTimeZoneForUser(None)) local_tz = 'America/New_York' role_user = self.mhluser practice = PracticeLocation() practice.time_zone = local_tz role_user.current_practice = practice self.assertEqual(local_tz, getCurrentTimeZoneForUser(self.mhluser, role_user)) self.assertEqual(local_tz, getCurrentTimeZoneForUser(self.mhluser, None, practice)) user_local_tz = 'America/Chicago' self.mhluser.time_zone = user_local_tz self.assertEqual(user_local_tz, getCurrentTimeZoneForUser(self.mhluser, role_user)) self.assertEqual(user_local_tz, getCurrentTimeZoneForUser(self.mhluser, None, practice))
def setUp(self): self.staff = create_user("bblazejowsky", "bill", "blazejowsky", "demo", "Ocean Avenue", "Carmel", "CA", "93921", uklass=OfficeStaff) PracticeLocation.objects.all().delete() self.practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) self.practice.save()
def test_canAccessMultiCallGroup(self): #init practice and call group call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() practice.call_groups.add(call_group) #admin call this method admin = create_user('user-access-group2', 'us', 'er', 'demo', '', '', '', '', Administrator) result = canAccessMultiCallGroup(admin.user, call_group, practice.id) self.assertEqual(result, True) #not admin call this method user = create_user('user-access-group', 'us', 'er', 'demo') result = canAccessMultiCallGroup(user, call_group, practice.id) self.assertEqual(result, False)
def test_mail_managers(self): practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit= -122.081864) practice.save() subject = 'abc' body = 'test' sender = None result = mail_managers(practice, subject, body, sender) self.assertIsNone(result) sender = '*****@*****.**' result = mail_managers(practice, subject, body, sender) self.assertIsNone(result)
def test_mail_managers(self): practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) practice.save() subject = 'abc' body = 'test' sender = None result = mail_managers(practice, subject, body, sender) self.assertIsNone(result) sender = '*****@*****.**' result = mail_managers(practice, subject, body, sender) self.assertIsNone(result)
def testSetOfficeStaffResultList(self): # create office staff staff = create_office_staff(get_random_username(), "staff", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff) staff2 = create_office_staff(get_random_username(), "nurse", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff) nurse = Nurse(user=staff2) nurse.save() staff3 = create_office_staff(get_random_username(), "maneger", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff) mgr = Office_Manager(user=staff3) practice = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864) practice.save() mgr.manager_role = 1 mgr.practice = practice mgr.save() mhlu = create_user(get_random_username(), "mhluser", "thj", "demo", "555 Bryant St.", "Palo Alto", "CA", "") mhlu.mdcom_phone = '9002000001' mhlu.save() self.assertEqual(0, len(setOfficeStaffResultList([])), 'test failed for setOfficeStaffResultList null') self.assertEqual(1, len(setOfficeStaffResultList([staff])), 'test failed for setOfficeStaffResultList staff') # self.assertEqual(1, len(setOfficeStaffResultList([nurse])), #'test failed for setOfficeStaffResultList nurse') self.assertEqual(1, len(setOfficeStaffResultList([mgr])), 'test failed for setOfficeStaffResultList mgr') self.assertEqual(3, len(setOfficeStaffResultList([staff, nurse.user, mgr])), 'test failed for setOfficeStaffResultList') self.assertEqual(3, len(setOfficeStaffResultList([staff, nurse.user, mgr], staff)), 'test failed for setOfficeStaffResultList')
def setUp(self): clean_db_datas() org_setting = OrganizationSetting(can_have_physician=True) org_setting.save() self.org_setting = org_setting org_type = OrganizationType(name="Test Org Type", organization_setting=org_setting, is_public=True) org_type.save() self.org_type = org_type practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0', organization_type=org_type, organization_setting=org_setting,) practice.save() self.practice = practice user = create_user('admin', 'Morris', 'Kelly', 'demo', uklass=Administrator) user.save() self.client.post('/login/', {'username': user.user.username, 'password': '******'})
def setUpClass(cls): clean_db_datas() cls.user = create_user('practicemgr1', 'lin', 'xing', 'demo') practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() practice1 = PracticeLocation(practice_name='test1', practice_longit='0.1', practice_lat='0.0',) practice1.save() OrganizationRelationship.objects.create(organization=practice,\ parent=practice1,create_time=int(time.time()),billing_flag=True) cls.practice = practice cls.practice1 = practice1 staff = OfficeStaff() staff.user = cls.user staff.office_lat = 0.0 staff.office_longit = 0.0 staff.current_practice = practice staff.save() staff.practices.add(practice) mgr = Office_Manager(user=staff, practice=practice, manager_role=2) mgr.save()
def test_get_practices_by_position(self): lat = 0.0 longit = 0.0 distance = None result = get_practices_by_position(lat, longit, distance) self.assertEqual(len(result), 0) lat = 12.1 longit = 12.0 distance = 2 result = get_practices_by_position(lat, longit, distance) self.assertEqual(len(result), 0) try: org_type = OrganizationType.objects.get( pk=RESERVED_ORGANIZATION_TYPE_ID_PRACTICE) except OrganizationType.DoesNotExist: setting = OrganizationSetting() setting.save() org_type = OrganizationType( pk=RESERVED_ORGANIZATION_TYPE_ID_PRACTICE, organization_setting=setting) org_type.save() location = PracticeLocation( practice_address1='555 Pleasant Pioneer Grove', practice_address2='Trailer Q615', practice_city='Mountain View', practice_state='CA', practice_zip='94040-4104', practice_lat=37.36876, practice_longit=-122.081864, organization_type=org_type) location.save() lat = 37 longit = -122.0 distance = None result = get_practices_by_position(lat, longit, distance) self.assertEqual(len(result), 1)
def setUpClass(cls): clean_db_datas() cls.user = create_user('practicemgr1', 'lin', 'xing', 'demo') cls.user1 = create_user('practicemgr11', 'y', 'p', 'demo') cls.broker = create_user("broker1", "bro", "1", "demo", "123 Main St.", "Phoenix", "AZ", uklass=Broker) practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() practice1 = PracticeLocation(practice_name='test1', practice_longit='0.1', practice_lat='0.0',) practice1.save() OrganizationRelationship.objects.create(organization=practice,\ parent=practice1, create_time=int(time.time()), billing_flag=True) cls.practice = practice staff = OfficeStaff() staff.user = cls.user staff.office_lat = 0.0 staff.office_longit = 0.0 staff.current_practice = practice staff.save() staff.practices.add(practice) cls.provider = Provider(user=cls.user1, office_lat=0.0, office_longit=0.0, current_practice = practice) cls.provider.mdcom_phone = '5948949899' cls.provider.save() # mgr = Office_Manager(user=staff, practice=practice, manager_role=2) mgr.save()
def setUpClass(cls): clean_db_datas() cls.user = create_user('practicemgr1', 'lin', 'xing', 'demo') cls.user1 = create_user('practicemgr11', 'y', 'p', 'demo') cls.broker = create_user("broker1", "bro", "1", "demo", "123 Main St.", "Phoenix", "AZ", uklass=Broker) practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() practice1 = PracticeLocation( practice_name='test1', practice_longit='0.1', practice_lat='0.0', ) practice1.save() OrganizationRelationship.objects.create(organization=practice,\ parent=practice1, create_time=int(time.time()), billing_flag=True) cls.practice = practice staff = OfficeStaff() staff.user = cls.user staff.office_lat = 0.0 staff.office_longit = 0.0 staff.current_practice = practice staff.save() staff.practices.add(practice) cls.provider = Provider(user=cls.user1, office_lat=0.0, office_longit=0.0, current_practice=practice) cls.provider.mdcom_phone = '5948949899' cls.provider.save() # mgr = Office_Manager(user=staff, practice=practice, manager_role=2) mgr.save()
def test_getPenddings(self): request = HttpRequest() user = create_user('practicemgr1', 'lin', 'xing', 'demo') call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation(practice_name='test', practice_longit='0.1', practice_lat='0.0',) practice.save() from_user = create_user('from user', 'lin', 'xing', 'demo') to_user = create_user('to user', 'lin', 'xing', 'demo') to_user = Provider(username='******', first_name='tes3', last_name="meister3", email='*****@*****.**', user=to_user, office_lat=0.0, office_longit=0.0) to_user.save() #0 pending find request.user = to_user response = getPenddings(request) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 0) #1 pending find pend = CallGroupMemberPending(from_user=from_user, to_user=to_user, practice=practice, call_group=call_group, accept_status=0, created_time=datetime.datetime.now()) pend.save() request.user = to_user response = getPenddings(request) self.assertEqual(response.status_code, 200) msg = json.loads(response.content) self.assertEqual(len(msg), 1)
def test_getCurrentTimeZoneForUser(self): tz = settings.TIME_ZONE self.assertEqual(tz, getCurrentTimeZoneForUser(None)) self.mhluser.time_zone = None self.assertEqual(tz, getCurrentTimeZoneForUser(None)) local_tz = 'America/New_York' role_user = self.mhluser practice = PracticeLocation() practice.time_zone = local_tz role_user.current_practice = practice self.assertEqual(local_tz, getCurrentTimeZoneForUser(self.mhluser, role_user)) self.assertEqual( local_tz, getCurrentTimeZoneForUser(self.mhluser, None, practice)) user_local_tz = 'America/Chicago' self.mhluser.time_zone = user_local_tz self.assertEqual(user_local_tz, getCurrentTimeZoneForUser(self.mhluser, role_user)) self.assertEqual( user_local_tz, getCurrentTimeZoneForUser(self.mhluser, None, practice))
def test_canAccessMultiCallGroup(self): #init practice and call group call_group = CallGroup(description='test', team='team') call_group.save() practice = PracticeLocation( practice_name='test', practice_longit='0.1', practice_lat='0.0', ) practice.save() practice.call_groups.add(call_group) #admin call this method admin = create_user('user-access-group2', 'us', 'er', 'demo', '', '', '', '', Administrator) result = canAccessMultiCallGroup(admin.user, call_group, practice.id) self.assertEqual(result, True) #not admin call this method user = create_user('user-access-group', 'us', 'er', 'demo') result = canAccessMultiCallGroup(user, call_group, practice.id) self.assertEqual(result, False)