OptionTest.cc 990 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #include "Option.h"
  2. #include <string>
  3. #include <cppunit/extensions/HelperMacros.h>
  4. using namespace std;
  5. class OptionTest:public CppUnit::TestFixture {
  6. CPPUNIT_TEST_SUITE(OptionTest);
  7. CPPUNIT_TEST(testPutAndGet);
  8. CPPUNIT_TEST(testPutAndGetAsInt);
  9. CPPUNIT_TEST(testPutAndGetAsDouble);
  10. CPPUNIT_TEST_SUITE_END();
  11. private:
  12. public:
  13. void setUp() {
  14. }
  15. void testPutAndGet();
  16. void testPutAndGetAsInt();
  17. void testPutAndGetAsDouble();
  18. };
  19. CPPUNIT_TEST_SUITE_REGISTRATION( OptionTest );
  20. void OptionTest::testPutAndGet() {
  21. Option op;
  22. op.put("key", "value");
  23. CPPUNIT_ASSERT(op.defined("key"));
  24. CPPUNIT_ASSERT_EQUAL(string("value"), op.get("key"));
  25. }
  26. void OptionTest::testPutAndGetAsInt() {
  27. Option op;
  28. op.put("key", "1000");
  29. CPPUNIT_ASSERT(op.defined("key"));
  30. CPPUNIT_ASSERT_EQUAL((int32_t)1000, op.getAsInt("key"));
  31. }
  32. void OptionTest::testPutAndGetAsDouble() {
  33. Option op;
  34. op.put("key", "10.0");
  35. CPPUNIT_ASSERT_EQUAL(10.0, op.getAsDouble("key"));
  36. }