Example #1
0
	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 = create_organization()

		user1 = create_user(get_random_username(), 'Test1', 'S', 'demo')
		staff1 = OfficeStaff()
		staff1.user = user1
		staff1.office_lat = 0.0
		staff1.office_longit = 0.0
		staff1.current_practice = self.org
		staff1.save()
		staff1.practices.add(self.org)
		self.manager = Office_Manager(user=staff1, practice=self.org, manager_role=1)

		user = create_user(get_random_username(), 'Test1', 'S', 'demo')
		staff = OfficeStaff()
		staff.user = user
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.save()
		self.staff = staff
		
		self.provider = create_user("Pravider2", 'Provider', 'P', 'demo', uklass=Provider)
		self.provider.save()
Example #2
0
    def test_can_user_manage_this_org(self):
        user = create_user(get_random_username(), 'yang', 'peng', 'demo')
        admin = Administrator(user=user)
        admin.save()
        self.assertTrue(
            can_user_manage_this_org(self.organization.id,
                                     admin.user.id)["can_manage_org"])

        self.user = create_user(get_random_username(), 'yang', 'peng', 'demo')
        staff = OfficeStaff()
        staff.user = self.user
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.current_practice = self.organization
        staff.save()
        staff.practices.add(self.organization)
        self.assertFalse(
            can_user_manage_this_org(self.organization.id,
                                     staff.user.id)["can_manage_org"])

        Office_Manager.objects.create(user=staff,
                                      practice=self.organization,
                                      manager_role=1)
        self.assertTrue(
            can_user_manage_this_org(self.organization.id,
                                     staff.user.id)["can_manage_org"])
Example #3
0
    def setUp(self):
        clean_db_datas()
        self.user = create_user(get_random_username(), 'yang', 'peng', 'demo')
        self.organization = create_organization()
        self.parent_organization = create_parent_organization()
        self.organization.save_parent_org(parent_org=self.parent_organization)
        staff = OfficeStaff()
        staff.user = self.user
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.current_practice = self.organization
        staff.save()
        staff.practices.add(self.organization)

        mgr = Office_Manager(user=staff,
                             practice=self.organization,
                             manager_role=2)
        mgr.save()

        self.provider = create_user(get_random_username(),
                                    "doc",
                                    "holiday",
                                    "demo",
                                    uklass=Provider)
        self.provider.current_practice = self.parent_organization
        self.provider.save()
        self.provider.practices.add(self.parent_organization)
Example #4
0
	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 = create_organization()

		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')
			self.staff = OfficeStaff()
			self.staff.user = user
			self.staff.office_lat = 0.0
			self.staff.office_longit = 0.0
			self.staff.save()
			self.org_staff.append(self.staff)

			# 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.user = create_user(get_random_username(), 'staff', 'S', 'demo')
		staff = OfficeStaff()
		staff.user = self.user
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.save()
		self.staff = staff
		self.provider = create_user("Pravider2", 'Provider', 'P', 'demo', uklass=Provider)
		self.provider.save()
