Test-Driven Python Development by Govindaraj Siddharta

Test-Driven Python Development by Govindaraj Siddharta

Author:Govindaraj, Siddharta
Language: eng
Format: epub, azw3, pdf
Publisher: Packt Publishing
Published: 2015-04-29T04:00:00+00:00


What we have done is to introduce a new parameter called autorun and set the default value as True. We then wrap the call to the run method with a conditional. Only if autorun is True will the run method be called.

All the existing callers who use this class will be unchanged—when the constructor is called without parameters, the autorun parameter will be set to True and the run method will be called. Everything will be as expected.

But adding the parameter gives us the option to explicitly set the autorun parameter to False in our tests, and thus avoid the run method from being called. We can now instantiate the class, then set up any mocks or other test initialization that we want, and then proceed to manually call the run method in the test.

The following is the same characterization test that we wrote earlier, rewritten to take advantage of this new functionality:

def test_processor_characterization_2(self): processor = AlertProcessor(autorun=False) with mock.patch("builtins.print") as mock_print: processor.run() mock_print.assert_has_calls([mock.call("AAPL", 8), mock.call("GOOG", 15), mock.call("AAPL", 10), mock.call("GOOG", 21)])



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.