TEST_F(RouterTests, test_invalid_registrations) { Router router; std::unique_ptr<DummyFactory> dummy(new DummyFactory()); ASSERT_THROW( router.addRoute("/", std::move(dummy), Router::route_t::EXACT), RouterException) << "'/' is not allowed."; }
TEST_F(RouterTests, test_valid_registration_route) { Router router; std::unique_ptr<DummyFactory> dummy1(new DummyFactory()); router.addRoute("/dummy1", std::move(dummy1), Router::route_t::EXACT); ASSERT_THROW(router.getHandler("/"), RouterException) << "No catch all registered, access to '/' impossible"; std::unique_ptr<DummyFactory> dummy2(new DummyFactory()); router.addRoute("/dummy2", std::move(dummy2), Router::route_t::CATCH_ALL); router.getHandler("/dummy1"); router.getHandler("/dummy2"); ASSERT_NE(router.getHandler("/"), nullptr) << "A handling factory should be returned"; }