add tests (also, lean toward `.then` executing always)