Index: components/password_manager/core/browser/browser_save_password_progress_logger_unittest.cc |
diff --git a/components/password_manager/core/browser/browser_save_password_progress_logger_unittest.cc b/components/password_manager/core/browser/browser_save_password_progress_logger_unittest.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8693e6a041902a0f55300c66ae7b09c25a4ea2ae |
--- /dev/null |
+++ b/components/password_manager/core/browser/browser_save_password_progress_logger_unittest.cc |
@@ -0,0 +1,40 @@ |
+// Copyright 2014 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 "components/password_manager/core/browser/browser_save_password_progress_logger.h" |
+ |
+#include "components/password_manager/core/browser/stub_password_manager_client.h" |
+#include "testing/gmock/include/gmock/gmock.h" |
+#include "testing/gtest/include/gtest/gtest.h" |
+ |
+namespace password_manager { |
+ |
+namespace { |
+ |
+const char kTestText[] = "test"; |
+ |
+// The only purpose of TestLogger is to expose SendLog for the test. |
+class TestLogger : public BrowserSavePasswordProgressLogger { |
+ public: |
+ TestLogger(PasswordManagerClient* client) |
+ : BrowserSavePasswordProgressLogger(client) {} |
+ |
+ using BrowserSavePasswordProgressLogger::SendLog; |
+}; |
+ |
+class MockPasswordManagerClient : public StubPasswordManagerClient { |
+ public: |
+ MOCK_METHOD1(LogSavePasswordProgress, void(const std::string& text)); |
+}; |
+ |
+} // namespace |
+ |
+TEST(BrowserSavePasswordProgressLoggerTest, SendLog) { |
+ MockPasswordManagerClient client; |
+ TestLogger logger(&client); |
+ EXPECT_CALL(client, LogSavePasswordProgress(kTestText)).Times(1); |
+ logger.SendLog(kTestText); |
+} |
+ |
+} // namespace password_manager |