def test_patient_screening_history(self):
        """Test that the patient referral/screening history page works as expected."""
        add_service_data.main(self.app)
        user = get_user()
        user.service = Service.query.filter(Service.name == 'Daily Planet').first()
        self.login()
        patient = get_patient()

        # Make sure the page loads as expected
        response = self.client.get('/patient_screening_history/{}'.format(patient.id))
        self.assert200(response)
        self.assert_template_used('patient_screening_history.html')

        # Make sure you can save a new screening result
        response = self.client.post(
            '/patient_screening_history/{}'.format(patient.id),
            data=dict(
                eligible_yn='Y',
                sliding_scale_id=user.service.sliding_scales[0].id,
                notes='Test'
            ),
            follow_redirects=True
        )
        self.assert200(response)
        # User should stay on the same page after saving
        self.assert_template_used('patient_screening_history.html')
        screening_result = Patient.query.first().screening_results[0]
        self.assertEquals(screening_result.service_id, user.service_id)
        self.assertEquals(screening_result.eligible_yn, 'Y')
        self.assertEquals(screening_result.sliding_scale_id, user.service.sliding_scales[0].id)
        self.assertEquals(screening_result.notes, 'Test')
    def test_calculate_pre_screen_results(self):
        """Test that calculating prescreening results works as expected."""
        add_service_data.main(self.app)
        daily_planet = Service.query.filter(Service.name == 'Daily Planet').first()
        result = calculate_pre_screen_results(
            fpl=0,
            has_health_insurance='no',
            is_eligible_for_medicaid='no',
            service_ids=[daily_planet.id]
        )[0]

        self.assertEquals(result['name'], daily_planet.name)
        self.assertEquals(result['eligible'], True)
        self.assertEquals(result['fpl_cutoff'], daily_planet.fpl_cutoff)
        self.assertEquals(result['fpl_eligible'], True)
        self.assertEquals(result['uninsured_only_yn'], daily_planet.uninsured_only_yn)
        self.assertEquals(
            result['medicaid_ineligible_only_yn'],
            daily_planet.medicaid_ineligible_only_yn
        )
        self.assertEquals(
            result['residence_requirement_yn'],
            daily_planet.residence_requirement_yn
        )
        self.assertEquals(
            result['time_in_area_requirement_yn'],
            daily_planet.time_in_area_requirement_yn
        )
        self.assertEquals(result['sliding_scale'], 'Nominal')
        self.assertEquals(result['sliding_scale_range'], 'between 0% and 100%')
        self.assertEquals(result['id'], daily_planet.id)
Beispiel #3
0
    def test_patient_overview(self):
        """Test that the patient overview and screening result page works as expected."""
        add_service_data.main(self.app)
        user = get_user()
        user.service = Service.query.filter(
            Service.name == 'Daily Planet').first()
        self.login()
        patient = get_patient(user)

        # Make sure the page loads as expected
        response = self.client.get('/patient_overview/{}'.format(patient.id))
        self.assert200(response)
        self.assert_template_used('patient_overview.html')

        # Make sure you can save a new screening result
        response = self.client.post(
            '/patient_overview/{}'.format(patient.id),
            data=dict(eligible_yn='Y',
                      sliding_scale_id=user.service.sliding_scales[0].id,
                      notes='Test'),
            follow_redirects=True)

        self.assert200(response)
        # User should stay on the same page after saving
        self.assert_template_used('patient_overview.html')
        screening_result = Patient.query.first().screening_results[0]
        self.assertEquals(screening_result.service_id, user.service_id)
        self.assertEquals(screening_result.eligible_yn, 'Y')
        self.assertEquals(screening_result.sliding_scale_id,
                          user.service.sliding_scales[0].id)
        self.assertEquals(screening_result.notes, 'Test')
Beispiel #4
0
    def test_calculate_pre_screen_results(self):
        """Test that calculating prescreening results works as expected."""
        add_service_data.main(self.app)
        daily_planet = Service.query.filter(
            Service.name == 'Daily Planet').first()
        result = calculate_pre_screen_results(fpl=0,
                                              has_health_insurance='no',
                                              is_eligible_for_medicaid='no',
                                              service_ids=[daily_planet.id])[0]

        self.assertEquals(result['name'], daily_planet.name)
        self.assertEquals(result['eligible'], True)
        self.assertEquals(result['fpl_cutoff'], daily_planet.fpl_cutoff)
        self.assertEquals(result['fpl_eligible'], True)
        self.assertEquals(result['uninsured_only_yn'],
                          daily_planet.uninsured_only_yn)
        self.assertEquals(result['medicaid_ineligible_only_yn'],
                          daily_planet.medicaid_ineligible_only_yn)
        self.assertEquals(result['residence_requirement_yn'],
                          daily_planet.residence_requirement_yn)
        self.assertEquals(result['time_in_area_requirement_yn'],
                          daily_planet.time_in_area_requirement_yn)
        self.assertEquals(result['sliding_scale'], 'Nominal')
        self.assertEquals(result['sliding_scale_range'], 'between 0% and 100%')
        self.assertEquals(result['id'], daily_planet.id)
    def test_patient_screening_history(self):
        """Test that the patient referral/screening history page works as expected."""
        add_service_data.main(self.app)
        user = get_user()
        user.service = Service.query.filter(Service.name == 'Daily Planet').first()
        self.login()
        patient = get_patient()

        # Make sure the page loads as expected
        response = self.client.get('/patient_screening_history/{}'.format(patient.id))
        self.assert200(response)
        self.assert_template_used('patient_screening_history.html')
Beispiel #6
0
    def test_patient_screening_history(self):
        """Test that the patient referral/screening history page works as expected."""
        add_service_data.main(self.app)
        user = get_user()
        user.service = Service.query.filter(
            Service.name == 'Daily Planet').first()
        self.login()
        patient = get_patient()

        # Make sure the page loads as expected
        response = self.client.get('/patient_screening_history/{}'.format(
            patient.id))
        self.assert200(response)
        self.assert_template_used('patient_screening_history.html')