Example #5
0
    def testSetSubProviderResultList(self):
        provider = create_user(get_random_username(),
                               "provider",
                               "thj",
                               "demo",
                               "555 Bryant St.",
                               "Palo Alto",
                               "CA",
                               "",
                               uklass=Provider)
        provider.save()
        nppa = NP_PA(user=provider)
        nppa.save()

        provider1 = create_user(get_random_username(),
                                "physician",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider1.save()
        phy = Physician(user=provider1)
        phy.specialty = 'AC'
        phy.save()

        self.assertEqual(0, len(setSubProviderResultList([], phy)),
                         'test failed for setSubProviderResultList')
        self.assertEqual(1, len(setSubProviderResultList([nppa], phy)),
                         'test failed for setSubProviderResultList')
        self.assertEqual(2, len(setSubProviderResultList([nppa, phy])),
                         'test failed for setSubProviderResultList')
Example #6
0
    def setUp(self):
        clean_db_datas()
        self.temp_CALL_ENABLE = settings.CALL_ENABLE
        self.temp_SEND_MAXIMUM_PER_DAY = settings.SEND_MAXIMUM_PER_DAY
        self.temp_SEND_CODE_WAITING_TIME = settings.SEND_CODE_WAITING_TIME
        self.temp_FAIL_VALIDATE_MAXIMUM_PER_HOUR = settings.FAIL_VALIDATE_MAXIMUM_PER_HOUR
        self.temp_VALIDATE_LOCK_TIMEE = settings.VALIDATE_LOCK_TIME

        settings.SEND_MAXIMUM_PER_DAY = 5
        settings.SEND_CODE_WAITING_TIME = 2
        settings.FAIL_VALIDATE_MAXIMUM_PER_HOUR = 3
        settings.VALIDATE_LOCK_TIME = 2

        self.provider = create_user(get_random_username(),
                                    "yang",
                                    "peng",
                                    "demo",
                                    uklass=Provider)
        self.provider.mobile_phone = '9563322588'
        self.provider.mobile_confirmed = True
        self.provider.email = '*****@*****.**'
        self.provider.email_confirmed = True
        self.provider.save()

        self.organization = create_organization()
        self.user = create_user(get_random_username(), "yang", "peng", "demo")
        staff = OfficeStaff()
        staff.user = self.user
        staff.pager = '9985622456'
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.current_practice = self.organization
        staff.save()
        self.staff = staff

        self.user_bro = create_user(get_random_username(), "yang", "peng",
                                    "demo")
        self.broker = Broker()
        self.broker.pager = '9985622456'
        self.broker.user = self.user_bro
        self.broker.office_lat = 0.0
        self.broker.office_longit = 0.0
        self.broker.save()

        self.user = create_user(get_random_username(), "yang", "peng", "demo")
        self.user.mobile_phone = '9563322488'
        self.user.mobile_confirmed = True
        self.user.email_confirmed = True
        self.user.save()
Example #7
0
	def testDeleteMessage(self):
		self.user = create_user(get_random_username(), "mhluser", "thj", "demo", 
						"555 Bryant St.", "Palo Alto", "CA", "")
		self.user.mdcom_phone = '9002000001'
		self.user.save()
		sender = self.user
		msg = Message(sender=sender, sender_site=None, subject="pandas")
		msg.urgent = False
		msg.message_type = 'NM'
		msg.callback_number = '2561234561'
		msg.save()
		body = "i am indeed a talking panda. how are you?"
		msg_body = MessageBody(message=msg, body=body)
		msg_body.save()

		msgbus = MessageBodyUserStatus()
		msgbus.user = self.user
		msgbus.msg_body = msg_body
		msgbus.save()
		self.msgbus = msgbus

		self.extra['HTTP_MDCOM_USER_UUID'] = self.user.uuid

		message_id = msg.uuid
		response = self.client.get(reverse(
			'MHLogin.api.v1.views_messaging.deleteMessage', 
				args=(message_id,)), **self.extra)
		self.assertEqual(response.status_code, 200, response.status_code)
Example #8
0
	def testGetRefer(self):
		user = create_user('practicemgr','yang','peng','demo')
		msg = Message(sender=user, sender_site = None, subject="pandas")
		msg.urgent = False
		msg.callback_number = 2561234561
		msg.save()
		refer = MessageRefer()
		refer.message = msg
		refer.gender = 'M'
		refer.status = 'AC'
		refer.phone_number = 8529631475
		refer.alternative_phone_number = 1472583695
		refer.home_phone_number = 8472583695
		refer.save()
		refer_list=[refer]
		self.assertEqual(get_refer(refer_list),refer.status)
		with self.assertRaises(TypeError):get_refer(refer)

#class Get_attachment_filenameTest(TestCase):
#	def test_get_attachment_filename(self):
#		user = create_user('practicemgr','yang','peng','demo')
#		msg = Message(sender=user, sender_site = None, subject="pandas")
#		msg.urgent = False
#		msg.callback_number = 2561234561
#		msg.save()
#		request = generateHttpRequest()
#		msgCon = MessageContent()
#		msgCon.message=msg
#		msgCon.save()
#		attachment = MessageAttachment(msgCon)
#		attachment.size = '12'
#		attachment.save()
#		
#		_get_attachment_filename(request,msg)
Example #9
0
	def test_get_orgs_I_can_manage(self):
		user = create_user(get_random_username(),'yang','peng','demo')
		admin = Administrator(user=user)
		admin.save()
		org_ids_excluded = self.organization.id
		self.assertEqual(len(get_orgs_I_can_manage(
						admin.id,org_id_excluded=org_ids_excluded)),0)
Example #10
0
    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
Example #11
0
 def testBrokerProfileView(self):
     user = create_user('practicemgr1', 'lin', 'xing', 'demo')
     broker = Broker()
     broker.user = user
     broker.office_lat = 0.0
     broker.office_longit = 0.0
     broker.save()
     self.assertEqual(brokerProfileView(broker)['username'], user.username)
Example #12
0
 def test_can_we_remove_this_org(self):
     user = create_user(get_random_username(), 'yang', 'peng', 'demo')
     admin = Administrator(user=user)
     admin.save()
     self.assertTrue(
         can_we_remove_this_org(self.organization.id, admin.user.id))
     self.assertFalse(
         can_we_remove_this_org(admin.user.id, self.organization.id))
Example #13
0
	def test_can_user_manage_org_module(self):
		user = create_user(get_random_username(),'yang','peng','demo')
		admin = Administrator(user=user)
		self.assertTrue(can_user_manage_org_module(admin.user.id))

		user1 = create_user(get_random_username(),'yang','peng','demo')
		staff = OfficeStaff()
		staff.user = user1
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.current_practice = self.organization
		staff.save()
		staff.practices.add(self.organization)
		self.assertFalse(can_user_manage_org_module(staff.user.id)["can_manage_org"])

		Office_Manager.objects.create(user=staff, practice=self.organization, manager_role=1)
		self.assertTrue(can_user_manage_org_module(staff.user.id)["can_manage_org"])
Example #14
0
	def testProviderInfo(self):
		user = create_user(get_random_username(), "tian1", "thj1", "demo", "555 Bryant St.",
								"Palo Alto", "CA", uklass=Provider)
		user.mdcom_phone = '9001234124'
		user.save()

		response = self.client.post(reverse('MHLogin.api.v1.views_users.providerInfo', args=(user.id,)), **self.extra)
		self.assertEqual(response.status_code, 200, response.status_code)
Example #15
0
 def test_get_orgs_I_can_manage(self):
     user = create_user(get_random_username(), 'yang', 'peng', 'demo')
     admin = Administrator(user=user)
     admin.save()
     org_ids_excluded = self.organization.id
     self.assertEqual(
         len(
             get_orgs_I_can_manage(admin.id,
                                   org_id_excluded=org_ids_excluded)), 0)
Example #16
0
	def setUp(self):
		clean_db_datas()
		self.temp_CALL_ENABLE = settings.CALL_ENABLE
		self.temp_SEND_MAXIMUM_PER_DAY = settings.SEND_MAXIMUM_PER_DAY
		self.temp_SEND_CODE_WAITING_TIME = settings.SEND_CODE_WAITING_TIME
		self.temp_FAIL_VALIDATE_MAXIMUM_PER_HOUR = settings.FAIL_VALIDATE_MAXIMUM_PER_HOUR
		self.temp_VALIDATE_LOCK_TIMEE = settings.VALIDATE_LOCK_TIME

		settings.SEND_MAXIMUM_PER_DAY = 5
		settings.SEND_CODE_WAITING_TIME = 2
		settings.FAIL_VALIDATE_MAXIMUM_PER_HOUR = 3
		settings.VALIDATE_LOCK_TIME = 2

		self.provider = create_user(get_random_username(), "yang", "peng", "demo",uklass=Provider)
		self.provider.mobile_phone = '9563322588'
		self.provider.mobile_confirmed = True
		self.provider.email = '*****@*****.**'
		self.provider.email_confirmed =True
		self.provider.save()
		
		self.organization = create_organization()
		self.user = create_user(get_random_username(), "yang", "peng", "demo")
		staff = OfficeStaff()
		staff.user = self.user
		staff.pager = '9985622456'
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.current_practice = self.organization
		staff.save()
		self.staff = staff
		
		self.user_bro = create_user(get_random_username(), "yang", "peng", "demo")
		self.broker = Broker()
		self.broker.pager = '9985622456'
		self.broker.user = self.user_bro
		self.broker.office_lat = 0.0
		self.broker.office_longit = 0.0
		self.broker.save()
		
		self.user = create_user(get_random_username(), "yang", "peng", "demo")
		self.user.mobile_phone = '9563322488'
		self.user.mobile_confirmed = True
		self.user.email_confirmed =True
		self.user.save()
Example #17
0
	def testSetSubProviderResultList(self):
		provider = create_user(get_random_username(), "provider", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider.save()
		nppa = NP_PA(user=provider)
		nppa.save()

		provider1 = create_user(get_random_username(), "physician", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider1.save()
		phy = Physician(user=provider1)
		phy.specialty = 'AC'
		phy.save()

		self.assertEqual(0, len(setSubProviderResultList([], phy)), 
						'test failed for setSubProviderResultList')
		self.assertEqual(1, len(setSubProviderResultList([nppa], phy)), 
						'test failed for setSubProviderResultList')
		self.assertEqual(2, len(setSubProviderResultList([nppa, phy])), 
						'test failed for setSubProviderResultList')
Example #18
0
    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 = create_organization()

        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')
            self.staff = OfficeStaff()
            self.staff.user = user
            self.staff.office_lat = 0.0
            self.staff.office_longit = 0.0
            self.staff.save()
            self.org_staff.append(self.staff)

            # 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.user = create_user(get_random_username(), 'staff', 'S', 'demo')
        staff = OfficeStaff()
        staff.user = self.user
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.save()
        self.staff = staff
        self.provider = create_user("Pravider2",
                                    'Provider',
                                    'P',
                                    'demo',
                                    uklass=Provider)
        self.provider.save()
Example #19
0
	def setUp(self):
		clean_db_datas()
		self.user = create_user(get_random_username(),'yang','peng','demo')
		self.organization = create_organization()
		self.parent_organization = create_parent_organization()
		self.organization.save_parent_org(parent_org=self.parent_organization)
		staff = OfficeStaff()
		staff.user = self.user
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.current_practice = self.organization
		staff.save()
		staff.practices.add(self.organization)

		mgr = Office_Manager(user=staff, practice=self.organization, manager_role=2)
		mgr.save()

		self.provider = create_user(get_random_username(), "doc", "holiday", "demo", uklass=Provider)
		self.provider.current_practice = self.parent_organization
		self.provider.save()
		self.provider.practices.add(self.parent_organization)
Example #20
0
    def setUp(self):
        clean_db_datas()
        self.user = create_user(get_random_username(), "yang", "peng", "demo")
        self.user.mobile_phone = 9563322588
        self.user.mobile_confirmed = True
        self.user.email_confirmed = True
        self.user.save()

        self.provider = Provider(user=self.user,
                                 office_lat=0.0,
                                 office_longit=0.0,
                                 pager='8001234567')
        self.provider.save()
Example #21
0
    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 = create_organization()

        user1 = create_user(get_random_username(), 'Test1', 'S', 'demo')
        staff1 = OfficeStaff()
        staff1.user = user1
        staff1.office_lat = 0.0
        staff1.office_longit = 0.0
        staff1.current_practice = self.org
        staff1.save()
        staff1.practices.add(self.org)
        self.manager = Office_Manager(user=staff1,
                                      practice=self.org,
                                      manager_role=1)

        user = create_user(get_random_username(), 'Test1', 'S', 'demo')
        staff = OfficeStaff()
        staff.user = user
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.save()
        self.staff = staff

        self.provider = create_user("Pravider2",
                                    'Provider',
                                    'P',
                                    'demo',
                                    uklass=Provider)
        self.provider.save()
Example #22
0
 def testGetMessageLogic(self):
     request = generateHttpRequest()
     user = create_user('yangpeng', 'yang', 'peng', 'demo')
     msg = Message(sender=user, sender_site=None, subject="pandas")
     msg.urgent = False
     msg.message_type = 'NM'
     msg.callback_number = '2561234561'
     msg.save()
     message_id = msg.uuid
     request.method = "get"
     response = getMessageLogic(request, message_id)
     self.assertEqual(json.loads(response.content)['errno'], 'GE002')
     request.method = "POST"
     with self.assertRaises(Http404):
         getMessageLogic(request, message_id)
Example #23
0
 def testOfficeStaffProfileView(self):
     user = create_user('practicemgr1', 'lin', 'xing', 'demo')
     staff = OfficeStaff()
     staff.user = user
     staff.office_lat = 0.0
     staff.office_longit = 0.0
     staff.save()
     self.assertEqual(
         officeStaffProfileView(staff)['photo'],
         '/media/images/photos/staff_icon.jpg')
     nurse = Nurse(user=staff)
     nurse.save()
     self.assertEqual(
         officeStaffProfileView(nurse.user)['photo'],
         '/media/images/photos/nurse.jpg')
Example #24
0
	def setUp(self):
		clean_db_datas()
		self.user = create_user(get_random_username(),'yang','peng','demo')
		org_setting = OrganizationSetting(display_in_contact_list_tab=True)
		org_setting.save()
		self.org_type = OrganizationType(name="Test Org Type", organization_setting=org_setting, is_public=True)
		self.org_type.save()
		self.org = create_organization()
		staff = OfficeStaff()
		staff.user = self.user
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.save()
		self.staff = staff

		self.org_members = []
		self.org_members = create_multiple_organizations(10)
Example #25
0
	def test_get_orgs_I_can_manage_user(self):
		user = create_user('yangpeng','yang','peng','demo')
		org_setting = OrganizationSetting()
		org_setting.save()
		org_type = OrganizationType(name="Test Org Type", \
				organization_setting=org_setting, is_public=True)
		org_type.save()
		staff = OfficeStaff()
		staff.user = user
		staff.office_lat = 0.0
		staff.office_longit = 0.0
		staff.current_practice = self.organization
		staff.save()
		staff.practices.add(self.organization)
		mgr = Office_Manager(user=staff, practice=self.organization, manager_role=2)
		mgr.save()
		get_orgs_I_can_manage(mgr.id,parent_id=self.parent_organization.id,\
				org_type_id=org_type.id,clear_no_type_org=True)
Example #26
0
    def setUp(self):
        clean_db_datas()
        self.user = create_user(get_random_username(), 'yang', 'peng', 'demo')
        org_setting = OrganizationSetting(display_in_contact_list_tab=True)
        org_setting.save()
        self.org_type = OrganizationType(name="Test Org Type",
                                         organization_setting=org_setting,
                                         is_public=True)
        self.org_type.save()
        self.org = create_organization()
        staff = OfficeStaff()
        staff.user = self.user
        staff.office_lat = 0.0
        staff.office_longit = 0.0
        staff.save()
        self.staff = staff

        self.org_members = []
        self.org_members = create_multiple_organizations(10)
Example #27
0
	def testPageUser(self):
		response = self.client.get(
			reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0,)), **self.extra)
		self.assertEqual(response.content, err_GE002().content, response.status_code)

		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0,)), **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'GE031', response.status_code)

		data = {'number': '2561234566'}
		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0,)), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'GE010', response.status_code)

		provider1 = create_user(get_random_username(), 
			"provider_first", "provider_last", "demo", "555 Bryant St.",
				"Palo Alto", "CA", "94306", uklass=Provider)
		provider1.address2 = 'suzhou china'
		provider1.user.save()
		provider1.save()
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.pageUser',
			args=(provider1.id,)), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'TE002', response.status_code)

		provider1.pager = 2561234567
		provider1.save()
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.pageUser', 
			args=(provider1.id,)), data, **self.extra)
		self.assertEqual(response.content, HttpJSONSuccessResponse().content, response.status_code)

		staff1 = create_office_staff(get_random_username(), "staff_first1", "staff_last1", 
			"demo", "suzhou china", "suzhou", "AB", "25011", uklass=OfficeStaff)
		staff1.save()
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.pageUser', 
			args=(staff1.user.id,)), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'TE002', response.status_code)

		staff1.pager = 2561234568
		staff1.save()
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.pageUser',
			args=(staff1.user.id,)), data, **self.extra)
		self.assertEqual(response.content, HttpJSONSuccessResponse().content, response.status_code)
