]>
git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Trader.git/blob - tests/helper.py
3 from decimal
import Decimal
as D
4 from unittest
import mock
6 from io
import StringIO
7 import portfolio
, market
, main
, store
9 __all__
= ["limits", "unittest", "WebMockTestCase", "mock", "D",
12 limits
= ["acceptance", "unit"]
13 for test_type
in limits
:
14 if "--no{}".format(test_type
) in sys
.argv
:
15 sys
.argv
.remove("--no{}".format(test_type
))
16 limits
.remove(test_type
)
17 if "--only{}".format(test_type
) in sys
.argv
:
18 sys
.argv
.remove("--only{}".format(test_type
))
22 class WebMockTestCase(unittest
.TestCase
):
25 def market_args(self
, debug
=False, quiet
=False, report_path
=None, **kwargs
):
26 return main
.configargparse
.Namespace(report_path
=report_path
,
27 debug
=debug
, quiet
=quiet
, **kwargs
)
31 self
.wm
= requests_mock
.Mocker()
35 self
.m
= mock
.Mock(name
="Market", spec
=market
.Market
)
39 mock
.patch
.multiple(market
.Portfolio
,
40 data
=store
.LockedVar(None),
41 liquidities
=store
.LockedVar({}),
42 last_date
=store
.LockedVar(None),
48 mock
.patch
.multiple(portfolio
.Computation
,
49 computations
=portfolio
.Computation
.computations
),
51 for patcher
in self
.patchers
:
55 for patcher
in self
.patchers
: