コード例 #1
0
ファイル: test_apis.py プロジェクト: ekush/commcare-hq
 def test_parse_product_json(self):
     with open(os.path.join(self.datapath, 'sample_products.json')) as f:
         ilsgateway_program = Product(json.loads(f.read())[0])
     self.assertEqual(ilsgateway_program.name, "Condoms")
     self.assertEqual(ilsgateway_program.units, "each")
     self.assertEqual(ilsgateway_program.sms_code, "cond")
     self.assertEqual(ilsgateway_program.description, "Condoms")
     self.assertEqual(ilsgateway_program.is_active, True)
コード例 #2
0
 def test_parse_product_json(self):
     with open(os.path.join(self.datapath, 'sample_products.json')) as f:
         product = Product(json.loads(f.read())[0])
     self.assertEqual(product.name, "Abacavir 300mg")
     self.assertEqual(product.units, "Tablet")
     self.assertEqual(product.sms_code, "abc")
     self.assertEqual(product.description, "Abacavir 300mg")
     self.assertEqual(product.is_active, True)
コード例 #3
0
ファイル: test_apis.py プロジェクト: SEL-Columbia/commcare-hq
 def testParseProductJSON(self):
     with open(os.path.join(self.datapath, 'sample_product.json')) as f:
         ilsgateway_program = Product.from_json(json.loads(f.read()))
     self.assertEqual(ilsgateway_program.name, "Condoms")
     self.assertEqual(ilsgateway_program.units, "each")
     self.assertEqual(ilsgateway_program.sms_code, "cond")
     self.assertEqual(ilsgateway_program.description, "Condoms")
     self.assertEqual(ilsgateway_program.is_active, True)
コード例 #4
0
 def test_create_product(self):
     with open(os.path.join(self.datapath, 'sample_product.json')) as f:
         product = Product.from_json(json.loads(f.read()))
     self.assertEqual(0, len(Prod.by_domain(TEST_DOMAIN)))
     ilsgateway_product = sync_ilsgateway_product(TEST_DOMAIN, product)
     self.assertEqual(product.sms_code, ilsgateway_product.code.lower())
     self.assertEqual(product.name, ilsgateway_product.name)
     self.assertEqual(product.description, ilsgateway_product.description)
     self.assertEqual(product.units, str(ilsgateway_product.unit))
コード例 #5
0
 def test_create_product(self):
     with open(os.path.join(self.datapath, 'sample_products.json')) as f:
         product = Product(json.loads(f.read())[0])
     self.assertEqual(0, len(Prod.by_domain(TEST_DOMAIN)))
     ilsgateway_product = self.api_object.product_sync(product)
     self.assertEqual(product.sms_code, ilsgateway_product.code.lower())
     self.assertEqual(product.name, ilsgateway_product.name)
     self.assertEqual(product.description, ilsgateway_product.description)
     self.assertEqual(product.units, str(ilsgateway_product.unit))
コード例 #6
0
    def setUp(self):
        self.endpoint = MockEndpoint('http://test-api.com/', 'dummy', 'dummy')
        self.stock_api_object = MockILSStockDataSynchronization(
            TEST_DOMAIN, self.endpoint)
        self.datapath = os.path.join(os.path.dirname(__file__), 'data')
        initial_bootstrap(TEST_DOMAIN)
        self.api_object = ILSGatewayAPI(TEST_DOMAIN, self.endpoint)
        self.api_object.prepare_commtrack_config()
        config = ILSGatewayConfig()
        config.domain = TEST_DOMAIN
        config.enabled = True
        config.all_stock_data = True
        config.password = '******'
        config.username = '******'
        config.url = 'http://test-api.com/'
        config.save()
        l1 = Location(name='Test location 1',
                      external_id='3445',
                      location_type='FACILITY',
                      domain=TEST_DOMAIN)

        l2 = Location(name='Test location 2',
                      external_id='4407',
                      location_type='FACILITY',
                      domain=TEST_DOMAIN)

        l1.save()
        l2.save()

        SupplyPointCase.create_from_location(TEST_DOMAIN, l1)
        SupplyPointCase.create_from_location(TEST_DOMAIN, l2)

        with open(os.path.join(self.datapath, 'sample_products.json')) as f:
            for product_json in json.loads(f.read()):
                self.api_object.product_sync(Product(product_json))

        StockTransaction.objects.all().delete()