This macro will add a function to the list of expected function calls.

EXPECT(function [, retval])
The function that is expected to be called during a test
An optional value that will be returned to the unit. Default is 0.

A test will execute the unit by calling one of its functions. In return, the unit will run its code, which in turn might call external functions outside the unit. For each test, a unique set of functions will be called. The test must prepare a list of these to the framework, before executing the unit. The test can use the macro EXPECT to instruct the framework that a function call to function is expected during the test. If several functions are called, several EXPECT macros must be used before executing the test. The order is important - e.g. the order of the EXPECT should correspond to the order, in which, the unit will call the expected functions. If the framework detects a function call to a function that is not expected at that time, the test will fail. Each time an expected function is correctly called, the framework will remove it from the list. The test will fail, if the list is not empty after the test has completed execution.

The unit is unaware, that it is actually calling a mock function. The default mock will return the optional parameter retval. If this parameter is not given, the default mock will return zero.

The macro is normally used before executing the unit, but if desired, it can also be called from mocks - i.e. during execution of the unit.



The latest headlines from Testape.com

TestApe Release 1171 available, Aug 20th 2014

It has been a long time since last official release and the list of bugfixes, features and supported platforms accumulating in the beta has grown substantially. I am happy to annouce that a new release is ready.


TestApe beta version available, Jul 21th 2014

New beta version is now available for download.


TestApe Release 880 available, Dec 3rd 2011

New is this release are support for floating point validations and function mocking. Also, MinGW has been added to the list of supported platforms.


Forum change, Mar 27th 2011

TestApe forum is now hosted on Proboards. Support questions can be posted here or send directly on email. Due to ...


TestApe beta release available, Sep 27th 2011

TestApe can now be used with MinGW GCC on windows. Also supported in this beta are floating point types in validations or when mocking functions


IPad update for WebTTY, May 15th 2011

A small fix for webtty scripts, to allow the usage from Apple IPads. Tab on textarea to bring up IPad keyboard - you may have to scroll webpage beneath keyboard, in order to actually see what you're typing.

TestApe Release 791 available, Apr 2nd 2010

This release contains a new flexible mocking system with default mocks automatically generated for unresolved functions. Installation packages are available for GCC/Linux, GCC/CygWin as well Visual Studio 2009/Windows XP or Vista.