Exemplo n.º 1
0
    def test_privat_mock(self):
        xrate = models.XRate.get(id=1)
        updated_before = xrate.updated
        self.assertEqual(xrate.rate, 1.0)

        api.update_rate(840, 980)

        xrate = models.XRate.get(id=1)
        updated_after = xrate.updated

        self.assertEqual(xrate.rate, 30)
        self.assertGreater(updated_after, updated_before)

        api_log = models.ApiLog.select().order_by(
            models.ApiLog.created.desc()).first()

        self.assertIsNotNone(api_log)
        self.assertEqual(
            api_log.request_url,
            "https://api.privatbank.ua/p24api/pubinfo?exchange&json&coursid=11"
        )
        self.assertIsNotNone(api_log.response_text)

        self.assertEqual('[{"ccy": "USD", "base_ccy": "UAH", "sale": "30.0"}]',
                         api_log.response_text)
Exemplo n.º 2
0
    def test_cryptonator_uah(self):
        from_currency = 1000
        to_currency = 980
        xrate = models.XRate.get(from_currency=from_currency,
                                 to_currency=to_currency)
        updated_before = xrate.updated
        self.assertEqual(xrate.rate, 1.0)

        api.update_rate(from_currency, to_currency)

        xrate = models.XRate.get(from_currency=from_currency,
                                 to_currency=to_currency)
        updated_after = xrate.updated

        self.assertGreater(xrate.rate, 150000)
        self.assertGreater(updated_after, updated_before)

        api_log = models.ApiLog.select().order_by(
            models.ApiLog.created.desc()).first()

        self.assertIsNotNone(api_log)
        self.assertEqual(api_log.request_url,
                         "https://api.cryptonator.com/api/ticker/btc-uah")
        self.assertIsNotNone(api_log.response_text)

        self.assertIn('{"base":"BTC","target":"UAH","price":',
                      api_log.response_text)
Exemplo n.º 3
0
    def test_privat_btc(self):
        xrate = models.XRate.get(from_currency=1000, to_currency=840)
        updated_before = xrate.updated
        self.assertEqual(xrate.rate, 1.0)

        api.update_rate(1000, 840)

        xrate = models.XRate.get(from_currency=1000, to_currency=840)
        update_after = xrate.updated

        self.assertGreater(xrate.rate, 5000)
        self.assertGreater(update_after, updated_before)

        api_log = models.ApiLog.select().order_by(
            models.ApiLog.created.desc()).first()

        self.assertIsNotNone(api_log)
        self.assertEqual(
            api_log.request_url,
            "https://api.privatbank.ua/p24api/pubinfo?exchange&json&coursid=11"
        )
Exemplo n.º 4
0
    def test_cdr(self):
        xrate = models.XRate.get(from_currency=840, to_currency=643)
        update_before = xrate.updated
        self.assertEqual(xrate.rate, 1.0)

        api.update_rate(840, 643)

        xrate = models.XRate.get(from_currency=840, to_currency=643)
        updated_after = xrate.updated

        self.assertGreater(xrate.rate, 60)
        self.assertGreater(updated_after, update_before)

        api_log = models.ApiLog.select().order_by(
            models.ApiLog.created.desc()).first()

        self.assertIsNotNone(api_log)
        self.assertEqual(api_log.request_url,
                         "http://www.cbr.ru/scripts/XML_daily.asp")
        self.assertIsNotNone(api_log.response_text)
        self.assertIn("<NumCode>840</NumCode>", api_log.response_text)
Exemplo n.º 5
0
 def _update_rate(self, from_currency, to_currency):
     api.update_rate(from_currency, to_currency)