Example #28
0
 def test_get_orgs_I_can_manage_user(self):
     user = create_user('yangpeng', 'yang', 'peng', 'demo')
     org_setting = OrganizationSetting()
     org_setting.save()
     org_type = OrganizationType(name="Test Org Type", \
       organization_setting=org_setting, is_public=True)
     org_type.save()
     staff = OfficeStaff()
     staff.user = user
     staff.office_lat = 0.0
     staff.office_longit = 0.0
     staff.current_practice = self.organization
     staff.save()
     staff.practices.add(self.organization)
     mgr = Office_Manager(user=staff,
                          practice=self.organization,
                          manager_role=2)
     mgr.save()
     get_orgs_I_can_manage(mgr.id,parent_id=self.parent_organization.id,\
       org_type_id=org_type.id,clear_no_type_org=True)
Example #29
0
	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')
Example #30
0
	def testMarkMessageRead(self):

		response = self.client.get(reverse(
			'MHLogin.api.v1.views_messaging.markMessageRead'), **self.extra)
		self.assertEqual(response.content, err_GE002().content, response.status_code)

		self.user = create_user(get_random_username(), "mhluser", "thj", "demo", 
						"555 Bryant St.", "Palo Alto", "CA", "")
		self.user.mdcom_phone = '9002000001'
		self.user.save()
		sender = self.user
		msg = Message(sender=sender, sender_site=None, subject="pandas")
		msg.urgent = False
		msg.message_type = 'NM'
		msg.callback_number = '2561234561'
		msg.save()
		message_id = msg.uuid
		data = {'message_ids': [message_id]}
		response = self.client.post(reverse(
			'MHLogin.api.v1.views_messaging.markMessageRead'), data, **self.extra)
		self.assertEqual(response.status_code, 200, response.status_code)
		msg = json.loads(response.content)
		self.assertEqual(len(msg), 2)
