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

Unified Diff: device/geolocation/fake_location_provider.cc

Issue 2161223003: Adds GeolocationFeature for Blimp Geolocation project. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@engine_feature_prep
Patch Set: Addresses nyquist's #79 comments Created 4 years, 4 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: device/geolocation/fake_location_provider.cc
diff --git a/device/geolocation/mock_location_provider.cc b/device/geolocation/fake_location_provider.cc
similarity index 63%
copy from device/geolocation/mock_location_provider.cc
copy to device/geolocation/fake_location_provider.cc
index 4a7714e98c4bf1f3fa17351f6f2a2c897f30d8c0..3ff449e75d579e2dbe2c45abe990cb7123bf241c 100644
--- a/device/geolocation/mock_location_provider.cc
+++ b/device/geolocation/fake_location_provider.cc
@@ -2,10 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-// This file implements a mock location provider and the factory functions for
+// This file implements a fake location provider and the factory functions for
// various ways of creating it.
+// TODO(lethalantidote): Convert location_arbitrator_impl to use actual mock
+// instead of FakeLocationProvider.
-#include "device/geolocation/mock_location_provider.h"
+#include "device/geolocation/fake_location_provider.h"
#include "base/bind.h"
#include "base/bind_helpers.h"
@@ -17,18 +19,18 @@
namespace device {
-MockLocationProvider::MockLocationProvider()
+FakeLocationProvider::FakeLocationProvider()
: state_(STOPPED),
is_permission_granted_(false),
provider_task_runner_(base::ThreadTaskRunnerHandle::Get()) {}
-MockLocationProvider::~MockLocationProvider() {}
+FakeLocationProvider::~FakeLocationProvider() {}
-bool MockLocationProvider::IsProviderStarted() const {
+bool FakeLocationProvider::IsProviderStarted() const {
return state_ != STOPPED;
}
-void MockLocationProvider::HandlePositionChanged(const Geoposition& position) {
+void FakeLocationProvider::HandlePositionChanged(const Geoposition& position) {
if (provider_task_runner_->BelongsToCurrentThread()) {
// The location arbitrator unit tests rely on this method running
// synchronously.
@@ -36,34 +38,34 @@ void MockLocationProvider::HandlePositionChanged(const Geoposition& position) {
NotifyCallback(position_);
} else {
provider_task_runner_->PostTask(
- FROM_HERE, base::Bind(&MockLocationProvider::HandlePositionChanged,
+ FROM_HERE, base::Bind(&FakeLocationProvider::HandlePositionChanged,
base::Unretained(this), position));
}
}
-bool MockLocationProvider::StartProvider(bool high_accuracy) {
+bool FakeLocationProvider::StartProvider(bool high_accuracy) {
state_ = high_accuracy ? HIGH_ACCURACY : LOW_ACCURACY;
return true;
}
-void MockLocationProvider::StopProvider() {
+void FakeLocationProvider::StopProvider() {
state_ = STOPPED;
}
-const Geoposition& MockLocationProvider::GetPosition() {
+const Geoposition& FakeLocationProvider::GetPosition() {
return position_;
}
-void MockLocationProvider::OnPermissionGranted() {
+void FakeLocationProvider::OnPermissionGranted() {
is_permission_granted_ = true;
}
-// Mock location provider that automatically calls back its client at most
+// Fake location provider that automatically calls back its client at most
// once, when StartProvider or OnPermissionGranted is called. Use
// |requires_permission_to_start| to select which event triggers the callback.
-class AutoMockLocationProvider : public MockLocationProvider {
+class AutoFakeLocationProvider : public FakeLocationProvider {
Wez 2016/08/19 18:50:25 If you've removed the New*() methods below, surely
CJ 2016/08/19 22:22:34 I dont think this class is used anywhere. I'm remo
Wez 2016/08/20 01:42:11 My point was that it _can't_ be used from anywhere
CJ 2016/08/22 17:56:39 No I understood. Sorry poor phrasing by me I guess
public:
- AutoMockLocationProvider(bool has_valid_location,
+ AutoFakeLocationProvider(bool has_valid_location,
bool requires_permission_to_start)
: requires_permission_to_start_(requires_permission_to_start),
listeners_updated_(false) {
@@ -79,7 +81,7 @@ class AutoMockLocationProvider : public MockLocationProvider {
}
}
bool StartProvider(bool high_accuracy) override {
- MockLocationProvider::StartProvider(high_accuracy);
+ FakeLocationProvider::StartProvider(high_accuracy);
if (!requires_permission_to_start_) {
UpdateListenersIfNeeded();
}
@@ -87,7 +89,7 @@ class AutoMockLocationProvider : public MockLocationProvider {
}
void OnPermissionGranted() override {
- MockLocationProvider::OnPermissionGranted();
+ FakeLocationProvider::OnPermissionGranted();
if (requires_permission_to_start_) {
UpdateListenersIfNeeded();
}
@@ -97,7 +99,7 @@ class AutoMockLocationProvider : public MockLocationProvider {
if (!listeners_updated_) {
listeners_updated_ = true;
base::ThreadTaskRunnerHandle::Get()->PostTask(
- FROM_HERE, base::Bind(&MockLocationProvider::HandlePositionChanged,
+ FROM_HERE, base::Bind(&FakeLocationProvider::HandlePositionChanged,
base::Unretained(this), position_));
}
}
@@ -106,23 +108,7 @@ class AutoMockLocationProvider : public MockLocationProvider {
const bool requires_permission_to_start_;
bool listeners_updated_;
- DISALLOW_COPY_AND_ASSIGN(AutoMockLocationProvider);
+ DISALLOW_COPY_AND_ASSIGN(AutoFakeLocationProvider);
};
-LocationProvider* NewMockLocationProvider() {
Wez 2016/08/19 18:50:25 Looks like you've removed these from the .cc but r
CJ 2016/08/19 22:22:33 Ah. Sorry, another merge failure on my part. Gone.
- return new MockLocationProvider;
-}
-
-LocationProvider* NewAutoSuccessMockLocationProvider() {
- return new AutoMockLocationProvider(true, false);
-}
-
-LocationProvider* NewAutoFailMockLocationProvider() {
- return new AutoMockLocationProvider(false, false);
-}
-
-LocationProvider* NewAutoSuccessMockNetworkLocationProvider() {
- return new AutoMockLocationProvider(true, true);
-}
-
} // namespace device

Powered by Google App Engine
This is Rietveld 408576698