name: CMP-4009B files: - pjtool.py: classes: - Date: methods: - __init__(4) - __str__(1) - __eq__(2) - __lt__(2) - numYears(2) - numMonths(2) tests: - | d1 = pjtool.Date(2001, 8, 12) d2 = pjtool.Date(2001, 8, 12) assert d1 == d2 - | d1 = pjtool.Date(2001, 8, 12) d2 = pjtool.Date(1999, 4, 5) assert d1 != d2 - | d1 = pjtool.Date(2001, 8, 12) d2 = pjtool.Date(1999, 4, 5) assert d1 > d2 - | import random d1 = pjtool.Date(random.randint(2000, 2050), 8, 12) d2 = pjtool.Date(random.randint(1900, 2050), 4, 5) assert d1.numYears(d2) == abs(d1.year - d2.year) - | d1 = pjtool.Date(2020, 5, 1) d2 = pjtool.Date(2020, 6, 1) assert d1.numMonths(d2) == 0 - | d1 = pjtool.Date(2020, 5, 1) d2 = pjtool.Date(2020, 8, 1) assert d1.numMonths(d2) == 2 - tester.py: functions: - dateTester(2) - turbine.py: classes: - Turbine: methods: - __init__(5) - __str__(1) - numYearsInst(2) - serviceDue(2) - serviceAt(2) - powerAt(2) - AdvTurbine: methods: - __init__(5) - __str__(1) - numYearsInst(2) - serviceDue(2) - serviceAt(2) - powerAt(2) dependencies: libraries: - matplotlib files: - ../wsData.txt