Example #31
0
    def testGetRefer(self):
        user = create_user('practicemgr', 'yang', 'peng', 'demo')
        msg = Message(sender=user, sender_site=None, subject="pandas")
        msg.urgent = False
        msg.callback_number = 2561234561
        msg.save()
        refer = MessageRefer()
        refer.message = msg
        refer.gender = 'M'
        refer.status = 'AC'
        refer.phone_number = 8529631475
        refer.alternative_phone_number = 1472583695
        refer.home_phone_number = 8472583695
        refer.save()
        refer_list = [refer]
        self.assertEqual(get_refer(refer_list), refer.status)
        with self.assertRaises(TypeError):
            get_refer(refer)


#class Get_attachment_filenameTest(TestCase):
#	def test_get_attachment_filename(self):
#		user = create_user('practicemgr','yang','peng','demo')
#		msg = Message(sender=user, sender_site = None, subject="pandas")
#		msg.urgent = False
#		msg.callback_number = 2561234561
#		msg.save()
#		request = generateHttpRequest()
#		msgCon = MessageContent()
#		msgCon.message=msg
#		msgCon.save()
#		attachment = MessageAttachment(msgCon)
#		attachment.size = '12'
#		attachment.save()
#
#		_get_attachment_filename(request,msg)
Example #32
0
	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
Example #33
0
    def testSetProviderResultList(self):
        provider = create_user(get_random_username(),
                               "nppa",
                               "thj",
                               "demo",
                               "555 Bryant St.",
                               "Palo Alto",
                               "CA",
                               "",
                               uklass=Provider)
        provider.save()
        nppa = NP_PA(user=provider)
        nppa.save()

        provider1 = create_user(get_random_username(),
                                "physician",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider1.save()
        phy = Physician(user=provider1)
        phy.specialty = 'AC'
        phy.save()

        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()

        provider2 = create_user(get_random_username(),
                                "nppa",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider2.practices.add(practice)
        provider2.current_practice = practice
        provider2.save()
        nppa2 = NP_PA(user=provider2)
        nppa2.save()

        provider3 = create_user(get_random_username(),
                                "physician",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider3.practices.add(practice)
        provider3.current_practice = practice
        provider3.save()
        phy2 = Physician(user=provider3)
        phy2.specialty = 'AC'
        phy2.save()

        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()

        provider4 = create_user(get_random_username(),
                                "nppa",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider4.sites.add(site)
        provider4.current_site = site
        provider4.save()
        nppa3 = NP_PA(user=provider4)
        nppa3.save()

        provider5 = create_user(get_random_username(),
                                "physician",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider5.sites.add(site)
        provider5.current_site = site
        provider5.save()
        phy3 = Physician(user=provider5)
        phy3.specialty = 'AC'
        phy3.save()

        self.assertEqual(0, len(setProviderResultList([])),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([nppa.user], phy.user)),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([phy.user])),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([nppa2.user])),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([phy2.user])),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([nppa3.user])),
                         'test failed for setProviderResultList')
        self.assertEqual(1, len(setProviderResultList([phy3.user])),
                         'test failed for setProviderResultList')
        self.assertEqual(
            6,
            len(
                setProviderResultList([
                    nppa.user, phy.user, nppa2.user, phy2.user, nppa3.user,
                    phy3.user
                ])), 'test failed for setProviderResultList')
