bugfixes for test callbacks
- if a teardown method for an asynchronous test was not defined, tests do not fail
- test callbacks receive the passed arguments
- added test case that covers both fixes