def print_log(feeds): t = PrettyTable([ "base", "quote", "price", "diff", "volume", "source" ]) t.align = 'l' for symbol, feed in feeds.items(): asset = Asset(symbol, full=True) asset.ensure_full() short_backing_asset = Asset( asset["bitasset_data"]["options"]["short_backing_asset"]) backing_symbol = short_backing_asset["symbol"] data = feed.get("log", {}) price = data.get(symbol) if not price: continue for d in price.get(backing_symbol, []): t.add_row([ symbol, backing_symbol, formatPrice(d.get("price")), highlightLargeDeviation(d.get("price"), feed["price"]), d.get("volume"), str(d.get("sources")), ]) print(t.get_string())
def test_refresh(self): asset = Asset("1.3.0", full=False) asset.ensure_full() self.assertIn("dynamic_asset_data", asset) self.assertIn("flags", asset) self.assertIn("permissions", asset) self.assertIsInstance(asset["flags"], dict) self.assertIsInstance(asset["permissions"], dict)