Example #34
0
    def testGetUserInfo(self):
        mhlu = create_user(get_random_username(), "mhluser", "thj", "demo",
                           "555 Bryant St.", "Palo Alto", "CA", "")
        mhlu.mdcom_phone = '9002000001'
        mhlu.save()
        mhlu_id = mhlu.id

        return_data1 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/generic_128.png',
            'specialty': '',
            'mdcom_phone': '',
            'office_city': u'Palo Alto',
            'accepting_patients': False,
            'id': mhlu_id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'mhluser',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': ''
        }
        self.assertEqual(Http404, getUserInfo(mhlu_id + 1, None),
                         'test failed for getUserInfo')
        self.assertEqual(return_data1, getUserInfo(mhlu_id),
                         'test failed for getUserInfo mhluser')

        # create provider for test
        provider = create_user(get_random_username(),
                               "provider",
                               "thj",
                               "demo",
                               "555 Bryant St.",
                               "Palo Alto",
                               "CA",
                               "",
                               uklass=Provider)
        provider.mdcom_phone = '9002000002'
        provider.save()

        return_data2 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/avatar2.png',
            'specialty': 'NP/PA/Midwife',
            'mdcom_phone': u'9002000002',
            'office_city': u'Palo Alto',
            'accepting_patients': False,
            'id': provider.user.id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'provider',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': ''
        }
        self.assertEqual(return_data2, getUserInfo(provider.user.id),
                         'test failed for getUserInfo provider')

        # create physician
        provider1 = create_user(get_random_username(),
                                "physician",
                                "thj",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "",
                                uklass=Provider)
        provider1.mdcom_phone = '9002000002'
        provider1.save()
        phy = Physician(user=provider1)
        phy.specialty = 'AC'
        phy.save()
        return_data3 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/avatar2.png',
            'specialty': u'Acupuncture',
            'mdcom_phone': u'9002000002',
            'office_city': u'Palo Alto',
            'accepting_patients': True,
            'id': phy.user.user.id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'physician',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': ''
        }
        self.assertEqual(return_data3, getUserInfo(phy.user.user.id),
                         'test failed for getUserInfo physician')

        # 		create office staff
        staff = create_office_staff(get_random_username(),
                                    "staff",
                                    "thj",
                                    "demo",
                                    "555 Bryant St.",
                                    "Palo Alto",
                                    "CA",
                                    "",
                                    uklass=OfficeStaff)
        return_data4 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/staff_icon.jpg',
            'specialty': '',
            'mdcom_phone': '',
            'office_city': u'Palo Alto',
            'accepting_patients': False,
            'id': staff.user.id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'staff',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': 'Office Staff'
        }
        self.assertEqual(return_data4, getUserInfo(staff.user.id),
                         'test failed for getUserInfo staff')

        # 		create nurse
        staff2 = create_office_staff(get_random_username(),
                                     "nurse",
                                     "thj",
                                     "demo",
                                     "555 Bryant St.",
                                     "Palo Alto",
                                     "CA",
                                     "",
                                     uklass=OfficeStaff)
        nurse = Nurse(user=staff2)
        nurse.save()
        return_data5 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/nurse.jpg',
            'specialty': '',
            'mdcom_phone': '',
            'office_city': u'Palo Alto',
            'accepting_patients': False,
            'id': nurse.user.user.id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'nurse',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': 'Office Staff'
        }
        self.assertEqual(return_data5, getUserInfo(nurse.user.user.id),
                         'test failed for getUserInfo nurse')

        # 		create office staff
        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()
        return_data5 = {
            'last_name': u'thj',
            'office_address1': u'555 Bryant St.',
            'office_address2': u'',
            'photo': '/media/images/photos/staff_icon.jpg',
            'specialty': '',
            'mdcom_phone': '',
            'office_city': u'Palo Alto',
            'accepting_patients': False,
            'id': mgr.user.user.id,
            'custom_logos': get_custom_logos(mhlu_id),
            'first_name': u'maneger',
            'office_state': u'CA',
            'office_zip': u'',
            'staff_type': 'Office Manager'
        }
        self.assertEqual(return_data5, getUserInfo(mgr.user.user.id),
                         'test failed for getUserInfo maneger')
Example #35
0
	def test_can_we_remove_this_org(self):
		user = create_user(get_random_username(),'yang','peng','demo')
		admin = Administrator(user=user)
		admin.save()
		self.assertTrue(can_we_remove_this_org(self.organization.id, admin.user.id))
		self.assertFalse(can_we_remove_this_org(admin.user.id, self.organization.id))
