Я написал синтаксис: mock().expectNoCall("productionCode")
на странице Cpputest.org. Но компилятор говорит , что класс mocksupport не поддерживает этот тип заказа.Cpputest: как скомпилировать и использовать expectNoCall?
test_RFID_Drv.c:322:9: error: ‘class MockSupport’ has no member named ‘expectNoCall’mock().expectNoCall("HAL_AS393x_ReadRegisters");
Как его можно использовать? Должен ли я включать некоторый файл в заголовки? В настоящее время у меня есть те из них за насмешливый:
/*! \include <CppUTest/CommandLineTestRunner.h> */
#include <CppUTest/CommandLineTestRunner.h>
/*! \include <CppUTest/TestHarness.h> */
#include <CppUTest/TestHarness.h>
/*! \include <CppUTestExt/MockSupport.h> */
#include <CppUTestExt/MockSupport.h>
Дело в том, что я хочу, чтобы игнорировать один системный вызов для бетона. Я не хочу его проверять.
Где вы читаете документы? Я могу видеть 'mock(). ExpectNCalls (5," productionCode ");' и '' mock(). IgnoreOtherCalls(); 'но не' ожидатьNoCall'. – doctorlove
https://cpputest.github.io/mocking_manual.html в последнем последнем абзаце. С титром: «Разное», а затем, под небольшим объяснением (одна строка или две aprox). –
Может быть, ожидать, что NoCall для этого не сделано. Но я хотел бы проигнорировать один вызов, размещенный между другими, которые я хочу вызвать при одном и том же тесте. Если я использую ignoreothercalls, я не понял, будет ли вызываться остальные вызовы, следующие за этим. Мне нужно, чтобы остальные, после игнорирования вызова, будут вызваны. Или, по крайней мере, найти способ остановить эффект ignoreothercalls до конца тестового примера. –