return false;
}
- else if (d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active) {
+ if (d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active) {
if (d_nextCheck > 1) {
--d_nextCheck;
return false;
}
-bool DownstreamState::parseAvailabilityConfigFromStr(DownstreamState::Config& config, const std::string str)
+bool DownstreamState::parseAvailabilityConfigFromStr(DownstreamState::Config& config, const std::string& str)
{
if (pdns_iequals(str, "auto")) {
config.d_availability = DownstreamState::Availability::Auto;
public:
static bool parseSourceParameter(const std::string& source, Config& config);
- static bool parseAvailabilityConfigFromStr(DownstreamState::Config& config, const std::string str);
+ static bool parseAvailabilityConfigFromStr(DownstreamState::Config& config, const std::string& str);
void updateStatisticsInfo()
{
/* prevents a re-connection */
config.remote = ComboAddress("0.0.0.0");
- DownstreamState ds(std::move(config), nullptr, false);
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Auto);
- BOOST_CHECK(ds.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Lazy);
- ds.setUp();
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Up);
- ds.setAuto();
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Auto);
- BOOST_CHECK(ds.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Lazy);
- ds.setActiveAuto();
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Auto);
- BOOST_CHECK(ds.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active);
- ds.setUp();
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Up);
- ds.setAuto();
- BOOST_CHECK(ds.d_config.d_availability == DownstreamState::Availability::Auto);
- BOOST_CHECK(ds.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active);
+ DownstreamState downstream(std::move(config), nullptr, false);
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Auto);
+ BOOST_CHECK(downstream.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Lazy);
+ downstream.setUp();
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Up);
+ downstream.setAuto();
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Auto);
+ BOOST_CHECK(downstream.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Lazy);
+ downstream.setActiveAuto();
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Auto);
+ BOOST_CHECK(downstream.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active);
+ downstream.setUp();
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Up);
+ downstream.setAuto();
+ BOOST_CHECK(downstream.d_config.d_availability == DownstreamState::Availability::Auto);
+ BOOST_CHECK(downstream.d_config.d_healthCheckMode == DownstreamState::HealthCheckMode::Active);
}
BOOST_AUTO_TEST_SUITE_END()