- Timestamp:
- 07/22/09 14:57:26 (16 years ago)
- Location:
- library
- Files:
-
- 3 added
- 4 modified
Legend:
- Unmodified
- Added
- Removed
-
library/bdm/base/loggers.h
r387 r425 21 21 22 22 /*! 23 * \brief Logging into matrices in data format in memory 24 25 * More?... 26 */ 27 23 * Logging into matrices in data format in memory, optionally persisted into a file. 24 */ 28 25 class memlog : public logger { 29 26 … … 71 68 \code 72 69 logger = { 73 type = "itpplog";70 class = "memlog"; 74 71 filename = "file_name.it"; // resulting filename with results in it format 75 72 maxlen = 100; // size of memory buffer … … 115 112 void write_buffers ( int Len ); 116 113 117 // TODO dokumentace - aktualizovat118 114 /*! \brief UI for dirfilelog (Kst file format) 119 115 \code 120 116 logger = { 121 type= "dirfilelog";122 dir mane = "directory_for_files"; // resulting files will be stored there117 class = "dirfilelog"; 118 dirname = "directory_for_files"; // resulting files will be stored there 123 119 maxlen = 100; // size of memory buffer, when full results are written to disk 124 120 } -
library/tests/CMakeLists.txt
r424 r425 9 9 # Add executable called "helloDemo" that is built from the source files 10 10 # "demo.cxx" and "demo_b.cxx". The extensions are automatically found. 11 12 # BASIC EXECS13 EXEC(loggers_test)14 11 15 12 EXEC(chmat_test) … … 40 37 41 38 # using UnitTest++ 42 add_executable(testsuite datalink_test.cpp rv_test.cpp testsuite.cpp test_user_info.cpptest_shared_ptr.cpp)39 add_executable(testsuite datalink_test.cpp loggers_test.cpp rv_test.cpp testsuite.cpp test_user_info.cpp test_util.cpp test_util.h test_shared_ptr.cpp) 43 40 target_link_libraries(testsuite bdm itpp unittest) 44 41 -
library/tests/loggers_test.cpp
r386 r425 1 1 #define BDMLIB // not an ideal way to prevent double registration of UI factories... 2 2 #include "base/loggers.h" 3 #include "test_util.h" 4 #include "UnitTest++.h" 5 #include <string> 6 #include <sys/stat.h> 7 #include <sys/types.h> 3 8 4 9 using namespace bdm; 5 10 6 //These lines are needed for use of cout and endl 7 using std::cout; 8 using std::endl; 11 TEST(test_dirfilelog) 12 { 13 RV th = RV("{alog blog }"); 14 RV r = RV("{r }", "2"); 9 15 10 int main() 11 { 12 int i; 13 14 RV th = RV ( "{a b }"); 15 RV r = RV ( "{r }","2"); 16 if (mkdir("exp", 0777)) { 17 remove_all("exp/dirfile"); 18 } 16 19 17 dirfilelog L("exp/dirfile",10); 18 19 int rid; 20 int thid; 21 22 rid=L.add(r,""); 23 thid=L.add(th,"th"); 24 25 L.init(); 20 dirfilelog L("exp/dirfile", 10); 26 21 27 for (i=0; i<150; i++){ 28 L.logit(rid,vec_2((double)i,(double)(i+1))); 29 L.logit(thid,vec_2((double)(100-i),(double)(i-50))); 30 L.step(); 31 } 32 L.finalize(); 22 int rid; 23 int thid; 24 25 rid = L.add(r, ""); 26 thid = L.add(th, "th"); 27 28 L.init(); 29 30 for (int i = 0; i < 150; i++) { 31 L.logit(rid, vec_2((double)i, (double)(i + 1))); 32 L.logit(thid, vec_2((double)(100 - i), (double)(i - 50))); 33 L.step(); 34 } 35 36 L.finalize(); 37 38 std::string expected(load_test_file("dirfile-format.matrix")); 39 std::string actual(load_test_file("exp/dirfile/format")); 40 CHECK_EQUAL(expected, actual); 33 41 } -
library/tests/test_user_info.cpp
r418 r425 1 #include <fstream>2 1 #include <memory> 3 2 #include <string> 4 3 #include <string.h> 5 4 #include "base/user_info.h" 5 #include "test_util.h" 6 6 #include "UnitTest++.h" 7 7 … … 196 196 UIREGISTER(Bike); 197 197 198 // Non-general but simple file load - handles only files of limited199 // size which do not contain '\0' characters, but for testing that200 // 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 198 TEST(test_load) 211 199 {