Example #36
0
	def testSetProviderResultList(self):
		provider = create_user(get_random_username(), "nppa", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider.save()
		nppa = NP_PA(user=provider)
		nppa.save()

		provider1 = create_user(get_random_username(), "physician", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider1.save()
		phy = Physician(user=provider1)
		phy.specialty = 'AC'
		phy.save()

		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()

		provider2 = create_user(get_random_username(), "nppa", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider2.practices.add(practice)
		provider2.current_practice = practice
		provider2.save()
		nppa2 = NP_PA(user=provider2)
		nppa2.save()

		provider3 = create_user(get_random_username(), "physician", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider3.practices.add(practice)
		provider3.current_practice = practice
		provider3.save()
		phy2 = Physician(user=provider3)
		phy2.specialty = 'AC'
		phy2.save()

		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()

		provider4 = create_user(get_random_username(), "nppa", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider4.sites.add(site)
		provider4.current_site = site
		provider4.save()
		nppa3 = NP_PA(user=provider4)
		nppa3.save()

		provider5 = create_user(get_random_username(), "physician", "thj", "demo", 
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider5.sites.add(site)
		provider5.current_site = site
		provider5.save()
		phy3 = Physician(user=provider5)
		phy3.specialty = 'AC'
		phy3.save()

		self.assertEqual(0, len(setProviderResultList([])), 'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([nppa.user], phy.user)), 
						'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([phy.user])), 'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([nppa2.user])), 'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([phy2.user])), 'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([nppa3.user])), 'test failed for setProviderResultList')
		self.assertEqual(1, len(setProviderResultList([phy3.user])), 'test failed for setProviderResultList')
		self.assertEqual(6, len(setProviderResultList([nppa.user, phy.user, nppa2.user, phy2.user,
				nppa3.user, phy3.user])), 'test failed for setProviderResultList')
Example #37
0
    def testGetProviderList(self, mockgeo):
        practice1 = 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)
        practice1.save()

        practice2 = PracticeLocation(practice_name='China practice',
                                     practice_address1='jiangsu',
                                     practice_address2='beijing',
                                     practice_city='suzhou',
                                     practice_state='JS',
                                     practice_zip='94040-4104',
                                     practice_lat=37.36876,
                                     practice_longit=-122.081864)
        practice2.save()

        site1 = 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')
        site1.save()

        site2 = Site(name='doctorcom',
                     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')
        site2.save()

        provider1 = create_user("prov1",
                                "provider_first",
                                "provider_last",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "94306",
                                uklass=Provider)
        provider1.address2 = 'suzhou china'
        provider1.user.save()
        provider1.sites.add(site1)
        provider1.sites.add(site2)
        provider1.current_site = site1
        provider1.practices.add(practice1)
        provider1.practices.add(practice2)
        provider1.current_practice = practice1
        provider1.save()
        provider2 = create_user("prov2",
                                "provider_first1",
                                "provider_last1",
                                "demo",
                                "suzhou china",
                                "suzhou",
                                "AB",
                                "94307",
                                uklass=Provider)
        provider2.sites.add(site2)
        provider2.current_site = site2
        provider2.practices.add(practice2)
        provider2.current_practice = practice2
        provider2.save()

        condition_dicts = [
            {
                'name': u'provider',
                'result': 2,
                'result_failed': 'name failed'
            },
            {
                'name': u'last1 first1',
                'result': 1,
                'result_failed': 'name failed'
            },
            {
                'name': u'abc',
                'result': 0,
                'result_failed': 'name failed'
            },
            {
                'address': u'Bryant',
                'result': 1,
                'result_failed': 'address failed'
            },
            {
                'address': u'suzhou china',
                'result': 2,
                'result_failed': 'address failed'
            },
            {
                'address': u'abc',
                'result': 0,
                'result_failed': 'address failed'
            },
            {
                'city': u'Palo',
                'result': 1,
                'result_failed': 'city failed'
            },
            {
                'city': u'suzhou',
                'result': 1,
                'result_failed': 'city failed'
            },
            {
                'city': u'abc',
                'result': 0,
                'result_failed': 'city failed'
            },
            {
                'state': u'CA',
                'result': 1,
                'result_failed': 'state failed'
            },
            {
                'state': u'AB',
                'result': 1,
                'result_failed': 'state failed'
            },
            {
                'state': u'abc',
                'result': 0,
                'result_failed': 'state failed'
            },
            {
                'zip': provider1.zip,
                'result': 1,
                'result_failed': 'zip failed1'
            },
            {
                'zip': provider2.zip,
                'result': 1,
                'result_failed': 'zip failed2'
            },
            {
                'zip': provider2.zip,
                'distance': 5000,
                'result': 1,
                'result_failed': 'zip failed3'
            },
            {
                'zip': u'43523',
                'result': 0,
                'result_failed': 'zip failed'
            },
            {
                'current_hospital': u'doctorcom',
                'result': 1,
                'result_failed': 'current_hospital failed'
            },
            {
                'current_hospital': u'mysite',
                'result': 1,
                'result_failed': 'current_hospital failed'
            },
            {
                'current_hospital': u'22222',
                'result': 0,
                'result_failed': 'current_hospital failed'
            },
            {
                'hospital': u'mysite',
                'result': 1,
                'result_failed': 'hospital failed'
            },
            {
                'hospital': u'doctorcom',
                'result': 2,
                'result_failed': 'hospital failed'
            },
            {
                'hospital': u'abc',
                'result': 0,
                'result_failed': 'hospital failed'
            },
            {
                'current_practice': u'USA practice',
                'result': 1,
                'result_failed': 'current_practice failed'
            },
            {
                'current_practice': u'China practice',
                'result': 1,
                'result_failed': 'current_practice failed'
            },
            {
                'current_practice': u'abc',
                'result': 0,
                'result_failed': 'current_practice failed'
            },
            {
                'practice': u'USA practice',
                'result': 1,
                'result_failed': 'practice failed'
            },
            {
                'practice': u'China practice',
                'result': 2,
                'result_failed': 'practice failed'
            },
            {
                'practice': u'abc',
                'result': 0,
                'result_failed': 'practice failed'
            },
            {
                'limit': 0,
                'result': 2,
                'result_total': 2,
                'result_failed': 'limit failed'
            },
            {
                'limit': 1,
                'result': 1,
                'result_total': 2,
                'result_failed': 'limit failed'
            },
            {
                'limit': 2,
                'result': 2,
                'result_total': 2,
                'result_failed': 'limit failed'
            },
            {
                'name': u'provider',
                'address': u'suzhou china',
                'city': u'suzhou',
                'state': u'AB',
                'current_hospital': u'doctorcom',
                'hospital': u'doctorcom',
                'current_practice': u'China practice',
                'limit': 1,
                'result': 1,
                'result_total': 1,
                'result_failed': 'all failed'
            },
            {
                'name': u'abc',
                'address': u'suzhou china',
                'city': u'suzhou',
                'state': u'AB',
                'zip': provider2.zip,
                'current_hospital': u'doctorcom',
                'hospital': u'doctorcom',
                'current_practice': u'China practice',
                'limit': 1,
                'result': 0,
                'result_total': 0,
                'result_failed': 'all failed'
            },
        ]

        with mock.patch('MHLogin.api.v1.utils_users.geocode2',
                        new_callable=lambda: UtilsUsersTest.mock_geocode):
            for d in condition_dicts:
                result = getProviderList(d)
                if 'result_total' not in d:
                    d['result_total'] = d['result']
                self.assertEqual(d['result_total'], result['total_count'],
                                 d['result_failed'])
                self.assertEqual(d['result'], len(result['results']),
                                 d['result_failed'])

        phy2 = Physician(user=provider1)
        phy2.specialty = 'AC'
        phy2.save()

        nppa = NP_PA(user=provider2)
        nppa.save()

        condition_dicts = [
            {
                'specialty': u'AC',
                'result': 1,
                'result_failed': 'specialty failed'
            },
            {
                'specialty': u'NP/PA/Midwife',
                'result': 1,
                'result_failed': 'specialty failed'
            },
            {
                'specialty': u'abc',
                'result': 2,
                'result_failed': 'specialty failed'
            },
        ]
        for d in condition_dicts:
            result = getProviderList(d)
            if 'result_total' not in d:
                d['result_total'] = d['result']
            self.assertEqual(d['result_total'], result['total_count'],
                             d['result_failed'])
            self.assertEqual(d['result'], len(result['results']),
                             d['result_failed'])
Example #38
0
	def testGetProviderList(self, mockgeo):
		practice1 = 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)
		practice1.save()

		practice2 = PracticeLocation(
			practice_name='China practice',
			practice_address1='jiangsu',
			practice_address2='beijing',
			practice_city='suzhou',
			practice_state='JS',
			practice_zip='94040-4104',
			practice_lat=37.36876,
			practice_longit=-122.081864)
		practice2.save()

		site1 = 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'
			)
		site1.save()

		site2 = Site(
				name='doctorcom',
				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'
			)
		site2.save()

		provider1 = create_user("prov1", "provider_first", 
			"provider_last", "demo", "555 Bryant St.", "Palo Alto", "CA", 
			"94306", uklass=Provider)
		provider1.address2 = 'suzhou china'
		provider1.user.save()
		provider1.sites.add(site1)
		provider1.sites.add(site2)
		provider1.current_site = site1
		provider1.practices.add(practice1)
		provider1.practices.add(practice2)
		provider1.current_practice = practice1
		provider1.save()
		provider2 = create_user("prov2", "provider_first1", "provider_last1", 
				"demo", "suzhou china", "suzhou", "AB", "94307", uklass=Provider)
		provider2.sites.add(site2)
		provider2.current_site = site2
		provider2.practices.add(practice2)
		provider2.current_practice = practice2
		provider2.save()

		condition_dicts = [
					{'name':u'provider', 'result':2, 'result_failed':'name failed'},
					{'name':u'last1 first1', 'result':1, 'result_failed':'name failed'},
					{'name':u'abc', 'result':0, 'result_failed':'name failed'},
					{'address':u'Bryant', 'result':1, 'result_failed':'address failed'},
					{'address':u'suzhou china', 'result':2, 'result_failed':'address failed'},
					{'address':u'abc', 'result':0, 'result_failed':'address failed'},
					{'city':u'Palo', 'result':1, 'result_failed':'city failed'},
					{'city':u'suzhou', 'result':1, 'result_failed':'city failed'},
					{'city':u'abc', 'result':0, 'result_failed':'city failed'},
					{'state':u'CA', 'result':1, 'result_failed':'state failed'},
					{'state':u'AB', 'result':1, 'result_failed':'state failed'},
					{'state':u'abc', 'result':0, 'result_failed':'state failed'},
  					{'zip':provider1.zip, 'result':1, 'result_failed':'zip failed1'},
  					{'zip':provider2.zip, 'result':1, 'result_failed':'zip failed2'},
  					{'zip':provider2.zip, 'distance':5000, 'result':1, 'result_failed':'zip failed3'},
  					{'zip':u'43523', 'result':0, 'result_failed':'zip failed'},
					{'current_hospital':u'doctorcom', 'result':1, 'result_failed':'current_hospital failed'},
					{'current_hospital':u'mysite', 'result':1, 'result_failed':'current_hospital failed'},
					{'current_hospital':u'22222', 'result':0, 'result_failed':'current_hospital failed'},
					{'hospital':u'mysite', 'result':1, 'result_failed':'hospital failed'},
					{'hospital':u'doctorcom', 'result':2, 'result_failed':'hospital failed'},
					{'hospital':u'abc', 'result':0, 'result_failed':'hospital failed'},
					{'current_practice':u'USA practice', 'result':1, 'result_failed':'current_practice failed'},
					{'current_practice':u'China practice', 'result':1, 'result_failed':'current_practice failed'},
					{'current_practice':u'abc', 'result':0, 'result_failed':'current_practice failed'},
					{'practice':u'USA practice', 'result':1, 'result_failed':'practice failed'},
					{'practice':u'China practice', 'result':2, 'result_failed':'practice failed'},
					{'practice':u'abc', 'result':0, 'result_failed':'practice failed'},
					{'limit':0, 'result':2, 'result_total':2, 'result_failed':'limit failed'},
					{'limit':1, 'result':1, 'result_total':2, 'result_failed':'limit failed'},
					{'limit':2, 'result':2, 'result_total':2, 'result_failed':'limit failed'},
					{
						'name':u'provider', 'address':u'suzhou china', 'city':u'suzhou', 'state':u'AB',
						'current_hospital':u'doctorcom',
						'hospital':u'doctorcom', 'current_practice':u'China practice',
						'limit':1, 'result':1, 'result_total':1, 'result_failed':'all failed'
					},
					{
						'name':u'abc', 'address':u'suzhou china', 'city':u'suzhou', 'state':u'AB',
						'zip':provider2.zip, 'current_hospital':u'doctorcom',
						'hospital':u'doctorcom', 'current_practice':u'China practice',
						'limit':1, 'result':0, 'result_total':0, 'result_failed':'all failed'
					},
			]

		with mock.patch('MHLogin.api.v1.utils_users.geocode2', 
						new_callable=lambda: UtilsUsersTest.mock_geocode):
			for d in condition_dicts:
				result = getProviderList(d)
				if 'result_total' not in d:
					d['result_total'] = d['result']
				self.assertEqual(d['result_total'], result['total_count'], d['result_failed'])
				self.assertEqual(d['result'], len(result['results']), d['result_failed'])

		phy2 = Physician(user=provider1)
		phy2.specialty = 'AC'
		phy2.save()

		nppa = NP_PA(user=provider2)
		nppa.save()

		condition_dicts = [
					{'specialty':u'AC', 'result':1, 'result_failed':'specialty failed'},
					{'specialty':u'NP/PA/Midwife', 'result':1, 'result_failed':'specialty failed'},
					{'specialty':u'abc', 'result':2, 'result_failed':'specialty failed'},
		]
		for d in condition_dicts:
			result = getProviderList(d)
			if 'result_total' not in d:
				d['result_total'] = d['result']
			self.assertEqual(d['result_total'], result['total_count'], d['result_failed'])
			self.assertEqual(d['result'], len(result['results']), d['result_failed'])
Example #39
0
	def testGetUserInfo(self):
		mhlu = create_user(get_random_username(), "mhluser", "thj", "demo", "555 Bryant St.", 
						"Palo Alto", "CA", "")
		mhlu.mdcom_phone = '9002000001'
		mhlu.save()
		mhlu_id = mhlu.id

		return_data1 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
					'office_address2': u'', 'photo': '/media/images/photos/generic_128.png',
					'specialty': '', 'mdcom_phone': '', 'office_city': u'Palo Alto',
					'accepting_patients': False, 'id': mhlu_id, 'custom_logos': get_custom_logos(mhlu_id),
					'first_name': u'mhluser', 'office_state': u'CA', 'office_zip': u'', 'staff_type': ''}
		self.assertEqual(Http404, getUserInfo(mhlu_id + 1, None), 'test failed for getUserInfo')
		self.assertEqual(return_data1, getUserInfo(mhlu_id), 'test failed for getUserInfo mhluser')

		# create provider for test
		provider = create_user(get_random_username(), "provider", "thj", "demo",
							"555 Bryant St.", "Palo Alto", "CA", "", uklass=Provider)
		provider.mdcom_phone = '9002000002'
		provider.save()

		return_data2 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
					'office_address2': u'', 'photo': '/media/images/photos/avatar2.png',
					'specialty': 'NP/PA/Midwife', 'mdcom_phone': u'9002000002', 'office_city': u'Palo Alto',
					'accepting_patients': False, 'id': provider.user.id,
					'custom_logos': get_custom_logos(mhlu_id), 'first_name': u'provider',
					'office_state': u'CA', 'office_zip': u'', 'staff_type': ''}
		self.assertEqual(return_data2, getUserInfo(provider.user.id), 'test failed for getUserInfo provider')

		# create physician
		provider1 = create_user(get_random_username(), "physician", "thj", "demo", "555 Bryant St.",
							"Palo Alto", "CA", "", uklass=Provider)
		provider1.mdcom_phone = '9002000002'
		provider1.save()
		phy = Physician(user=provider1)
		phy.specialty = 'AC'
		phy.save()
		return_data3 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
					'office_address2': u'', 'photo': '/media/images/photos/avatar2.png',
					'specialty': u'Acupuncture', 'mdcom_phone': u'9002000002',
					'office_city': u'Palo Alto', 'accepting_patients': True,
					'id': phy.user.user.id, 'custom_logos': get_custom_logos(mhlu_id),
					'first_name': u'physician', 'office_state': u'CA', 'office_zip': u'',
					'staff_type': ''}
		self.assertEqual(return_data3, getUserInfo(phy.user.user.id), 'test failed for getUserInfo physician')

