Using Time Travel, we can refactor the naïve test case [⇒ testNaivePayToday] into one that can remember changing pay rates.
For now we can use simple Dates as the lookup key.
NavigationTest>>testPayToday | contract version | contract := Contract new. version := ContractVersion pay: 1000. contract versionAt: '2/1/99' asDate put: version. self assert: (contract versionAt: '2/1/99' asDate) pay = 1000
**Note**: Damien pointed out to me via discord that the dates in the gtExample `payToday` were different but identical in `testPayToday`.