Changeset 9e619e for src/Observer
- Timestamp:
- Dec 13, 2015, 5:37:05 PM (10 years ago)
- Children:
- afbe20
- Parents:
- ba6aa5
- git-author:
- Frederik Heber <heber@…> (12/13/15 17:01:34)
- git-committer:
- Frederik Heber <heber@…> (12/13/15 17:37:05)
- Location:
- src/Observer
- Files:
-
- 3 edited
-
Makefile.am (modified) (1 diff)
-
unittests/ObservedContainerUnitTest.cpp (modified) (3 diffs)
-
unittests/ObservedContainerUnitTest.hpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Observer/Makefile.am
rba6aa5 r9e619e 32 32 $(top_srcdir)/src/CodePatterns/Observer/ObservedIterator.hpp \ 33 33 $(top_srcdir)/src/CodePatterns/Observer/ObservedContainer_impl.hpp \ 34 $(top_srcdir)/src/CodePatterns/Observer/UnobservedIterator.hpp \ 34 35 $(top_srcdir)/src/CodePatterns/Observer/Relay.hpp \ 35 36 $(top_srcdir)/src/CodePatterns/Observer/Zombie.hpp -
src/Observer/unittests/ObservedContainerUnitTest.cpp
rba6aa5 r9e619e 30 30 #include "CodePatterns/Observer/ObservedContainer.hpp" 31 31 #include "CodePatterns/Observer/ObservedContainer_impl.hpp" 32 #include "CodePatterns/Observer/ObservedIterator.hpp" 33 #include "CodePatterns/Observer/UnobservedIterator.hpp" 32 34 33 35 #include "ObservedContainerUnitTest.hpp" … … 56 58 void ObservedContainerTest::IteratorMapTest() 57 59 { 58 typedef ObservedContainer< std::map<int, int> > OC;60 typedef ObservedContainer< std::map<int, int>, ObservedIterator<std::map<int, int> > > OC; 59 61 OC OContainer(simpleObservable1); 60 62 int i; … … 121 123 } 122 124 125 void ObservedContainerTest::IteratorMapNotObservedTest() 126 { 127 typedef ObservedContainer< std::map<int, int>, UnobservedIterator<std::map<int, int> > > OC; 128 OC OContainer(simpleObservable1); 129 int i; 130 131 OContainer.insert( std::pair<int,int> (1,1) ); 132 OContainer.insert( std::pair<int,int> (2,2) ); 133 134 i=0; 135 for (OC::internal_iterator iter = OContainer.begin_internal(); iter != OContainer.end_internal(); ++iter) { 136 i++; 137 CPPUNIT_ASSERT_EQUAL(i, iter->first); 138 CPPUNIT_ASSERT_EQUAL(i, iter->second); 139 } 140 CPPUNIT_ASSERT_EQUAL(i,2); 141 142 i=0; 143 for (OC::iterator iter = OContainer.begin(); iter != OContainer.end(); ++iter) { 144 i++; 145 CPPUNIT_ASSERT_EQUAL(i, iter->first); 146 CPPUNIT_ASSERT_EQUAL(i, iter->second); 147 } 148 CPPUNIT_ASSERT_EQUAL(i,2); 149 150 i=0; 151 for (OC::const_iterator iter = OContainer.begin(); iter != OContainer.end(); ++iter) { 152 i++; 153 CPPUNIT_ASSERT_EQUAL(i, iter->first); 154 CPPUNIT_ASSERT_EQUAL(i, iter->second); 155 } 156 CPPUNIT_ASSERT_EQUAL(i,2); 157 158 i=3; 159 for (OC::reverse_internal_iterator iter = OContainer.rbegin_internal(); iter != OContainer.rend_internal(); ++iter) { 160 i--; 161 CPPUNIT_ASSERT_EQUAL(i, iter->first); 162 CPPUNIT_ASSERT_EQUAL(i, iter->second); 163 } 164 CPPUNIT_ASSERT_EQUAL(i,1); 165 166 /* @todo TODO: Check whether dereferencing ObservedContainer::reverse_iterator 167 * is working now. 168 * I am quite convinced that the reason for us having to use a 169 * const_reverse_iterator below is in stl_iterator.h, where operator* is 170 * implemented with a temporary _Iterator that is returned, i.e. a 171 * temporary object and we are not allowed to dereference from this 172 * temporary object. 173 */ 174 i=3; 175 for (OC::reverse_iterator iter = OContainer.rbegin(); iter != OContainer.rend(); ++iter) { 176 i--; 177 OC::const_reverse_iterator helper = iter; 178 CPPUNIT_ASSERT_EQUAL(i, helper->first); 179 CPPUNIT_ASSERT_EQUAL(i, helper->second); 180 } 181 CPPUNIT_ASSERT_EQUAL(i,1); 182 183 i=3; 184 for (OC::const_reverse_iterator iter = OContainer.rbegin(); iter != OContainer.rend(); ++iter) { 185 i--; 186 CPPUNIT_ASSERT_EQUAL(i, iter->first); 187 CPPUNIT_ASSERT_EQUAL(i, iter->second); 188 } 189 CPPUNIT_ASSERT_EQUAL(i,1); 190 } 191 123 192 // @todo TODO: Check whether ObservedContainer with sets not maps is working now 124 193 void ObservedContainerTest::IteratorSetTest() 125 194 { 126 // typedef ObservedContainer< std::set<int> > OC;195 // typedef ObservedContainer< std::set<int>, ObservedIterator<std::set<int> > > OC; 127 196 // OC OContainer(simpleObservable1); 128 197 // int i; -
src/Observer/unittests/ObservedContainerUnitTest.hpp
rba6aa5 r9e619e 31 31 CPPUNIT_TEST_SUITE( ObservedContainerTest ) ; 32 32 CPPUNIT_TEST ( IteratorMapTest ); 33 CPPUNIT_TEST ( IteratorMapNotObservedTest ); 33 34 CPPUNIT_TEST ( IteratorSetTest ); 34 35 CPPUNIT_TEST_SUITE_END(); … … 39 40 40 41 void IteratorMapTest(); 42 void IteratorMapNotObservedTest(); 41 43 void IteratorSetTest(); 42 44
Note:
See TracChangeset
for help on using the changeset viewer.
