Spaces:
Sleeping
Sleeping
| using namespace CityFlow; | |
| size_t threads = std::min(std::thread::hardware_concurrency(), 4u); | |
| std::string configFile = "examples/config.json"; | |
| TEST(Basic, Basic) { | |
| size_t totalStep = 2000; | |
| Engine engine(configFile, threads); | |
| for (size_t i = 0; i < totalStep; i++) { | |
| engine.nextStep(); | |
| } | |
| SUCCEED(); | |
| } | |
| TEST(Basic, API) { | |
| size_t totalStep = 200; | |
| Engine engine(configFile, threads); | |
| for (size_t i = 0; i < totalStep; i++) { | |
| engine.nextStep(); | |
| engine.getVehicleSpeed(); | |
| engine.getLaneVehicles(); | |
| engine.getLaneWaitingVehicleCount(); | |
| engine.getVehicleDistance(); | |
| engine.getCurrentTime(); | |
| engine.getVehicleCount(); | |
| } | |
| SUCCEED(); | |
| } | |
| TEST(Basic, reset) { | |
| size_t totalStep = 200; | |
| Engine engine(configFile, threads); | |
| for (size_t i = 0; i < totalStep; i++) { | |
| engine.nextStep(); | |
| } | |
| double curTime = engine.getCurrentTime(); | |
| size_t vehCnt = engine.getVehicleCount(); | |
| engine.reset(true); | |
| for (size_t i = 0; i < totalStep; i++) { | |
| engine.nextStep(); | |
| } | |
| EXPECT_EQ(engine.getCurrentTime(), curTime); | |
| EXPECT_EQ(engine.getVehicleCount(), vehCnt); | |
| SUCCEED(); | |
| } | |
| int main(int argc, char* argv[]) { | |
| testing::InitGoogleTest(&argc, argv); | |
| return RUN_ALL_TESTS(); | |
| } |