Выполнение теста «меньше чем» с CppUnit - PullRequest
1 голос
/ 08 июня 2010

Я новичок в CppUnit. Есть ли способ утверждать, что значение должно быть меньше нуля? Я ищу что-то с поведением, похожим на CPPUNIT_ASSERT_EQUAL(). Я думал, что может быть тестовая функция с именем что-то вроде CPPUNIT_ASSERT_LESS_THAN().

Ответы [ 2 ]

5 голосов
/ 08 июня 2010

Как насчет CPPUNIT_ASSERT(variable < 0);?

3 голосов
/ 08 июня 2010

Этот шаблон комментария следует нашему шаблону теста cppunit:

/*
The following macros for adding test cases are available:

- CPPUNIT_TEST(memberFunction): Add a member function to the suite.

- CPPUNIT_TEST_EXCEPTION(memberFunction, exception): Add a member function to
  the suite, which fails if it does not throw the specified exception type.

- CPPUNIT_TEST_FAIL(memberFunction): Add a member function to the suite that
  is expected to fail (i.e., it fails if the memberFunction does not fail).


The following assert macros are available:

- CPPUNIT_ASSERT(condition): Assert that condition is true.

- CPPUNIT_ASSERT_MESSAGE(message, condition): Assert that condition is true,
  and fail with message if it is not.

- CPPUNIT_FAIL(message): Fail with the given message.

- CPPUNIT_ASSERT_EQUAL(expected, actual): Assert that expected equals actual.
  Note that expected and actual needs to be of the same type.

- CPPUNIT_ASSERT_EQUAL_MESSAGE(message, expected, actual): Assert that
  expected equals actual, and fail with message if not.

- CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, delta): Assert that the
  floating point values expected and actual do not differ by more than delta.

- CPPUNIT_ASSERT_THROW(expression, ExceptionType): Assert that the given
  expression causes an exception of type ExceptionType to be thrown.

- CPPUNIT_ASSERT_NO_THROW(expression): Assert that the given expression does
  not throw an exception.
*/

Это охватывает большинство обстоятельств. Как упоминает Оксли, CPPUNIT_ASSERT - лучший выбор здесь, с сообщением или без него.

...