# 		create office staff
		staff = create_office_staff(get_random_username(), "staff", "thj", "demo", "555 Bryant St.",
					"Palo Alto", "CA", "", uklass=OfficeStaff)
		return_data4 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
					'office_address2': u'', 'photo': '/media/images/photos/staff_icon.jpg',
					'specialty': '', 'mdcom_phone': '', 'office_city': u'Palo Alto',
					'accepting_patients': False, 'id': staff.user.id,
					'custom_logos': get_custom_logos(mhlu_id), 'first_name': u'staff',
					'office_state': u'CA', 'office_zip': u'', 'staff_type': 'Office Staff'}
		self.assertEqual(return_data4, getUserInfo(staff.user.id), 'test failed for getUserInfo staff')

# 		create nurse
		staff2 = create_office_staff(get_random_username(), "nurse", "thj", "demo",
					"555 Bryant St.", "Palo Alto", "CA", "", uklass=OfficeStaff)
		nurse = Nurse(user=staff2)
		nurse.save()
		return_data5 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
				'office_address2': u'', 'photo': '/media/images/photos/nurse.jpg',
				'specialty': '', 'mdcom_phone': '', 'office_city': u'Palo Alto',
				'accepting_patients': False, 'id': nurse.user.user.id,
				'custom_logos': get_custom_logos(mhlu_id), 'first_name': u'nurse',
				'office_state': u'CA', 'office_zip': u'', 'staff_type': 'Office Staff'}
		self.assertEqual(return_data5, getUserInfo(nurse.user.user.id), 'test failed for getUserInfo nurse')

