Files Classes Functions Hierarchy
#include <mazematrixD2test.h>
Static Public Member Functions | |
| static void | test01 () |
| Link a simple maze and print it out. | |
| static void | test02 () |
| From a simple maze, generate a relative map - local coord system. | |
| static int | unittest01 () |
| Create a small maze, then use mazematrixmapD2 to map it and test coordinates. | |
| static int | unittest02 () |
| Testing mazematrixD2 serialization. | |
Static Public Attributes | |
| static string | doc [] |
| Brief description of each test. | |
Definition at line 7 of file mazematrixD2test.h.
| void mazematrixD2test::test01 | ( | ) | [static] |
Link a simple maze and print it out.
Definition at line 16 of file mazematrixD2test.cpp.
References mazematrixD2< T >::add(), mazematrixD2< T >::link(), mazematrixD2< T >::valid(), and mazematrixD2< T >::vi.
Referenced by main().
00017 { 00018 mazematrixD2<uint> mz(3,3); 00019 00020 uint k; 00021 k = mz.add(); 00022 uint k2; 00023 k2 = mz.add(); 00024 mz.link(k,1,1,3); 00025 00026 mz.link(1,1,2); 00027 mz.link(2,1,3); 00028 mz.link(3,2,6); 00029 mz.link(6,3,5); 00030 mz.link(5,3,4); 00031 mz.link(4,2,7); 00032 mz.link(7,1,8); 00033 mz.link(8,1,9); 00034 mz.link(9,1,k2); 00035 00036 for (uint i=1; i<mz.vi.size(); ++i) 00037 { 00038 cout << (string)mz.vi[i] << endl; 00039 } 00040 00041 assert(mz.valid()); 00042 }
| void mazematrixD2test::test02 | ( | ) | [static] |
From a simple maze, generate a relative map - local coord system.
Definition at line 45 of file mazematrixD2test.cpp.
References mazematrixD2< T >::add(), mazematrixD2< T >::link(), mazematrixD2< T >::valid(), and mazematrixD2< T >::vi.
Referenced by main().
00046 { 00047 mazematrixD2<uint> mz(3,3); 00048 00049 uint k; 00050 k = mz.add(); 00051 uint k2; 00052 k2 = mz.add(); 00053 mz.link(k,1,1,3); 00054 00055 mz.link(1,1,2); 00056 mz.link(2,1,3); 00057 mz.link(3,2,6); 00058 mz.link(6,3,5); 00059 mz.link(5,3,4); 00060 mz.link(4,2,7); 00061 mz.link(7,1,8); 00062 mz.link(8,1,9); 00063 mz.link(9,1,k2); 00064 00065 for (uint i=1; i<mz.vi.size(); ++i) 00066 { 00067 cout << (string)mz.vi[i] << endl; 00068 } 00069 00070 assert(mz.valid()); 00071 00072 mazematrixmapD2<uint,int> mmap(mz,1,1); 00073 00074 mmap.relativeto(1); 00075 mmap.eval(); 00076 00077 for (mmap.reset(); !mmap; ++mmap) 00078 { 00079 cout << "id: " << mmap.currentIndex() << " pos: " << mmap.currentPosition() << endl; 00080 } 00081 00082 }
| int mazematrixD2test::unittest01 | ( | ) | [static] |
Create a small maze, then use mazematrixmapD2 to map it and test coordinates.
Definition at line 85 of file mazematrixD2test.cpp.
References mazematrixD2< T >::add(), mazematrixD2< T >::link(), point2< T >::serializeInverse(), SHOW, mazematrixD2< T >::valid(), and mazematrixD2< T >::vi.
Referenced by main().
00086 { 00087 mazematrixD2<uint> mz(3,3); 00088 00089 uint k; 00090 k = mz.add(); 00091 uint k2; 00092 k2 = mz.add(); 00093 mz.link(k,1,1,3); 00094 00095 mz.link(1,1,2); 00096 mz.link(2,1,3); 00097 mz.link(3,2,6); 00098 mz.link(6,3,5); 00099 mz.link(5,3,4); 00100 mz.link(4,2,7); 00101 mz.link(7,1,8); 00102 mz.link(8,1,9); 00103 mz.link(9,1,k2); 00104 00105 for (uint i=1; i<mz.vi.size(); ++i) 00106 { 00107 cout << (string)mz.vi[i] << endl; 00108 } 00109 00110 assert(mz.valid()); 00111 00112 mazematrixmapD2<uint,int> mmap(mz,1,1); 00113 00114 mmap.relativeto(1); 00115 mmap.eval(); 00116 00117 for (mmap.reset(); !mmap; ++mmap) 00118 { 00119 cout << "id: " << mmap.currentIndex() << " pos: " << mmap.currentPosition() << endl; 00120 } 00121 00122 bool res=true; 00123 res &= (mmap.ipt[1]==point2<int>(0,0)); 00124 00125 string pos[] = 00126 { 00127 "0 0", "0 0", "1 0", "2 0", 00128 "0 -1", "1 -1", "2 -1", "0 -2", 00129 "1 -2", "2 -2", "-1 0", "3 -2" 00130 }; 00131 uint possize = sizeof(pos)/sizeof(string); 00132 cout << SHOW(possize) << endl; 00133 00134 point2<int> pi; 00135 for (uint i=1; i<possize; ++i) 00136 { 00137 pi.serializeInverse(pos[i]); 00138 res &= (mmap.ipt[i]==pi); 00139 cout << SHOW(i) << " " << SHOW(res) << endl; 00140 } 00141 00142 if (res==false) 00143 return 1; 00144 00145 return 0; 00146 }
| int mazematrixD2test::unittest02 | ( | ) | [static] |
Testing mazematrixD2 serialization.
Definition at line 148 of file mazematrixD2test.cpp.
References mazematrixD2createmaze< T >::buildpropermaze(), and mazematrixD2< T >::serializeInverse().
Referenced by main().
00149 { 00150 mazematrixD2<uint> mz(4,4); 00151 mazematrixD2createmaze<uint> mc(mz); 00152 mc.buildpropermaze(); 00153 00154 string s1=(string)mz; 00155 cout << s1 << endl; 00156 00157 mazematrixD2<uint> mz2; 00158 mz2.serializeInverse(s1); 00159 string s2=(string)mz2; 00160 cout << s2 << endl; 00161 00162 if (s1==s2) 00163 return 0; 00164 00165 return 1; 00166 }
string mazematrixD2test::doc [static] |
Initial value:
{
"",
"Link a simple maze and print it out.",
"From a simple maze, generate a relative map - local coord system.",
"Create a small maze, then use mazematrixmapD2 to map it and test coordinates.",
"Testing mazematrixD2 serialization."
}
Definition at line 12 of file mazematrixD2test.h.
Referenced by main().
1.5.8