Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1833)

Unified Diff: chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc

Issue 183973029: Refactoring of the NetworkPortalDetector. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixes. Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc
diff --git a/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc b/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc
index f5898d6b76091ae4a97a74d1732ca56a6f782471..a740fb4ccecd940afa28e9b97406b07264f14e22 100644
--- a/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc
+++ b/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc
@@ -63,8 +63,7 @@ class ResultHistogramChecker {
public:
explicit ResultHistogramChecker(base::HistogramSamples* base)
: base_(base),
- count_(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_COUNT) {
- }
+ count_(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_COUNT) {}
virtual ~ResultHistogramChecker() {}
ResultHistogramChecker* Expect(
@@ -146,8 +145,8 @@ class NetworkPortalDetectorImplTest
set_time_ticks(base::TimeTicks::Now());
if (base::HistogramBase* histogram =
- base::StatisticsRecorder::FindHistogram(
- NetworkPortalDetectorImpl::kDetectionResultHistogram)) {
+ base::StatisticsRecorder::FindHistogram(
+ NetworkPortalDetectorImpl::kDetectionResultHistogram)) {
original_samples_.reset(histogram->SnapshotSamples().release());
}
}
@@ -157,6 +156,7 @@ class NetworkPortalDetectorImplTest
profile_.reset();
NetworkHandler::Shutdown();
DBusThreadManager::Shutdown();
+ PortalDetectorStrategy::reset_fields_for_testing();
}
void CheckPortalState(NetworkPortalDetector::CaptivePortalStatus status,
@@ -168,14 +168,14 @@ class NetworkPortalDetectorImplTest
ASSERT_EQ(response_code, state.response_code);
}
- void CheckRequestTimeoutAndCompleteAttempt(
- int expected_attempt_count,
- int expected_request_timeout_sec,
- int net_error,
- int status_code) {
+ void CheckRequestTimeoutAndCompleteAttempt(int expected_attempt_count,
+ int expected_request_timeout_sec,
+ int net_error,
+ int status_code) {
ASSERT_TRUE(is_state_checking_for_portal());
ASSERT_EQ(expected_attempt_count, attempt_count());
- ASSERT_EQ(expected_request_timeout_sec, get_request_timeout_sec());
+ ASSERT_EQ(base::TimeDelta::FromSeconds(expected_request_timeout_sec),
+ get_next_attempt_timeout());
CompleteURLFetch(net_error, status_code, NULL);
}
@@ -193,25 +193,28 @@ class NetworkPortalDetectorImplTest
return network_portal_detector()->StartDetectionIfIdle();
}
- void enable_lazy_detection() {
- network_portal_detector()->EnableLazyDetection();
+ void enable_error_screen_strategy() {
+ network_portal_detector()->EnableErrorScreenStrategy();
+ }
+
+ void disable_error_screen_strategy() {
+ network_portal_detector()->DisableErrorScreenStrategy();
}
- void disable_lazy_detection() {
- network_portal_detector()->DisableLazyDetection();
+ void stop_detection() {
+ network_portal_detector()->StopDetection();
}
- void cancel_portal_detection() {
- network_portal_detector()->CancelPortalDetection();
+ bool attempt_timeout_is_cancelled() {
+ return network_portal_detector()->AttemptTimeoutIsCancelledForTesting();
}
- bool detection_timeout_is_cancelled() {
- return
- network_portal_detector()->DetectionTimeoutIsCancelledForTesting();
+ base::TimeDelta get_next_attempt_timeout() {
+ return network_portal_detector()->strategy_->GetNextAttemptTimeout();
}
- int get_request_timeout_sec() {
- return network_portal_detector()->GetRequestTimeoutSec();
+ void set_next_attempt_timeout(const base::TimeDelta& timeout) {
+ PortalDetectorStrategy::set_next_attempt_timeout_for_testing(timeout);
}
bool is_state_idle() {
@@ -226,9 +229,7 @@ class NetworkPortalDetectorImplTest
return (NetworkPortalDetectorImpl::STATE_CHECKING_FOR_PORTAL == state());
}
- void set_request_timeout(const base::TimeDelta& timeout) {
- network_portal_detector()->set_request_timeout_for_testing(timeout);
- }
+
const base::TimeDelta& next_attempt_delay() {
return network_portal_detector()->next_attempt_delay_for_testing();
@@ -239,15 +240,11 @@ class NetworkPortalDetectorImplTest
}
void set_attempt_count(int ac) {
- return network_portal_detector()->set_attempt_count_for_testing(ac);
- }
-
- void set_min_time_between_attempts(const base::TimeDelta& delta) {
- network_portal_detector()->set_min_time_between_attempts_for_testing(delta);
+ network_portal_detector()->set_attempt_count_for_testing(ac);
}
- void set_lazy_check_interval(const base::TimeDelta& delta) {
- network_portal_detector()->set_lazy_check_interval_for_testing(delta);
+ void set_delay_till_next_attempt(const base::TimeDelta& delta) {
+ PortalDetectorStrategy::set_delay_till_next_attempt_for_testing(delta);
}
void set_time_ticks(const base::TimeTicks& time_ticks) {
@@ -257,8 +254,10 @@ class NetworkPortalDetectorImplTest
void SetBehindPortal(const std::string& service_path) {
DBusThreadManager::Get()->GetShillServiceClient()->SetProperty(
dbus::ObjectPath(service_path),
- shill::kStateProperty, base::StringValue(shill::kStatePortal),
- base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction));
+ shill::kStateProperty,
+ base::StringValue(shill::kStatePortal),
+ base::Bind(&base::DoNothing),
+ base::Bind(&ErrorCallbackFunction));
base::RunLoop().RunUntilIdle();
}
@@ -273,14 +272,16 @@ class NetworkPortalDetectorImplTest
void SetConnected(const std::string& service_path) {
DBusThreadManager::Get()->GetShillServiceClient()->Connect(
dbus::ObjectPath(service_path),
- base::Bind(&base::DoNothing), base::Bind(&ErrorCallbackFunction));
+ base::Bind(&base::DoNothing),
+ base::Bind(&ErrorCallbackFunction));
base::RunLoop().RunUntilIdle();
}
void SetDisconnected(const std::string& service_path) {
DBusThreadManager::Get()->GetShillServiceClient()->Disconnect(
dbus::ObjectPath(service_path),
- base::Bind(&*base::DoNothing), base::Bind(&ErrorCallbackFunction));
+ base::Bind(&*base::DoNothing),
+ base::Bind(&ErrorCallbackFunction));
base::RunLoop().RunUntilIdle();
}
@@ -299,20 +300,28 @@ class NetworkPortalDetectorImplTest
const bool add_to_watchlist = true;
service_test->AddService(kStubEthernet,
kStubEthernet,
- shill::kTypeEthernet, shill::kStateIdle,
- add_to_visible, add_to_watchlist);
+ shill::kTypeEthernet,
+ shill::kStateIdle,
+ add_to_visible,
+ add_to_watchlist);
service_test->AddService(kStubWireless1,
kStubWireless1,
- shill::kTypeWifi, shill::kStateIdle,
- add_to_visible, add_to_watchlist);
+ shill::kTypeWifi,
+ shill::kStateIdle,
+ add_to_visible,
+ add_to_watchlist);
service_test->AddService(kStubWireless2,
kStubWireless2,
- shill::kTypeWifi, shill::kStateIdle,
- add_to_visible, add_to_watchlist);
+ shill::kTypeWifi,
+ shill::kStateIdle,
+ add_to_visible,
+ add_to_watchlist);
service_test->AddService(kStubCellular,
kStubCellular,
- shill::kTypeCellular, shill::kStateIdle,
- add_to_visible, add_to_watchlist);
+ shill::kTypeCellular,
+ shill::kStateIdle,
+ add_to_visible,
+ add_to_watchlist);
}
void SetupNetworkHandler() {
@@ -332,17 +341,18 @@ TEST_F(NetworkPortalDetectorImplTest, NoPortal) {
SetConnected(kStubWireless1);
ASSERT_TRUE(is_state_checking_for_portal());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, Portal) {
@@ -355,8 +365,8 @@ TEST_F(NetworkPortalDetectorImplTest, Portal) {
CompleteURLFetch(net::OK, 200, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
// Check HTTP 301 response code.
SetConnected(kStubWireless2);
@@ -365,8 +375,8 @@ TEST_F(NetworkPortalDetectorImplTest, Portal) {
CompleteURLFetch(net::OK, 301, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 301,
- kStubWireless2);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 301, kStubWireless2);
// Check HTTP 302 response code.
SetConnected(kStubEthernet);
@@ -375,12 +385,13 @@ TEST_F(NetworkPortalDetectorImplTest, Portal) {
CompleteURLFetch(net::OK, 302, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 302,
- kStubEthernet);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 302, kStubEthernet);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 3)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 3)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, Online2Offline) {
@@ -430,9 +441,10 @@ TEST_F(NetworkPortalDetectorImplTest, Online2Offline) {
network_portal_detector()->RemoveObserver(&observer);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, TwoNetworks) {
@@ -451,15 +463,16 @@ TEST_F(NetworkPortalDetectorImplTest, TwoNetworks) {
// ethernet is in online state.
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubEthernet);
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubEthernet);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, NetworkChanged) {
@@ -481,17 +494,18 @@ TEST_F(NetworkPortalDetectorImplTest, NetworkChanged) {
// ethernet is in online state.
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubEthernet);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubEthernet);
// As active network was changed during portal detection for wifi
// network, it's state must be unknown.
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, NetworkStateNotChanged) {
@@ -503,15 +517,16 @@ TEST_F(NetworkPortalDetectorImplTest, NetworkStateNotChanged) {
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
SetConnected(kStubWireless1);
ASSERT_TRUE(is_state_idle());
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, NetworkStateChanged) {
@@ -524,8 +539,8 @@ TEST_F(NetworkPortalDetectorImplTest, NetworkStateChanged) {
CompleteURLFetch(net::OK, 200, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
SetConnected(kStubWireless1);
ASSERT_TRUE(is_state_checking_for_portal());
@@ -533,8 +548,8 @@ TEST_F(NetworkPortalDetectorImplTest, NetworkStateChanged) {
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
SetBehindPortal(kStubWireless1);
ASSERT_TRUE(is_state_checking_for_portal());
@@ -542,20 +557,21 @@ TEST_F(NetworkPortalDetectorImplTest, NetworkStateChanged) {
CompleteURLFetch(net::OK, 200, NULL);
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 2)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 2)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, PortalDetectionTimeout) {
ASSERT_TRUE(is_state_idle());
// For instantaneous timeout.
- set_request_timeout(base::TimeDelta::FromSeconds(0));
+ set_next_attempt_timeout(base::TimeDelta::FromSeconds(0));
ASSERT_TRUE(is_state_idle());
ASSERT_EQ(0, attempt_count());
@@ -581,6 +597,7 @@ TEST_F(NetworkPortalDetectorImplTest, PortalDetectionRetryAfter) {
ASSERT_EQ(0, attempt_count());
SetConnected(kStubWireless1);
+ ASSERT_TRUE(is_state_checking_for_portal());
CompleteURLFetch(net::OK, 503, retry_after);
// First portal detection completed, next portal detection is
@@ -616,7 +633,7 @@ TEST_F(NetworkPortalDetectorImplTest, PortalDetectorRetryAfterIsSmall) {
TEST_F(NetworkPortalDetectorImplTest, FirstAttemptFailed) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
const char* retry_after = "HTTP/1.1 503 OK\nRetry-After: 0\n\n";
ASSERT_TRUE(is_state_idle());
@@ -635,18 +652,19 @@ TEST_F(NetworkPortalDetectorImplTest, FirstAttemptFailed) {
CompleteURLFetch(net::OK, 204, NULL);
ASSERT_TRUE(is_state_idle());
ASSERT_EQ(2, attempt_count());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, AllAttemptsFailed) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
const char* retry_after = "HTTP/1.1 503 OK\nRetry-After: 0\n\n";
ASSERT_TRUE(is_state_idle());
@@ -673,61 +691,61 @@ TEST_F(NetworkPortalDetectorImplTest, AllAttemptsFailed) {
CompleteURLFetch(net::OK, 503, retry_after);
ASSERT_TRUE(is_state_idle());
ASSERT_EQ(3, attempt_count());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 503,
+ CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE,
+ 503,
kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, ProxyAuthRequired) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetConnected(kStubWireless1);
CompleteURLFetch(net::OK, 407, NULL);
ASSERT_EQ(1, attempt_count());
ASSERT_TRUE(is_state_idle());
CheckPortalState(
- NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PROXY_AUTH_REQUIRED, 407,
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PROXY_AUTH_REQUIRED,
+ 407,
kStubWireless1);
- ASSERT_TRUE(
- MakeResultHistogramChecker()
- ->Expect(
- NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PROXY_AUTH_REQUIRED, 1)
- ->Check());
+ ASSERT_TRUE(MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::
+ CAPTIVE_PORTAL_STATUS_PROXY_AUTH_REQUIRED,
+ 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, NoResponseButBehindPortal) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetBehindPortal(kStubWireless1);
ASSERT_TRUE(is_state_checking_for_portal());
- CompleteURLFetch(net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID,
- NULL);
+ CompleteURLFetch(
+ net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID, NULL);
ASSERT_EQ(1, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
- CompleteURLFetch(net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID,
- NULL);
+ CompleteURLFetch(
+ net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID, NULL);
ASSERT_EQ(2, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
- CompleteURLFetch(net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID,
- NULL);
+ CompleteURLFetch(
+ net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID, NULL);
ASSERT_EQ(3, attempt_count());
ASSERT_TRUE(is_state_idle());
@@ -735,17 +753,19 @@ TEST_F(NetworkPortalDetectorImplTest, NoResponseButBehindPortal) {
net::URLFetcher::RESPONSE_CODE_INVALID,
kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
+ ->Check());
}
-TEST_F(NetworkPortalDetectorImplTest, DisableLazyDetectionWhilePendingRequest) {
+TEST_F(NetworkPortalDetectorImplTest,
+ DisableErrorScreenStrategyWhilePendingRequest) {
ASSERT_TRUE(is_state_idle());
set_attempt_count(3);
- enable_lazy_detection();
+ enable_error_screen_strategy();
ASSERT_TRUE(is_state_portal_detection_pending());
- disable_lazy_detection();
+ disable_error_screen_strategy();
// To run CaptivePortalDetector::DetectCaptivePortal().
base::MessageLoop::current()->RunUntilIdle();
@@ -753,77 +773,65 @@ TEST_F(NetworkPortalDetectorImplTest, DisableLazyDetectionWhilePendingRequest) {
ASSERT_TRUE(MakeResultHistogramChecker()->Check());
}
-TEST_F(NetworkPortalDetectorImplTest, LazyDetectionForOnlineNetwork) {
+TEST_F(NetworkPortalDetectorImplTest, ErrorScreenStrategyForOnlineNetwork) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
- set_lazy_check_interval(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetConnected(kStubWireless1);
- enable_lazy_detection();
+ enable_error_screen_strategy();
CompleteURLFetch(net::OK, 204, NULL);
- ASSERT_EQ(1, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
CheckPortalState(
- NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
CompleteURLFetch(net::OK, 204, NULL);
- ASSERT_EQ(2, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
CheckPortalState(
- NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
- disable_lazy_detection();
+ disable_error_screen_strategy();
- // One more detection result, because DizableLazyDetection() doesn't
- // cancel last detection request.
- CompleteURLFetch(net::OK, 204, NULL);
- ASSERT_EQ(3, attempt_count());
ASSERT_TRUE(is_state_idle());
CheckPortalState(
- NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
-TEST_F(NetworkPortalDetectorImplTest, LazyDetectionForPortalNetwork) {
+TEST_F(NetworkPortalDetectorImplTest, ErrorScreenStrategyForPortalNetwork) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
- set_lazy_check_interval(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
+ enable_error_screen_strategy();
SetConnected(kStubWireless1);
- enable_lazy_detection();
- CompleteURLFetch(net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID,
- NULL);
+ CompleteURLFetch(
+ net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID, NULL);
ASSERT_EQ(1, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
- CompleteURLFetch(net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID,
- NULL);
+ CompleteURLFetch(
+ net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID, NULL);
ASSERT_EQ(2, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
@@ -831,49 +839,46 @@ TEST_F(NetworkPortalDetectorImplTest, LazyDetectionForPortalNetwork) {
CompleteURLFetch(net::OK, 200, NULL);
ASSERT_EQ(3, attempt_count());
ASSERT_TRUE(is_state_portal_detection_pending());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
// To run CaptivePortalDetector::DetectCaptivePortal().
base::RunLoop().RunUntilIdle();
- disable_lazy_detection();
+ disable_error_screen_strategy();
- // One more detection result, because DizableLazyDetection() doesn't
- // cancel last detection request.
- CompleteURLFetch(net::OK, 200, NULL);
- ASSERT_EQ(3, attempt_count());
ASSERT_TRUE(is_state_idle());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, DetectionTimeoutIsCancelled) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetConnected(kStubWireless1);
ASSERT_TRUE(is_state_checking_for_portal());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
- cancel_portal_detection();
+ stop_detection();
ASSERT_TRUE(is_state_idle());
- ASSERT_TRUE(detection_timeout_is_cancelled());
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1,
- kStubWireless1);
+ ASSERT_TRUE(attempt_timeout_is_cancelled());
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_UNKNOWN, -1, kStubWireless1);
ASSERT_TRUE(MakeResultHistogramChecker()->Check());
}
TEST_F(NetworkPortalDetectorImplTest, TestDetectionRestart) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
// First portal detection attempts determines ONLINE state.
SetConnected(kStubWireless1);
@@ -882,8 +887,8 @@ TEST_F(NetworkPortalDetectorImplTest, TestDetectionRestart) {
CompleteURLFetch(net::OK, 204, NULL);
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 204, kStubWireless1);
ASSERT_TRUE(is_state_idle());
// First portal detection attempts determines PORTAL state.
@@ -895,97 +900,110 @@ TEST_F(NetworkPortalDetectorImplTest, TestDetectionRestart) {
ASSERT_TRUE(is_state_checking_for_portal());
CompleteURLFetch(net::OK, 200, NULL);
- CheckPortalState(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200,
- kStubWireless1);
+ CheckPortalState(
+ NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 200, kStubWireless1);
ASSERT_TRUE(is_state_idle());
- ASSERT_TRUE(MakeResultHistogramChecker()->
- Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)->
- Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)->
- Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_PORTAL, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, RequestTimeouts) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
- set_lazy_check_interval(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetNetworkDeviceEnabled(shill::kTypeWifi, false);
SetConnected(kStubCellular);
// First portal detection attempt for cellular1 uses 5sec timeout.
- CheckRequestTimeoutAndCompleteAttempt(1, 5, net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID);
+ CheckRequestTimeoutAndCompleteAttempt(
+ 0, 5, net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID);
// Second portal detection attempt for cellular1 uses 10sec timeout.
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
- CheckRequestTimeoutAndCompleteAttempt(2, 10, net::ERR_CONNECTION_CLOSED,
+ CheckRequestTimeoutAndCompleteAttempt(1,
+ 10,
+ net::ERR_CONNECTION_CLOSED,
net::URLFetcher::RESPONSE_CODE_INVALID);
// Third portal detection attempt for cellular1 uses 15sec timeout.
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
- CheckRequestTimeoutAndCompleteAttempt(3, 15, net::ERR_CONNECTION_CLOSED,
+ CheckRequestTimeoutAndCompleteAttempt(2,
+ 15,
+ net::ERR_CONNECTION_CLOSED,
net::URLFetcher::RESPONSE_CODE_INVALID);
ASSERT_TRUE(is_state_idle());
// Check that in lazy detection for cellular1 15sec timeout is used.
- enable_lazy_detection();
+ enable_error_screen_strategy();
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
- disable_lazy_detection();
- CheckRequestTimeoutAndCompleteAttempt(3, 15, net::ERR_CONNECTION_CLOSED,
+ CheckRequestTimeoutAndCompleteAttempt(0,
+ 15,
+ net::ERR_CONNECTION_CLOSED,
net::URLFetcher::RESPONSE_CODE_INVALID);
+ disable_error_screen_strategy();
ASSERT_TRUE(is_state_idle());
SetNetworkDeviceEnabled(shill::kTypeWifi, true);
SetConnected(kStubWireless1);
// First portal detection attempt for wifi1 uses 5sec timeout.
- CheckRequestTimeoutAndCompleteAttempt(1, 5, net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID);
+ CheckRequestTimeoutAndCompleteAttempt(
+ 0, 5, net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID);
// Second portal detection attempt for wifi1 also uses 5sec timeout.
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
- CheckRequestTimeoutAndCompleteAttempt(2, 10, net::OK, 204);
+ CheckRequestTimeoutAndCompleteAttempt(1, 10, net::OK, 204);
ASSERT_TRUE(is_state_idle());
- // Check that in lazy detection for wifi1 5sec timeout is used.
- enable_lazy_detection();
+ // Check that in error screen strategy detection for wifi1 15sec
+ // timeout is used.
+ enable_error_screen_strategy();
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
- disable_lazy_detection();
- CheckRequestTimeoutAndCompleteAttempt(3, 15, net::OK, 204);
+ CheckRequestTimeoutAndCompleteAttempt(0, 15, net::OK, 204);
+ disable_error_screen_strategy();
ASSERT_TRUE(is_state_idle());
+ return;
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
TEST_F(NetworkPortalDetectorImplTest, StartDetectionIfIdle) {
ASSERT_TRUE(is_state_idle());
- set_min_time_between_attempts(base::TimeDelta());
+ set_delay_till_next_attempt(base::TimeDelta());
SetConnected(kStubWireless1);
// First portal detection attempt for wifi1 uses 5sec timeout.
- CheckRequestTimeoutAndCompleteAttempt(1, 5, net::ERR_CONNECTION_CLOSED,
- net::URLFetcher::RESPONSE_CODE_INVALID);
+ CheckRequestTimeoutAndCompleteAttempt(
+ 0, 5, net::ERR_CONNECTION_CLOSED, net::URLFetcher::RESPONSE_CODE_INVALID);
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
// Second portal detection attempt for wifi1 uses 10sec timeout.
- CheckRequestTimeoutAndCompleteAttempt(2, 10, net::ERR_CONNECTION_CLOSED,
+ CheckRequestTimeoutAndCompleteAttempt(1,
+ 10,
+ net::ERR_CONNECTION_CLOSED,
net::URLFetcher::RESPONSE_CODE_INVALID);
ASSERT_TRUE(is_state_portal_detection_pending());
base::RunLoop().RunUntilIdle();
// Second portal detection attempt for wifi1 uses 15sec timeout.
- CheckRequestTimeoutAndCompleteAttempt(3, 15, net::ERR_CONNECTION_CLOSED,
+ CheckRequestTimeoutAndCompleteAttempt(2,
+ 15,
+ net::ERR_CONNECTION_CLOSED,
net::URLFetcher::RESPONSE_CODE_INVALID);
ASSERT_TRUE(is_state_idle());
start_detection_if_idle();
@@ -994,13 +1012,14 @@ TEST_F(NetworkPortalDetectorImplTest, StartDetectionIfIdle) {
// First portal detection attempt for wifi1 uses 5sec timeout.
base::RunLoop().RunUntilIdle();
- CheckRequestTimeoutAndCompleteAttempt(1, 5, net::OK, 204);
+ CheckRequestTimeoutAndCompleteAttempt(0, 5, net::OK, 204);
ASSERT_TRUE(is_state_idle());
- ASSERT_TRUE(MakeResultHistogramChecker()
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
- ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
- ->Check());
+ ASSERT_TRUE(
+ MakeResultHistogramChecker()
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_OFFLINE, 1)
+ ->Expect(NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE, 1)
+ ->Check());
}
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698