Let us start with the first requirement. Here is the test:
def test_stock_update(self): """An update should set the price on the stock object We will be using the `datetime` module for the timestamp """ goog = Stock("GOOG") goog.update(datetime(2014, 2, 12), price=10) self.assertEqual(10, goog.price)
Here we call the update
method (which doesn't exist yet) with the timestamp and price and then check that the price has been set correctly. We use the assertEqual
method provided in the unittest.TestCase
class to assert the value.
Since we are using the datetime
module to set the timestamp, we will have to add the line from datetime import datetime
to the top of the file before it will run.
This test follows the pattern of Arrange-Act-Assert.
Arrange: Set up the context for the test. In this case, we create a
Stock
object. In other tests, it may involve creating multiple objects or hooking a few things together that will be required...