O'Reilly logo

Test-Driven Python Development by Siddharta Govindaraj

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Understanding the code

The following is the code that we are going to be looking at in this chapter:

from datetime import datetime from .stock import Stock from .rule import PriceRule class AlertProcessor: def __init__(self): self.exchange = {"GOOG": Stock("GOOG"), "AAPL": Stock("AAPL")} rule_1 = PriceRule("GOOG", lambda stock: stock.price > 10) rule_2 = PriceRule("AAPL", lambda stock: stock.price > 5) self.exchange["GOOG"].updated.connect( lambda stock: print(stock.symbol, stock.price) \ if rule_1.matches(self.exchange) else None) self.exchange["AAPL"].updated.connect( lambda stock: print(stock.symbol, stock.price) \ if rule_2.matches(self.exchange) else None) updates = [] with open("updates.csv", "r") as fp: for line in fp.readlines(): symbol, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required