Index: components/password_manager/core/browser/password_generation_manager_unittest.cc |
diff --git a/components/password_manager/core/browser/password_generation_manager_unittest.cc b/components/password_manager/core/browser/password_generation_manager_unittest.cc |
index 6bcc8a6b345b40fb09987c3f7cb675706a2bf825..5a3aedc684e71628355a37a643d87d6bc800cc51 100644 |
--- a/components/password_manager/core/browser/password_generation_manager_unittest.cc |
+++ b/components/password_manager/core/browser/password_generation_manager_unittest.cc |
@@ -4,10 +4,12 @@ |
#include "components/password_manager/core/browser/password_generation_manager.h" |
+#include <memory> |
#include <utility> |
#include <vector> |
#include "base/message_loop/message_loop.h" |
+#include "base/metrics/field_trial.h" |
#include "base/strings/utf_string_conversions.h" |
#include "components/autofill/core/browser/autofill_field.h" |
#include "components/autofill/core/browser/autofill_metrics.h" |
@@ -24,6 +26,7 @@ |
#include "components/prefs/pref_registry_simple.h" |
#include "components/prefs/pref_service.h" |
#include "components/prefs/testing_pref_service.h" |
+#include "components/variations/entropy_provider.h" |
#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "url/gurl.h" |
@@ -63,6 +66,8 @@ class TestPasswordManagerDriver : public StubPasswordManagerDriver { |
return found_forms_eligible_for_generation_; |
} |
+ MOCK_METHOD0(AllowToRunFormClassifier, void()); |
+ |
private: |
PasswordManager password_manager_; |
PasswordGenerationManager password_generation_manager_; |
@@ -258,4 +263,23 @@ TEST_F(PasswordGenerationManagerTest, UpdatePasswordSyncStateIncognito) { |
EXPECT_FALSE(IsGenerationEnabled()); |
} |
+TEST_F(PasswordGenerationManagerTest, CheckIfFormClassifierShouldRun) { |
+ const bool kFalseTrue[] = {false, true}; |
+ for (bool is_autofill_field_metadata_enabled : kFalseTrue) { |
+ SCOPED_TRACE(testing::Message() << "is_autofill_field_metadata_enabled=" |
+ << is_autofill_field_metadata_enabled); |
+ std::unique_ptr<base::FieldTrialList> field_trial_list; |
+ scoped_refptr<base::FieldTrial> field_trial; |
+ if (is_autofill_field_metadata_enabled) { |
+ field_trial_list.reset( |
+ new base::FieldTrialList(new metrics::SHA1EntropyProvider("foo"))); |
+ field_trial = base::FieldTrialList::CreateFieldTrial( |
+ "AutofillFieldMetadata", "Enabled"); |
+ EXPECT_CALL(*GetTestDriver(), AllowToRunFormClassifier()) |
+ .WillOnce(testing::Return()); |
+ } |
+ GetGenerationManager()->CheckIfFormClassifierShouldRun(); |
+ } |
+} |
+ |
} // namespace password_manager |