def test_valid(self):
     raw_data = load_response_file("error_response.json")
     parsed_data = ErrorResponse.parse_obj(raw_data)
     self.assertEqual(
         parsed_data.type,
         "https://stellar.org/horizon-errors/transaction_failed")
     self.assertEqual(parsed_data.title, "Transaction Failed")
     self.assertEqual(parsed_data.status, 400)
     self.assertEqual(
         parsed_data.detail,
         "The transaction failed when submitted to the stellar network. The `extras.result_codes` field on this response contains further details.  Descriptions of each code can be found at: https://www.stellar.org/developers/guides/concepts/list-of-operations.html",
     )
     self.assertTrue(isinstance(parsed_data.extras, dict))
Пример #2
0
 def test_valid(self):
     raw_data = load_response_file("trade_aggregations_response.json")
     parsed_data = TradeAggregationsResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 100)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, TradeAggregation))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/trade_aggregations?base_asset_type=credit_alphanum4&base_asset_code=BTC&base_asset_issuer=GATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&counter_asset_type=native&resolution=60000&limit=100",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/trade_aggregations?base_asset_code=BTC&base_asset_issuer=GATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&base_asset_type=credit_alphanum4&counter_asset_type=native&limit=100&resolution=60000&start_time=0",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(parsed_data.links.prev.href, "")
     self.assertEqual(parsed_data.links.prev.templated, None)
Пример #3
0
 def test_valid(self):
     raw_data = load_response_file("offers_response.json")
     parsed_data = OffersResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 20)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Offer))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/offers?cursor=&limit=20&order=desc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/offers?cursor=546459297&limit=20&order=desc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon.stellar.org/offers?cursor=546459316&limit=20&order=asc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
 def test_valid(self):
     raw_data = load_response_file("trades_response.json")
     parsed_data = TradesResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 100)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Trade))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/trades?base_asset_type=native&counter_asset_code=BTC&counter_asset_issuer=GATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&counter_asset_type=credit_alphanum4&cursor=&limit=100&order=desc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/trades?base_asset_type=native&counter_asset_code=BTC&counter_asset_issuer=GATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&counter_asset_type=credit_alphanum4&cursor=148329556015616001-3&limit=100&order=desc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon.stellar.org/trades?base_asset_type=native&counter_asset_code=BTC&counter_asset_issuer=GATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&counter_asset_type=credit_alphanum4&cursor=150716462615965697-0&limit=100&order=asc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
 def test_valid(self):
     raw_data = load_response_file("transactions_response.json")
     parsed_data = TransactionsResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 100)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Transaction))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/transactions?cursor=&include_failed=true&limit=100&order=desc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/transactions?cursor=150723639505981440&include_failed=true&limit=100&order=desc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon.stellar.org/transactions?cursor=150723643801051136&include_failed=true&limit=100&order=asc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
 def test_valid(self):
     raw_data = load_response_file("ledgers_response.json")
     parsed_data = LedgersResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 20)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Ledger))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/ledgers?cursor=&limit=20&order=desc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/ledgers?cursor=150721238619127808&limit=20&order=desc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon.stellar.org/ledgers?cursor=150721320223506432&limit=20&order=asc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
Пример #7
0
 def test_valid(self):
     raw_data = load_response_file("liquidity_pools_response.json")
     parsed_data = LiquidityPoolsResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 10)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, LiquidityPool))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon-testnet.stellar.org/liquidity_pools?cursor=&limit=10&order=asc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon-testnet.stellar.org/liquidity_pools?cursor=82eba905e0403a7a01212d1ae3db7f3dcbabe00ad303800ec8a86e688ffee888&limit=10&order=asc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon-testnet.stellar.org/liquidity_pools?cursor=2389378a6156eedfac66daa000d24c926431c3e667b9f754771964f27a6da6ab&limit=10&order=desc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
 def test_valid(self):
     raw_data = load_response_file("accounts_response.json")
     parsed_data = AccountsResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 10)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Account))
     self.assertEqual(
         parsed_data.links.self.href,
         "https://horizon.stellar.org/accounts/?asset=BTC%3AGATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&cursor=&limit=10&order=desc",
     )
     self.assertEqual(parsed_data.links.self.templated, None)
     self.assertEqual(
         parsed_data.links.next.href,
         "https://horizon.stellar.org/accounts/?asset=BTC%3AGATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&cursor=GDZVWAFA4RN2YPFHPPF4BNL2OHONAPJLYMSEIHJBNJFMYOAGFRTFM2J4&limit=10&order=desc",
     )
     self.assertEqual(parsed_data.links.next.templated, None)
     self.assertEqual(
         parsed_data.links.prev.href,
         "https://horizon.stellar.org/accounts/?asset=BTC%3AGATEMHCCKCY67ZUCKTROYN24ZYT5GK4EQZ65JJLDHKHRUZI3EUEKMTCH&cursor=GDZZN7FHZUJ356OAGDPXAF5NYY7N3NCQG65NCMNVOX2PSW4AD4VISEBY&limit=10&order=asc",
     )
     self.assertEqual(parsed_data.links.prev.templated, None)
