RxLua/tests/subscription.lua

27 lines
837 B
Lua

describe('Subscription', function()
describe('create', function()
it('returns a Subscription', function()
local subscription = Rx.Subscription.create()
expect(subscription).to.be.an(Rx.Subscription)
end)
end)
describe('unsubscribe', function()
it('runs the function passed to create', function()
local unsubscribe = spy()
local subscription = Rx.Subscription.create(unsubscribe)
subscription:unsubscribe()
expect(#unsubscribe).to.equal(1)
end)
it('does not run the function passed to create more than once', function()
local unsubscribe = spy()
local subscription = Rx.Subscription.create(unsubscribe)
subscription:unsubscribe()
subscription:unsubscribe()
subscription:unsubscribe()
expect(#unsubscribe).to.equal(1)
end)
end)
end)