Traits are used here to make the tests easier to read, and the different traits can be combined where necessary.