Changeset 418 for library/tests
- Timestamp:
- 07/16/09 16:06:48 (16 years ago)
- Location:
- library/tests
- Files:
-
- 53 added
- 2 modified
-
CMakeLists.txt (modified) (3 diffs)
-
testUI_out.matrix (added)
-
test_user_info.cpp (modified) (3 diffs)
-
testsuite.cpp (added)
-
unittest-cpp (added)
-
unittest-cpp/AssertException.cpp (added)
-
unittest-cpp/AssertException.h (added)
-
unittest-cpp/CMakeLists.txt (added)
-
unittest-cpp/COPYING (added)
-
unittest-cpp/CheckMacros.h (added)
-
unittest-cpp/Checks.cpp (added)
-
unittest-cpp/Checks.h (added)
-
unittest-cpp/Config.h (added)
-
unittest-cpp/CurrentTest.cpp (added)
-
unittest-cpp/CurrentTest.h (added)
-
unittest-cpp/DeferredTestReporter.cpp (added)
-
unittest-cpp/DeferredTestReporter.h (added)
-
unittest-cpp/DeferredTestResult.cpp (added)
-
unittest-cpp/DeferredTestResult.h (added)
-
unittest-cpp/ExecuteTest.h (added)
-
unittest-cpp/MemoryOutStream.cpp (added)
-
unittest-cpp/MemoryOutStream.h (added)
-
unittest-cpp/Posix (added)
-
unittest-cpp/Posix/SignalTranslator.cpp (added)
-
unittest-cpp/Posix/SignalTranslator.h (added)
-
unittest-cpp/Posix/TimeHelpers.cpp (added)
-
unittest-cpp/Posix/TimeHelpers.h (added)
-
unittest-cpp/README (added)
-
unittest-cpp/ReportAssert.cpp (added)
-
unittest-cpp/ReportAssert.h (added)
-
unittest-cpp/Test.cpp (added)
-
unittest-cpp/Test.h (added)
-
unittest-cpp/TestDetails.cpp (added)
-
unittest-cpp/TestDetails.h (added)
-
unittest-cpp/TestList.cpp (added)
-
unittest-cpp/TestList.h (added)
-
unittest-cpp/TestMacros.h (added)
-
unittest-cpp/TestReporter.cpp (added)
-
unittest-cpp/TestReporter.h (added)
-
unittest-cpp/TestReporterStdout.cpp (added)
-
unittest-cpp/TestReporterStdout.h (added)
-
unittest-cpp/TestResults.cpp (added)
-
unittest-cpp/TestResults.h (added)
-
unittest-cpp/TestRunner.cpp (added)
-
unittest-cpp/TestRunner.h (added)
-
unittest-cpp/TestSuite.h (added)
-
unittest-cpp/TimeConstraint.cpp (added)
-
unittest-cpp/TimeConstraint.h (added)
-
unittest-cpp/TimeHelpers.h (added)
-
unittest-cpp/UnitTest++.h (added)
-
unittest-cpp/Win32 (added)
-
unittest-cpp/Win32/TimeHelpers.cpp (added)
-
unittest-cpp/Win32/TimeHelpers.h (added)
-
unittest-cpp/XmlTestReporter.cpp (added)
-
unittest-cpp/XmlTestReporter.h (added)
Legend:
- Unmodified
- Added
- Removed
-
library/tests/CMakeLists.txt
r394 r418 1 1 # Make sure the compiler can find include files from our Bdm library. 2 2 include_directories (${BDM_SOURCE_DIR}/bdm) 3 include_directories (./unittest-cpp) 3 4 4 5 # Make sure the linker can find the Hello library once it is built. 5 6 link_directories (${BDM_BINARY_DIR}/bdm) 7 link_directories (./unittest-cpp) 6 8 7 9 # Add executable called "helloDemo" that is built from the source files … … 12 14 EXEC(datalink_test) 13 15 EXEC(loggers_test) 14 EXEC(test_user_info)15 16 16 17 EXEC(chmat_test) … … 40 41 EXEC(blas_test) 41 42 43 # using UnitTest++ 44 add_executable(testsuite testsuite.cpp test_user_info.cpp) 45 target_link_libraries(testsuite bdm itpp unittest) 46 42 47 add_subdirectory(tutorial) 48 add_subdirectory(unittest-cpp) -
library/tests/test_user_info.cpp
r394 r418 1 1 #include <fstream> 2 #include <memory> 2 3 #include <string> 4 #include <string.h> 3 5 #include "base/user_info.h" 4 5 using std::string; 6 #include "UnitTest++.h" 7 6 8 using namespace std; 7 9 using namespace bdm; … … 194 196 UIREGISTER(Bike); 195 197 196 int main() 197 { 198 //////////////////////////////////// LOADING //////////////////////////////// 198 // Non-general but simple file load - handles only files of limited 199 // size which do not contain '\0' characters, but for testing that 200 // should be enough. 201 string load_test_file(const char *fname) 202 { 203 char buffer[8192]; 204 memset(buffer, 0, sizeof(buffer)); 205 ifstream src(fname, ios_base::binary); 206 src.read(buffer, sizeof(buffer) - 1); 207 return string(buffer); 208 } 209 210 TEST(test_load) 211 { 199 212 UIFile in("test_user_info_input.cfg"); 200 Transport *pepikovo = UI::build<Transport>(in, "pepikovo"); 201 cout << "pepikovo: " << pepikovo->to_string() << endl; 202 Transport *jardovo = UI::build<Transport>(in, "jardovo"); 203 cout << "jardovo: " << jardovo->to_string() << endl; 204 Transport *ondrejovo = UI::build<Transport>(in, "ondrejovo"); 205 cout << "ondrejovo: " << ondrejovo->to_string() << endl; 206 Transport *elisky = UI::build<Transport>(in, "elisky"); 207 cout << "elisky: " << elisky->to_string() << endl; 208 Transport *kati = UI::build<Transport>(in, "kati"); 209 cout << "kati: " << kati->to_string() << endl; 210 cout << endl << "press any key to continue..." << endl; 211 getchar(); 212 213 /////////////////////////////////// SAVING ////////////////////////// 213 auto_ptr<Transport> pepikovo(UI::build<Transport>(in, "pepikovo")); 214 CHECK_EQUAL(string("A car made in 1998 by audi, having 25000 kilometers on the clock.The names of passengers are as follows: Karlos Novak -1_CygWin_Matlab_Aimsun Karlosik Novacek "), pepikovo->to_string()); 215 216 auto_ptr<Transport> jardovo(UI::build<Transport>(in, "jardovo")); 217 CHECK_EQUAL(string("A car made in 1992 by liaz, having 1555000 kilometers on the clock."), jardovo->to_string()); 218 219 auto_ptr<Transport> ondrejovo(UI::build<Transport>(in, "ondrejovo")); 220 CHECK_EQUAL(string("a bike made in 1996 by author with electric lights included"), ondrejovo->to_string()); 221 222 auto_ptr<Transport> elisky(UI::build<Transport>(in, "elisky")); 223 CHECK_EQUAL(string("A car made in 1992 by liaz, having 1555000 kilometers on the clock."), elisky->to_string()); 224 225 auto_ptr<Transport> kati(UI::build<Transport>(in, "kati")); 226 CHECK_EQUAL(string("A car made in 1980 by vecernicek, having 250000 kilometers on the clock."), kati->to_string()); 227 } 228 229 TEST(test_save) 230 { 231 UIFile in("test_user_info_input.cfg"); 232 auto_ptr<Transport> pepikovo(UI::build<Transport>(in, "pepikovo")); 214 233 215 234 Car audi(1968, "zyl", 200); … … 221 240 UI::save(&liaz, out, "bohousovo"); 222 241 UI::save(&author, out, "karlovo"); 223 UI::save(pepikovo , out, "pepikovo");242 UI::save(pepikovo.get(), out, "pepikovo"); 224 243 out.save("testUI_out.cfg"); 225 244 226 cout << "all the transport means were saved correctly" << endl; 227 cout << endl << "press any key to end the program" << endl; 228 getchar(); 229 return 0; 245 string expected(load_test_file("testUI_out.matrix")); 246 string actual(load_test_file("testUI_out.cfg")); 247 CHECK_EQUAL(expected, actual); 230 248 }
