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

Unified Diff: chrome/browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc

Issue 11037005: New Cloud Print Private API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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/extensions/api/cloud_print_private/cloud_print_private_apitest.cc
diff --git a/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc b/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc
index 9fdc25ba9cac6c9d58be0b861bac56401db6cbe6..bb59d3efd7fb9e22928d20ecea4c348277bee7ff 100644
--- a/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc
+++ b/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_apitest.cc
@@ -2,14 +2,22 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/stringprintf.h"
#include "chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h"
+
+#include "base/stringprintf.h"
#include "chrome/browser/extensions/extension_apitest.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/test/base/ui_test_utils.h"
#include "net/base/mock_host_resolver.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+using ::testing::Eq;
+using ::testing::Property;
+using ::testing::Return;
+using ::testing::_;
// A base class for tests below.
class ExtensionCloudPrintPrivateApiTest : public ExtensionApiTest {
@@ -46,15 +54,46 @@ class ExtensionCloudPrintPrivateApiTest : public ExtensionApiTest {
};
#if !defined(OS_CHROMEOS)
-IN_PROC_BROWSER_TEST_F(ExtensionCloudPrintPrivateApiTest,
- CloudPrintSetCredentialsSuccessHosted) {
+
+class CloudPrintTestsDelegateMock : public extensions::CloudPrintTestsDelegate {
+ public:
+ CloudPrintTestsDelegateMock() {}
+
+ MOCK_METHOD5(SetupConnector,
+ void(const std::string& user_email,
+ const std::string& robot_email,
+ const std::string& credentials,
+ bool connect_new_printers,
+ const std::vector<std::string>& printer_blacklist));
+ MOCK_METHOD0(GetHostName, std::string());
+ MOCK_METHOD0(GetPrinters, std::vector<std::string>());
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(CloudPrintTestsDelegateMock);
+};
+
+IN_PROC_BROWSER_TEST_F(ExtensionCloudPrintPrivateApiTest, CloudPrintHosted) {
+ CloudPrintTestsDelegateMock cloud_print_mock;
+ std::vector<std::string> printers;
+ printers.push_back("printer1");
+ printers.push_back("printer2");
+
+ EXPECT_CALL(cloud_print_mock,
+ SetupConnector("foo@gmail.com",
+ "foorobot@googleusercontent.com",
+ "1/23546efa54",
+ true,
+ printers));
+ EXPECT_CALL(cloud_print_mock, GetHostName())
+ .WillRepeatedly(Return("TestHostName"));
+ EXPECT_CALL(cloud_print_mock, GetPrinters())
+ .WillRepeatedly(Return(printers));
// Run this as a hosted app. Since we have overridden the cloud print service
// URL in the command line, this URL should match the web extent for our
// cloud print component app and it should work.
- extensions::CloudPrintSetCredentialsFunction::SetTestMode(true);
GURL page_url = GetTestServerURL(
"enable_chrome_connector/cloud_print_success_tests.html");
ASSERT_TRUE(RunPageTest(page_url.spec()));
- extensions::CloudPrintSetCredentialsFunction::SetTestMode(false);
}
+
#endif // !defined(OS_CHROMEOS)

Powered by Google App Engine
This is Rietveld 408576698