start on promises expect(fn) should probably set up a spy instead.