exampletestcase.cpp

来自「著名的uncle Bob的Agile software development的」· C++ 代码 · 共 70 行

CPP
70
字号


#include "ExampleTestCase.h"



void ExampleTestCase::example ()
{
  assertDoublesEqual (1.0, 1.1, 0.05);
  assert (1 == 0);
  assert (1 == 1);
}


void ExampleTestCase::anotherExample ()
{
  assert (1 == 2);
}

void ExampleTestCase::setUp ()
{
  m_value1 = 2.0;
  m_value2 = 3.0;
}

void ExampleTestCase::testAdd ()
{
  double result = m_value1 + m_value2;
  assert (result == 6.0);
}


void ExampleTestCase::testDivideByZero ()
{
  int	zero	= 0;
  int result	= 8 / zero;
}


void ExampleTestCase::testEquals ()
{
  std::auto_ptr<long>	l1 (new long (12));
  std::auto_ptr<long>	l2 (new long (12));

  assertLongsEqual (12, 12);
  assertLongsEqual (12L, 12L);
  assertLongsEqual (*l1, *l2);

  assert (12L == 12L);
  assertLongsEqual (12, 13);
  assertDoublesEqual (12.0, 11.99, 0.5);



}



Test *ExampleTestCase::suite ()
{
  TestSuite *testSuite = new TestSuite ("ExampleTestCase");

  testSuite->addTest (new TestCaller <ExampleTestCase> ("anotherExample", &ExampleTestCase::anotherExample));
  testSuite->addTest (new TestCaller <ExampleTestCase> ("testAdd", &ExampleTestCase::testAdd));
  testSuite->addTest (new TestCaller <ExampleTestCase> ("testDivideByZero", &ExampleTestCase::testDivideByZero));
  testSuite->addTest (new TestCaller <ExampleTestCase> ("testEquals", &ExampleTestCase::testEquals));

  return testSuite;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?