Exemplo n.º 1
0
 def setUp(self):
     super(TestEnrollmentMixin, self).setUp()
     self.maternal_eligibility = MaternalEligibilityFactory()
     self.maternal_consent = MaternalConsentFactory(
         registered_subject=self.maternal_eligibility.registered_subject)
     self.registered_subject = self.maternal_consent.registered_subject
     self.specimen_consent = SpecimenConsentFactory(
         registered_subject=self.registered_subject)
     self.data = {
         'registered_subject': self.registered_subject.id,
         'report_datetime': timezone.now(),
         'is_diabetic': NO,
         'on_tb_tx': NO,
         'will_breastfeed': NO,
         'will_remain_onstudy': NO,
         'week32_test': NO,
         'week32_result': '',
         'current_hiv_status': POS,
         'evidence_hiv_status': NO,
         'valid_regimen': NO,
         'valid_regimen_duration': NOT_APPLICABLE,
         'rapid_test_done': NO,
         'rapid_test_date': '',
         'rapid_test_result': '',
     }
Exemplo n.º 2
0
    def test_serialize_deserialize(self):
        """Confirms all models have a get_by_natural_key manager method."""
        maternal_eligibility = MaternalEligibilityFactory()
        maternal_consent = MaternalConsentFactory(
            registered_subject=maternal_eligibility.registered_subject)
        specimen_consent = SpecimenConsentFactory(
            registered_subject=maternal_consent.registered_subject)
        antenatal_enrollment = AntenatalEnrollmentFactory(
            registered_subject=specimen_consent.registered_subject,
            current_hiv_status=POS,
            evidence_hiv_status=YES,
            rapid_test_done=NO)
        appointment = Appointment.objects.get(
            registered_subject=antenatal_enrollment.registered_subject,
            visit_definition__code='1000M')
        maternal_visit = MaternalVisitFactory(appointment=appointment)
        maternal_locator = MaternalLocatorFactory(
            maternal_visit=maternal_visit,
            registered_subject=antenatal_enrollment.registered_subject,
        )
        maternal_demographics = MaternalDemographics.objects.create(
            maternal_visit=maternal_visit,
            report_datetime=timezone.now(),
            marital_status='Single',
            ethnicity='Black African',
            highest_education='Tertiary',
            current_occupation='Student',
            provides_money='Mother',
            money_earned='P1001-5000 per month / P212 - 1157 per week',
            own_phone=YES,
            house_electrified=YES,
            house_fridge=YES,
            cooking_method='Gas or electric stove',
            toilet_facility='Indoor toilet',
            house_people_number=1,
            house_type='Formal: Tin-roofed, concrete walls')
        instances = []
        instances.append(maternal_eligibility)
        instances.append(maternal_consent)
        instances.append(specimen_consent)
        instances.append(antenatal_enrollment)
        instances.append(maternal_visit)
        instances.append(maternal_locator)
        instances.append(maternal_demographics)
        for obj in instances:
            natural_key = obj.natural_key()
            get_obj = obj.__class__.objects.get_by_natural_key(*natural_key)
            self.assertEqual(obj.pk, get_obj.pk)

        for obj in instances:
            outgoing_transaction = SerializeToTransaction().serialize(
                obj.__class__, obj, False, True, 'default')
            for transaction in serializers.deserialize(
                    "json",
                    FieldCryptor('aes',
                                 'local').decrypt(outgoing_transaction.tx)):
                self.assertEqual(transaction.object.pk, obj.pk)
Exemplo n.º 3
0
 def maternal_instances(self):
     instances = []
     maternal_eligibility = MaternalEligibilityFactory()
     instances.append(maternal_eligibility)
     maternal_consent = MaternalConsentFactory(
         registered_subject=maternal_eligibility.registered_subject)
     instances.append(maternal_consent)
     specimen_consent = SpecimenConsentFactory(
         registered_subject=maternal_consent.registered_subject)
     instances.append(specimen_consent)
     antenatal_enrollment = AntenatalEnrollmentFactory(
         registered_subject=specimen_consent.registered_subject,
         current_hiv_status=POS,
         evidence_hiv_status=YES,
         rapid_test_done=NO)
     instances.append(antenatal_enrollment)
     post_natal_enrollment = PostnatalEnrollmentFactory(
         registered_subject=specimen_consent.registered_subject, )
     instances.append(post_natal_enrollment)
     appointment_1000 = Appointment.objects.get(
         registered_subject=antenatal_enrollment.registered_subject,
         visit_definition__code='1000M')
     instances.append(appointment_1000)
     maternal_visit_1000 = MaternalVisitFactory(
         appointment=appointment_1000)
     instances.append(maternal_visit_1000)
     maternal_locator = MaternalLocatorFactory(
         maternal_visit=maternal_visit_1000,
         registered_subject=antenatal_enrollment.registered_subject,
     )
     instances.append(maternal_locator)
     maternal_demographics = MaternalDemographicsFactory(
         maternal_visit=maternal_visit_1000, )
     instances.append(maternal_demographics)
     appointment_2000 = Appointment.objects.get(
         registered_subject=antenatal_enrollment.registered_subject,
         visit_definition__code='2000M')
     instances.append(appointment_2000)
     maternal_visit_2000 = MaternalVisitFactory(
         appointment=appointment_2000)
     instances.append(maternal_visit_2000)
     appointment_2010 = Appointment.objects.get(
         registered_subject=antenatal_enrollment.registered_subject,
         visit_definition__code='2010M')
     maternal_visit_2010 = MaternalVisitFactory(
         appointment=appointment_2010)
     instances.append(maternal_visit_2010)
     reproductive_health = ReproductiveHealthFactory(
         maternal_visit=maternal_visit_2010)
     instances.append(reproductive_health)
     maternal_arv_post = MaternalArvPostFactory(
         maternal_visit=maternal_visit_2010)
     instances.append(maternal_arv_post)
     maternal_arv_post_mod = MaternalArvPostModFactory(
         maternal_arv_post=maternal_arv_post)
     instances.append(maternal_arv_post_mod)
     maternal_arv_preg = MaternalArvPregFactory(
         maternal_visit=maternal_visit_2000)
     instances.append(maternal_arv_preg)
     maternal_arv = MaternalArvFactory(maternal_arv_preg=maternal_arv_preg)
     instances.append(maternal_arv)
     maternal_post_fu_med = MaternalPostFuMedFactory(
         maternal_visit=maternal_visit_2010)
     instances.append(maternal_post_fu_med)
     maternal_post_fu_items = MaternalPostFuMedItemsFactory(
         maternal_post_fu_med=maternal_post_fu_med)
     instances.append(maternal_post_fu_items)
     maternal_post_fu_dx = MaternalPostFuDxFactory(
         maternal_visit=maternal_visit_2010)
     instances.append(maternal_post_fu_dx)
     #         maternal_post_fu_dxt = MaternalPostFuDxTFactory(maternal_post_fu_dx=maternal_post_fu_dx)
     #         instances.append(maternal_post_fu_dxt)
     return instances