Extend diff test to make sure that `actual` is provided
Implement diff support for `promiseThat` and clean up implementation in `assertThat`