From: Ismaƫl Bouya Date: Wed, 4 Apr 2018 10:02:13 +0000 (+0200) Subject: Add logging at market instance creation X-Git-Tag: v1.1.2^2^2~1 X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FTrader.git;a=commitdiff_plain;h=90d7423eec074a0ed0af680c223180f8d7e1d4e6 Add logging at market instance creation --- diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..227f825 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +*.py diff=python +/store.py export-subst diff --git a/market.py b/market.py index ac3aa14..10d1ad8 100644 --- a/market.py +++ b/market.py @@ -28,6 +28,9 @@ class Market: for key in ["user_id", "market_id", "report_path", "pg_config"]: setattr(self, key, kwargs.get(key, None)) + self.report.log_market(self.args, self.user_id, self.market_id, + self.report_path, self.debug) + @classmethod def from_config(cls, config, args, **kwargs): config["apiKey"] = config.pop("key", None) diff --git a/store.py b/store.py index b3ada45..2b5c18a 100644 --- a/store.py +++ b/store.py @@ -209,6 +209,17 @@ class ReportStore: "action": action, }) + def log_market(self, args, user_id, market_id, report_path, debug): + self.add_log({ + "type": "market", + "commit": "$Format:%H$", + "args": vars(args), + "user_id": user_id, + "market_id": market_id, + "report_path": report_path, + "debug": debug, + }) + class BalanceStore: def __init__(self, market): self.market = market diff --git a/test.py b/test.py index a9a80c5..29403d4 100644 --- a/test.py +++ b/test.py @@ -1181,9 +1181,12 @@ class MarketTest(WebMockTestCase): with self.subTest(quiet=False): m = market.Market(self.ccxt, self.market_args(quiet=False)) report_store.assert_called_with(m, verbose_print=True) + report_store().log_market.assert_called_once() + report_store.reset_mock() with self.subTest(quiet=True): m = market.Market(self.ccxt, self.market_args(quiet=True)) report_store.assert_called_with(m, verbose_print=False) + report_store().log_market.assert_called_once() @mock.patch("market.ccxt") def test_from_config(self, ccxt): @@ -4346,6 +4349,25 @@ class ReportStoreTest(WebMockTestCase): 'response': 'Hey' }) + @mock.patch.object(market.ReportStore, "add_log") + def test_log_market(self, add_log): + report_store = market.ReportStore(self.m) + class Args: + def __init__(self): + self.debug = True + self.quiet = False + + report_store.log_market(Args(), 4, 1, "report", True) + add_log.assert_called_once_with({ + "type": "market", + "commit": "$Format:%H$", + "args": { "debug": True, "quiet": False }, + "user_id": 4, + "market_id": 1, + "report_path": "report", + "debug": True + }) + @mock.patch.object(market.ReportStore, "print_log") @mock.patch.object(market.ReportStore, "add_log") def test_log_error(self, add_log, print_log):