def test_process_facility(self):
      facility_json = json.loads('{  "uuid": "18a021ed-205c-4e80-ab9c-fbeb2d9c1bcf",  "name": " Some HOSPITAL",  "active": false,  "href": "http://dhis/api-fred/v1/facilities/123",  "createdAt": "2013-01-15T11:14:02.863+0000",  "updatedAt": "2013-01-15T11:14:02.863+0000",  "coordinates": [34.19622, 0.70331],  "identifiers": [{    "agency": "DHIS2",    "context": "DHIS2_UID",    "id": "123"  }],  "properties": {    "dataSets": ["123456"],    "level": 5,    "ownership": "Private Not For Profit",    "parent": "56789",    "type": "General Hospital"  }}')

      uuid = facility_json['uuid']
      HealthFacilityType.objects.filter(name="hcii").delete()
      HealthFacilityBase.objects.filter(uuid=uuid).delete()

      HealthFacilityType.objects.create(name="hcii")

      facility = HealthFacilityBase(uuid=uuid, name="BATMAN")
      facility.save(cascade_update=False)
      self.failUnless(facility.id)

      assert facility.active == True

      assert len(HealthFacilityIdMap.objects.filter(uuid=uuid)) == 0
      assert len(HealthFacilityBase.objects.filter(uuid=uuid)) == 1

      fred_consumer.tasks.process_facility(facility_json)

      facility = HealthFacilityBase.objects.filter(uuid=uuid)[0]
      self.failUnless(facility)
      self.failUnless(HealthFacilityIdMap.objects.filter(uuid=uuid)[0])
      assert facility.name == facility_json['name'].strip()
      assert facility.active == False

      fred_facility_details = FredFacilityDetail.objects.get(uuid=facility_json['uuid'])
      assert fred_facility_details.h033b == False
 def create_facility(self,facility_name=u'test_facility',dhis2_uuid=u'test_uuid'):
   facility = HealthFacilityBase()
   facility.name = facility_name;
   facility.uuid = dhis2_uuid
   facility.save(cascade_update=False)
   
   FredFacilityDetail.objects.get_or_create(uuid=facility, h033b=True)
   
   return facility
Example #3
0
    def create_facility(self,
                        facility_name=u'test_facility',
                        dhis2_uuid=u'test_uuid'):
        facility = HealthFacilityBase()
        facility.name = facility_name
        facility.uuid = dhis2_uuid
        facility.save(cascade_update=False)

        FredFacilityDetail.objects.get_or_create(uuid=facility, h033b=True)

        return facility