add some tests for then method