Пример #9
0
    def test_valid(self):
        raw_data = load_response_file("effects_response.json")
        parsed_data = EffectsResponse.parse_obj(raw_data)
        self.assertEqual(len(parsed_data.embedded.records), 200)
        for record in parsed_data.embedded.records:
            self.assertTrue(isinstance(record, BaseEffect))

        self.assertEqual(
            parsed_data.links.self.href,
            "https://horizon.stellar.org/effects?cursor=&limit=200&order=desc",
        )
        self.assertEqual(parsed_data.links.self.templated, None)
        self.assertEqual(
            parsed_data.links.next.href,
            "https://horizon.stellar.org/effects?cursor=151484153660260353-1&limit=200&order=desc",
        )
        self.assertEqual(parsed_data.links.next.templated, None)
        self.assertEqual(
            parsed_data.links.prev.href,
            "https://horizon.stellar.org/effects?cursor=151484175135092737-1&limit=200&order=asc",
        )
        self.assertEqual(parsed_data.links.prev.templated, None)
    def test_valid(self):
        raw_data = load_response_file("payments_response.json")
        parsed_data = PaymentsResponse.parse_obj(raw_data)
        self.assertEqual(len(parsed_data.embedded.records), 100)
        for record in parsed_data.embedded.records:
            self.assertTrue(record.type in payment_ops)
            class_type = payment_ops[record.type]
            self.assertTrue(isinstance(record, class_type), record)

        self.assertEqual(
            parsed_data.links.self.href,
            "https://horizon.stellar.org/payments?cursor=&limit=100&order=desc",
        )
        self.assertEqual(parsed_data.links.self.templated, None)
        self.assertEqual(
            parsed_data.links.next.href,
            "https://horizon.stellar.org/payments?cursor=150721723950796801&limit=100&order=desc",
        )
        self.assertEqual(parsed_data.links.next.templated, None)
        self.assertEqual(
            parsed_data.links.prev.href,
            "https://horizon.stellar.org/payments?cursor=150721758310514689&limit=100&order=asc",
        )
        self.assertEqual(parsed_data.links.prev.templated, None)
Пример #11
0
    def test_valid(self):
        raw_data = load_response_file("operations_response.json")
        parsed_data = OperationsResponse.parse_obj(raw_data)
        self.assertEqual(len(parsed_data.embedded.records), 18)
        for record in parsed_data.embedded.records:
            self.assertTrue(record.type in ops)
            class_type = ops[record.type]
            self.assertTrue(isinstance(record, class_type))

        self.assertEqual(
            parsed_data.links.self.href,
            "https://horizon.stellar.org/operations?cursor=&include_failed=true&limit=1&order=desc",
        )
        self.assertEqual(parsed_data.links.self.templated, None)
        self.assertEqual(
            parsed_data.links.next.href,
            "https://horizon.stellar.org/operations?cursor=150724090477830145&include_failed=true&limit=1&order=desc",
        )
        self.assertEqual(parsed_data.links.next.templated, None)
        self.assertEqual(
            parsed_data.links.prev.href,
            "https://horizon.stellar.org/operations?cursor=150724090477830145&include_failed=true&limit=1&order=asc",
        )
        self.assertEqual(parsed_data.links.prev.templated, None)
Пример #12
0
 def test_valid(self):
     raw_data = load_response_file("paths_response.json")
     parsed_data = PathsResponse.parse_obj(raw_data)
     self.assertEqual(len(parsed_data.embedded.records), 5)
     for record in parsed_data.embedded.records:
         self.assertTrue(isinstance(record, Path))
Пример #13
0
 def test_valid(self):
     raw_data = load_response_file("order_book_response.json")
     parsed_data = OrderBookResponse.parse_obj(raw_data)
     self.assertTrue(isinstance(parsed_data, OrderBookResponse))
     self.assertTrue(isinstance(parsed_data, OrderBookSummary))