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

Unified Diff: content/browser/geolocation/gateway_data_provider_common_unittest.cc

Issue 6597044: Revert 76228 - Move core pieces of geolocation from chrome to content.This is... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 10 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: content/browser/geolocation/gateway_data_provider_common_unittest.cc
===================================================================
--- content/browser/geolocation/gateway_data_provider_common_unittest.cc (revision 76230)
+++ content/browser/geolocation/gateway_data_provider_common_unittest.cc (working copy)
@@ -1,190 +0,0 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/scoped_ptr.h"
-#include "base/string_util.h"
-#include "base/third_party/dynamic_annotations/dynamic_annotations.h"
-#include "base/utf_string_conversions.h"
-#include "content/browser/geolocation/gateway_data_provider_common.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-using testing::_;
-using testing::AtLeast;
-using testing::DoDefault;
-using testing::Invoke;
-using testing::Return;
-
-namespace {
-
-class MockGatewayApi : public GatewayDataProviderCommon::GatewayApiInterface {
- public:
- MockGatewayApi() {
- ON_CALL(*this, GetRouterData(_))
- .WillByDefault(Invoke(this, &MockGatewayApi::GetRouterDataInternal));
- }
-
- MOCK_METHOD1(GetRouterData, bool(GatewayData::RouterDataSet* data));
-
- GatewayData::RouterDataSet data_out_;
-
- private:
- bool GetRouterDataInternal(GatewayData::RouterDataSet* data) {
- *data = data_out_;
- return true;
- }
-};
-
-// Stops the specified (nested) message loop when the listener is called back.
-class MessageLoopQuitListener
- : public GatewayDataProviderCommon::ListenerInterface {
- public:
- explicit MessageLoopQuitListener(MessageLoop* message_loop)
- : message_loop_to_quit_(message_loop) {
- CHECK(message_loop_to_quit_);
- }
-
- // ListenerInterface
- virtual void DeviceDataUpdateAvailable(
- DeviceDataProvider<GatewayData>* provider) {
- // Provider should call back on client's thread.
- EXPECT_EQ(MessageLoop::current(), message_loop_to_quit_);
- provider_ = provider;
- message_loop_to_quit_->QuitNow();
- }
-
- MessageLoop* message_loop_to_quit_;
- DeviceDataProvider<GatewayData>* provider_;
-};
-
-class MockGatewayPollingPolicy : public GatewayPollingPolicyInterface {
- public:
- MockGatewayPollingPolicy() {
- ON_CALL(*this, PollingInterval())
- .WillByDefault(Return(1));
- ON_CALL(*this, NoRouterInterval())
- .WillByDefault(Return(1));
- }
-
- // GatewayPollingPolicyInterface
- MOCK_METHOD0(PollingInterval, int());
- MOCK_METHOD0(NoRouterInterval, int());
- };
-
-class GatewayDataProviderCommonWithMock : public GatewayDataProviderCommon {
- public:
- GatewayDataProviderCommonWithMock()
- : new_gateway_api_(new MockGatewayApi),
- new_polling_policy_(new MockGatewayPollingPolicy){
- }
-
- // GatewayDataProviderCommon
- virtual GatewayApiInterface* NewGatewayApi() {
- CHECK(new_gateway_api_ != NULL);
- return new_gateway_api_.release();
- }
- virtual GatewayPollingPolicyInterface* NewPollingPolicy() {
- CHECK(new_polling_policy_ != NULL);
- return new_polling_policy_.release();
- }
-
- scoped_ptr<MockGatewayApi> new_gateway_api_;
- scoped_ptr<MockGatewayPollingPolicy> new_polling_policy_;
-
- DISALLOW_COPY_AND_ASSIGN(GatewayDataProviderCommonWithMock);
-};
-
-// Main test fixture.
-class GeolocationGatewayDataProviderCommonTest : public testing::Test {
- public:
- GeolocationGatewayDataProviderCommonTest()
- : quit_listener_(&main_message_loop_) {
- }
-
- virtual void SetUp() {
- provider_ = new GatewayDataProviderCommonWithMock;
- gateway_api_ = provider_->new_gateway_api_.get();
- polling_policy_ = provider_->new_polling_policy_.get();
- provider_->AddListener(&quit_listener_);
- }
- virtual void TearDown() {
- provider_->RemoveListener(&quit_listener_);
- provider_->StopDataProvider();
- provider_ = NULL;
- }
-
- protected:
- MessageLoop main_message_loop_;
- MessageLoopQuitListener quit_listener_;
- scoped_refptr<GatewayDataProviderCommonWithMock> provider_;
- MockGatewayApi* gateway_api_;
- MockGatewayPollingPolicy* polling_policy_;
-};
-
-TEST_F(GeolocationGatewayDataProviderCommonTest, CreateDestroy) {
- // Test fixture members were SetUp correctly.
- EXPECT_EQ(&main_message_loop_, MessageLoop::current());
- EXPECT_TRUE(NULL != provider_.get());
- EXPECT_TRUE(NULL != gateway_api_);
-}
-
-TEST_F(GeolocationGatewayDataProviderCommonTest, StartThread) {
- EXPECT_CALL(*gateway_api_, GetRouterData(_))
- .Times(AtLeast(1));
- EXPECT_CALL(*polling_policy_, PollingInterval())
- .Times(AtLeast(1));
- EXPECT_TRUE(provider_->StartDataProvider());
- main_message_loop_.Run();
- SUCCEED();
-}
-
-TEST_F(GeolocationGatewayDataProviderCommonTest, ConnectToDifferentRouter){
- EXPECT_CALL(*polling_policy_, PollingInterval())
- .Times(AtLeast(1));
- EXPECT_CALL(*polling_policy_, NoRouterInterval())
- .Times(1);
- EXPECT_CALL(*gateway_api_, GetRouterData(_))
- .WillOnce(Return(true)) // Connected to router.
- .WillOnce(Return(false)) // Disconnected from router.
- .WillRepeatedly(DoDefault()); // Connected to a different router.
-
- // Set MAC address for output.
- RouterData single_router;
- single_router.mac_address = ASCIIToUTF16("12-34-56-78-54-32");
- gateway_api_->data_out_.insert(single_router);
-
- provider_->StartDataProvider();
- main_message_loop_.Run();
- main_message_loop_.Run();
-}
-
-TEST_F(GeolocationGatewayDataProviderCommonTest, DoAnEmptyScan) {
- EXPECT_CALL(*gateway_api_, GetRouterData(_))
- .Times(AtLeast(1));
- EXPECT_CALL(*polling_policy_, PollingInterval())
- .Times(AtLeast(1));
- EXPECT_TRUE(provider_->StartDataProvider());
- main_message_loop_.Run();
- GatewayData data;
- EXPECT_TRUE(provider_->GetData(&data));
- EXPECT_EQ(0, static_cast<int>(data.router_data.size()));
-}
-
-TEST_F(GeolocationGatewayDataProviderCommonTest, DoScanWithResults) {
- EXPECT_CALL(*gateway_api_, GetRouterData(_))
- .Times(AtLeast(1));
- EXPECT_CALL(*polling_policy_, PollingInterval())
- .Times(AtLeast(1));
- RouterData single_router;
- single_router.mac_address = ASCIIToUTF16("12-34-56-78-54-32");
- gateway_api_->data_out_.insert(single_router);
- EXPECT_TRUE(provider_->StartDataProvider());
- main_message_loop_.Run();
- GatewayData data;
- EXPECT_TRUE(provider_->GetData(&data));
- EXPECT_EQ(1, static_cast<int>(data.router_data.size()));
- EXPECT_EQ(single_router.mac_address, data.router_data.begin()->mac_address);
-}
-
-} // namespace
« no previous file with comments | « content/browser/geolocation/gateway_data_provider_common.cc ('k') | content/browser/geolocation/gateway_data_provider_linux.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698