| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/memory/scoped_ptr.h" | 5 #include "base/memory/scoped_ptr.h" |
| 6 #include "base/memory/scoped_vector.h" | 6 #include "base/memory/scoped_vector.h" |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/common/autofill_messages.h" | 8 #include "chrome/common/autofill_messages.h" |
| 9 #include "chrome/renderer/autofill/password_generation_manager.h" | 9 #include "chrome/renderer/autofill/password_generation_manager.h" |
| 10 #include "chrome/test/base/chrome_render_view_test.h" | 10 #include "chrome/test/base/chrome_render_view_test.h" |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 WebInputElement first_password_element = element.to<WebInputElement>(); | 106 WebInputElement first_password_element = element.to<WebInputElement>(); |
| 107 EXPECT_EQ(0u, generation_manager_->messages().size()); | 107 EXPECT_EQ(0u, generation_manager_->messages().size()); |
| 108 element = document.getElementById(WebString::fromUTF8("second_password")); | 108 element = document.getElementById(WebString::fromUTF8("second_password")); |
| 109 ASSERT_FALSE(element.isNull()); | 109 ASSERT_FALSE(element.isNull()); |
| 110 WebInputElement second_password_element = element.to<WebInputElement>(); | 110 WebInputElement second_password_element = element.to<WebInputElement>(); |
| 111 EXPECT_EQ(0u, generation_manager_->messages().size()); | 111 EXPECT_EQ(0u, generation_manager_->messages().size()); |
| 112 SetFocused(first_password_element.to<WebNode>()); | 112 SetFocused(first_password_element.to<WebNode>()); |
| 113 EXPECT_EQ(0u, generation_manager_->messages().size()); | 113 EXPECT_EQ(0u, generation_manager_->messages().size()); |
| 114 | 114 |
| 115 // Pretend like sync was enabled. | 115 // Pretend like sync was enabled. |
| 116 AutofillMsg_PasswordSyncEnabled msg(0, true); | 116 AutofillMsg_PasswordGenerationEnabled msg(0, true); |
| 117 generation_manager_->OnMessageReceived(msg); | 117 generation_manager_->OnMessageReceived(msg); |
| 118 | 118 |
| 119 // Now we will send a message once the first password feld is focused. | 119 // Now we will send a message once the first password feld is focused. |
| 120 LoadHTML(kAccountCreationFormHTML); | 120 LoadHTML(kAccountCreationFormHTML); |
| 121 document = GetMainFrame()->document(); | 121 document = GetMainFrame()->document(); |
| 122 element = document.getElementById(WebString::fromUTF8("first_password")); | 122 element = document.getElementById(WebString::fromUTF8("first_password")); |
| 123 ASSERT_FALSE(element.isNull()); | 123 ASSERT_FALSE(element.isNull()); |
| 124 first_password_element = element.to<WebInputElement>(); | 124 first_password_element = element.to<WebInputElement>(); |
| 125 EXPECT_EQ(0u, generation_manager_->messages().size()); | 125 EXPECT_EQ(0u, generation_manager_->messages().size()); |
| 126 element = document.getElementById(WebString::fromUTF8("second_password")); | 126 element = document.getElementById(WebString::fromUTF8("second_password")); |
| 127 ASSERT_FALSE(element.isNull()); | 127 ASSERT_FALSE(element.isNull()); |
| 128 second_password_element = element.to<WebInputElement>(); | 128 second_password_element = element.to<WebInputElement>(); |
| 129 EXPECT_EQ(0u, generation_manager_->messages().size()); | 129 EXPECT_EQ(0u, generation_manager_->messages().size()); |
| 130 SetFocused(first_password_element.to<WebNode>()); | 130 SetFocused(first_password_element.to<WebNode>()); |
| 131 EXPECT_EQ(1u, generation_manager_->messages().size()); | 131 EXPECT_EQ(1u, generation_manager_->messages().size()); |
| 132 EXPECT_EQ(AutofillHostMsg_ShowPasswordGenerationPopup::ID, | 132 EXPECT_EQ(AutofillHostMsg_ShowPasswordGenerationPopup::ID, |
| 133 generation_manager_->messages()[0]->type()); | 133 generation_manager_->messages()[0]->type()); |
| 134 } | 134 } |
| 135 | 135 |
| 136 TEST_F(PasswordGenerationManagerTest, FillTest) { | 136 TEST_F(PasswordGenerationManagerTest, FillTest) { |
| 137 // Make sure that we are enabled before loading HTML. | 137 // Make sure that we are enabled before loading HTML. |
| 138 AutofillMsg_PasswordSyncEnabled enabled_msg(0, true); | 138 AutofillMsg_PasswordGenerationEnabled enabled_msg(0, true); |
| 139 generation_manager_->OnMessageReceived(enabled_msg); | 139 generation_manager_->OnMessageReceived(enabled_msg); |
| 140 LoadHTML(kAccountCreationFormHTML); | 140 LoadHTML(kAccountCreationFormHTML); |
| 141 | 141 |
| 142 WebDocument document = GetMainFrame()->document(); | 142 WebDocument document = GetMainFrame()->document(); |
| 143 WebElement element = | 143 WebElement element = |
| 144 document.getElementById(WebString::fromUTF8("first_password")); | 144 document.getElementById(WebString::fromUTF8("first_password")); |
| 145 ASSERT_FALSE(element.isNull()); | 145 ASSERT_FALSE(element.isNull()); |
| 146 WebInputElement first_password_element = element.to<WebInputElement>(); | 146 WebInputElement first_password_element = element.to<WebInputElement>(); |
| 147 element = document.getElementById(WebString::fromUTF8("second_password")); | 147 element = document.getElementById(WebString::fromUTF8("second_password")); |
| 148 ASSERT_FALSE(element.isNull()); | 148 ASSERT_FALSE(element.isNull()); |
| 149 WebInputElement second_password_element = element.to<WebInputElement>(); | 149 WebInputElement second_password_element = element.to<WebInputElement>(); |
| 150 | 150 |
| 151 // Both password fields should be empty. | 151 // Both password fields should be empty. |
| 152 EXPECT_TRUE(first_password_element.value().isNull()); | 152 EXPECT_TRUE(first_password_element.value().isNull()); |
| 153 EXPECT_TRUE(second_password_element.value().isNull()); | 153 EXPECT_TRUE(second_password_element.value().isNull()); |
| 154 | 154 |
| 155 string16 password = ASCIIToUTF16("random_password"); | 155 string16 password = ASCIIToUTF16("random_password"); |
| 156 AutofillMsg_GeneratedPasswordAccepted msg(0, password); | 156 AutofillMsg_GeneratedPasswordAccepted msg(0, password); |
| 157 generation_manager_->OnMessageReceived(msg); | 157 generation_manager_->OnMessageReceived(msg); |
| 158 | 158 |
| 159 // Password fields are filled out and set as being autofilled. | 159 // Password fields are filled out and set as being autofilled. |
| 160 EXPECT_EQ(password, first_password_element.value()); | 160 EXPECT_EQ(password, first_password_element.value()); |
| 161 EXPECT_EQ(password, second_password_element.value()); | 161 EXPECT_EQ(password, second_password_element.value()); |
| 162 EXPECT_TRUE(first_password_element.isAutofilled()); | 162 EXPECT_TRUE(first_password_element.isAutofilled()); |
| 163 EXPECT_TRUE(second_password_element.isAutofilled()); | 163 EXPECT_TRUE(second_password_element.isAutofilled()); |
| 164 } | 164 } |
| 165 | 165 |
| 166 } // namespace autofill | 166 } // namespace autofill |
| OLD | NEW |