diff options
author | Matthew Wild <mwild1@gmail.com> | 2019-09-30 08:22:30 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2019-09-30 08:22:30 +0100 |
commit | 490ddd34b7f214a6ee1e35cfc6f5a366940aec31 (patch) | |
tree | de20ac6486eba57b1ab641caaa98c28389c3e4d7 /spec/util_promise_spec.lua | |
parent | 7850aa7c109befaeeeaeafe200fe237bb0d57a54 (diff) | |
download | prosody-490ddd34b7f214a6ee1e35cfc6f5a366940aec31.tar.gz prosody-490ddd34b7f214a6ee1e35cfc6f5a366940aec31.zip |
util.promise: Add some additional tests to cover callback return values
Diffstat (limited to 'spec/util_promise_spec.lua')
-rw-r--r-- | spec/util_promise_spec.lua | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/util_promise_spec.lua b/spec/util_promise_spec.lua index 65d252f6..0008c6a2 100644 --- a/spec/util_promise_spec.lua +++ b/spec/util_promise_spec.lua @@ -248,6 +248,30 @@ describe("util.promise", function () assert.spy(cb3).was_called(1); assert.spy(cb3).was_called_with("goodbye"); end); + + it("ordinary values", function () + local p = promise.resolve() + local cb = spy.new(function () + return "hello" + end); + local cb2 = spy.new(function () end); + p:next(cb):next(cb2); + assert.spy(cb).was_called(1); + assert.spy(cb2).was_called(1); + assert.spy(cb2).was_called_with("hello"); + end); + + it("nil", function () + local p = promise.resolve() + local cb = spy.new(function () + return + end); + local cb2 = spy.new(function () end); + p:next(cb):next(cb2); + assert.spy(cb).was_called(1); + assert.spy(cb2).was_called(1); + assert.spy(cb2).was_called_with(nil); + end); end); describe("race()", function () |