Skip to content

Update Auto Asserting Mocks to better handle async tests #258

@chrisdp

Description

@chrisdp

The current implementation related to Auto Asserting Mocks will always call clean and assert stubs and mocks the moment after calling the test group. This results in anything that happens async after that initial call will have it's stubs and mocks blown away. We should update this logic to be called after the group completes for async tests.

Consider the following test for example:

@async
@it("async with stub call for node function")
function _()
  m.stubCall(SetLabelText, function(text)
    m.wasCalled = true
    m.testSuite.assertEqual(text, "")
    m.testSuite.assertTrue(true)
    m.testSuite.done()
    ? "done three"
  end function)

  delayCall(0.02, SetLabelText)
end function

The current logic would result in the stub for SetLabelText to be cleared before it was ever called.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions