- File:
-
- 1 edited
-
src/unittests/manipulateAtomsTest.cpp (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/unittests/manipulateAtomsTest.cpp
r229e3c r57adc7 22 22 #include "atom.hpp" 23 23 24 #ifdef HAVE_TESTRUNNER25 #include "UnitTestMain.hpp"26 #endif /*HAVE_TESTRUNNER*/27 28 24 // Registers the fixture into the 'registry' 29 25 CPPUNIT_TEST_SUITE_REGISTRATION( manipulateAtomsTest ); … … 34 30 AtomStub(int _id) : 35 31 atom(), 36 manipulated(false),37 id(_id)32 id(_id), 33 manipulated(false) 38 34 {} 39 35 … … 70 66 // set up and tear down 71 67 void manipulateAtomsTest::setUp(){ 72 World::get Instance();68 World::get(); 73 69 for(int i=0;i<ATOM_COUNT;++i){ 74 70 atoms[i]= new AtomStub(i); 75 World::get Instance().registerAtom(atoms[i]);71 World::get()->registerAtom(atoms[i]); 76 72 } 77 73 } 78 74 void manipulateAtomsTest::tearDown(){ 79 World::purgeInstance(); 80 ActionRegistry::purgeInstance(); 75 World::destroy(); 76 ActionRegistry::purgeRegistry(); 77 } 78 79 // some helper functions 80 static bool hasAll(std::vector<atom*> atoms,int min, int max, std::set<int> excluded = std::set<int>()){ 81 for(int i=min;i<max;++i){ 82 if(!excluded.count(i)){ 83 std::vector<atom*>::iterator iter; 84 bool res=false; 85 for(iter=atoms.begin();iter!=atoms.end();++iter){ 86 res |= (*iter)->getId() == i; 87 } 88 if(!res) { 89 cout << "Atom " << i << " missing in returned list" << endl; 90 return false; 91 } 92 } 93 } 94 return true; 95 } 96 97 static bool hasNoDuplicates(std::vector<atom*> atoms){ 98 std::set<int> found; 99 std::vector<atom*>::iterator iter; 100 for(iter=atoms.begin();iter!=atoms.end();++iter){ 101 int id = (*iter)->getId(); 102 if(found.count(id)) 103 return false; 104 found.insert(id); 105 } 106 return true; 81 107 } 82 108 … … 89 115 90 116 void manipulateAtomsTest::testManipulateSimple(){ 91 ManipulateAtomsProcess *proc = World::get Instance().manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms());117 ManipulateAtomsProcess *proc = World::get()->manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms()); 92 118 proc->call(); 93 std::vector<atom*> allAtoms = World::get Instance().getAllAtoms(AllAtoms());119 std::vector<atom*> allAtoms = World::get()->getAllAtoms(AllAtoms()); 94 120 std::vector<atom*>::iterator iter; 95 121 for(iter=allAtoms.begin();iter!=allAtoms.end();++iter){ … … 102 128 103 129 void manipulateAtomsTest::testManipulateExcluded(){ 104 105 ManipulateAtomsProcess *proc = World::getInstance().manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms() && !AtomById(ATOM_COUNT/2)); 130 ManipulateAtomsProcess *proc = World::get()->manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms() && !AtomById(ATOM_COUNT/2)); 106 131 proc->call(); 107 std::vector<atom*> allAtoms = World::get Instance().getAllAtoms(AllAtoms());132 std::vector<atom*> allAtoms = World::get()->getAllAtoms(AllAtoms()); 108 133 std::vector<atom*>::iterator iter; 109 134 for(iter=allAtoms.begin();iter!=allAtoms.end();++iter){ … … 120 145 void manipulateAtomsTest::testObserver(){ 121 146 countObserver *obs = new countObserver(); 122 World::get Instance().signOn(obs);123 ManipulateAtomsProcess *proc = World::get Instance().manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms());147 World::get()->signOn(obs); 148 ManipulateAtomsProcess *proc = World::get()->manipulateAtoms(boost::bind(operation,_1),"FOO",AllAtoms() && !AtomById(ATOM_COUNT/2)); 124 149 proc->call(); 125 150 126 151 CPPUNIT_ASSERT_EQUAL(1,obs->count); 127 World::get Instance().signOff(obs);152 World::get()->signOff(obs); 128 153 delete obs; 129 154 }
Note:
See TracChangeset
for help on using the changeset viewer.