# 		create office staff
		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()
		return_data5 = {'last_name': u'thj', 'office_address1': u'555 Bryant St.',
				'office_address2': u'', 'photo': '/media/images/photos/staff_icon.jpg',
				'specialty': '', 'mdcom_phone': '', 'office_city': u'Palo Alto',
				'accepting_patients': False, 'id': mgr.user.user.id,
				'custom_logos': get_custom_logos(mhlu_id), 'first_name': u'maneger',
				'office_state': u'CA', 'office_zip': u'', 'staff_type': 'Office Manager'}
		self.assertEqual(return_data5, getUserInfo(mgr.user.user.id), 'test failed for getUserInfo maneger')
Example #40
0
    def testSmartPhoneCall(self):
        response = self.client.get(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall'), **self.extra)
        self.assertEqual(response.content,
                         err_GE002().content, response.status_code)

        user_uuid = self.extra['HTTP_MDCOM_USER_UUID']
        user = MHLUser.objects.get(uuid=user_uuid)

        user.mdcom_phone = '123'
        user.save()
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall'), **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'GE031',
            response.status_code)

        user.mdcom_phone = '2561234567'
        user.save()
        kwargs = {'user_id': 0}
        data = {'caller_number': '2561234566'}
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs),
            data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'GE010',
            response.status_code)

        kwargs = {'user_id': user.id}
        data = {'caller_number': '2561234566'}
        return_data = {
            'number': ''.join(['+1', str(settings.TWILIO_C2C_NUMBER)])
        }
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs),
            data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['data'], return_data,
            response.status_code)

        kwargs = {'practice_id': 0}
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs),
            data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'GE010',
            response.status_code)

        practice1 = 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_phone='2561234568',
            practice_longit=-122.081864)
        practice1.save()
        provider1 = create_user(get_random_username(),
                                "provider_first",
                                "provider_last",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "94306",
                                uklass=Provider)
        provider1.address2 = 'suzhou china'
        provider1.user.save()
        provider1.practices.add(practice1)
        provider1.current_practice = practice1
        provider1.save()
        kwargs = {'practice_id': practice1.id}
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs),
            data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['data'], return_data,
            response.status_code)

        kwargs = {}
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs),
            data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'TE003',
            response.status_code)
Example #41
0
    def testPageUser(self):
        response = self.client.get(
            reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0, )),
            **self.extra)
        self.assertEqual(response.content,
                         err_GE002().content, response.status_code)

        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0, )),
            **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'GE031',
            response.status_code)

        data = {'number': '2561234566'}
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser', args=(0, )), data,
            **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'GE010',
            response.status_code)

        provider1 = create_user(get_random_username(),
                                "provider_first",
                                "provider_last",
                                "demo",
                                "555 Bryant St.",
                                "Palo Alto",
                                "CA",
                                "94306",
                                uklass=Provider)
        provider1.address2 = 'suzhou china'
        provider1.user.save()
        provider1.save()
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser',
                    args=(provider1.id, )), data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'TE002',
            response.status_code)

        provider1.pager = 2561234567
        provider1.save()
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser',
                    args=(provider1.id, )), data, **self.extra)
        self.assertEqual(response.content,
                         HttpJSONSuccessResponse().content,
                         response.status_code)

        staff1 = create_office_staff(get_random_username(),
                                     "staff_first1",
                                     "staff_last1",
                                     "demo",
                                     "suzhou china",
                                     "suzhou",
                                     "AB",
                                     "25011",
                                     uklass=OfficeStaff)
        staff1.save()
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser',
                    args=(staff1.user.id, )), data, **self.extra)
        self.assertEqual(
            json.loads(response.content)['errno'], 'TE002',
            response.status_code)

        staff1.pager = 2561234568
        staff1.save()
        response = self.client.post(
            reverse('MHLogin.api.v1.views_dcom.pageUser',
                    args=(staff1.user.id, )), data, **self.extra)
        self.assertEqual(response.content,
                         HttpJSONSuccessResponse().content,
                         response.status_code)
Example #42
0
	def testSmartPhoneCall(self):
		response = self.client.get(
			reverse('MHLogin.api.v1.views_dcom.smartPhoneCall'), **self.extra)
		self.assertEqual(response.content, err_GE002().content, response.status_code)

		user_uuid = self.extra['HTTP_MDCOM_USER_UUID']
		user = MHLUser.objects.get(uuid=user_uuid)

		user.mdcom_phone = '123'
		user.save()
		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.smartPhoneCall'), **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'GE031', response.status_code)

		user.mdcom_phone = '2561234567'
		user.save()
		kwargs = {'user_id': 0}
		data = {'caller_number': '2561234566'}
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', 
					kwargs=kwargs), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'GE010', response.status_code)

		kwargs = {'user_id': user.id}
		data = {'caller_number': '2561234566'}
		return_data = {'number': ''.join(['+1', str(settings.TWILIO_C2C_NUMBER)])}
		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs), data, **self.extra)
		self.assertEqual(json.loads(response.content)['data'], return_data, response.status_code)

		kwargs = {'practice_id': 0}
		response = self.client.post(reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', 
			kwargs=kwargs), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'GE010', response.status_code)

		practice1 = 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_phone='2561234568',
			practice_longit=-122.081864)
		practice1.save()
		provider1 = create_user(get_random_username(), 
			"provider_first", "provider_last", "demo", "555 Bryant St.",
				"Palo Alto", "CA", "94306", uklass=Provider)
		provider1.address2 = 'suzhou china'
		provider1.user.save()
		provider1.practices.add(practice1)
		provider1.current_practice = practice1
		provider1.save()
		kwargs = {'practice_id': practice1.id}
		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs), data, **self.extra)
		self.assertEqual(json.loads(response.content)['data'], return_data, response.status_code)

		kwargs = {}
		response = self.client.post(
			reverse('MHLogin.api.v1.views_dcom.smartPhoneCall', kwargs=kwargs), data, **self.extra)
		self.assertEqual(json.loads(response.content)['errno'], 'TE003', response.status_code)
Example #43
0
    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')