mock_autofill_dialog_view_delegate.cc revision 58537e28ecd584eab876aee8be7156509866d23a
1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "chrome/browser/ui/autofill/mock_autofill_dialog_view_delegate.h" 6#include "content/public/browser/native_web_keyboard_event.h" // For gmock. 7#include "grit/generated_resources.h" 8#include "ui/gfx/rect.h" // Only needed because gmock needs complete types. 9 10namespace autofill { 11 12MockAutofillDialogViewDelegate::MockAutofillDialogViewDelegate() { 13 using testing::DefaultValue; 14 using testing::_; 15 using testing::Return; 16 using testing::ReturnRef; 17 18 // N.B. Setting DefaultValue in the ctor and deleting it in the dtor will 19 // only work if this Mock is not used together with other mock code that 20 // sets different defaults. If tests utilizing the MockController start 21 // breaking because of this, use ON_CALL instead. 22 DefaultValue<const DetailInputs&>::Set(default_inputs_); 23 DefaultValue<string16>::Set(string16()); 24 DefaultValue<ValidityData>::Set(ValidityData()); 25 DefaultValue<gfx::Image>::Set(gfx::Image()); 26 DefaultValue<SuggestionState>::Set(SuggestionState(false, 27 string16(), 28 string16(), 29 gfx::Image(), 30 string16(), 31 gfx::Image())); 32 33 // SECTION_CC *must* have a CREDIT_CARD_VERIFICATION_CODE field. 34 const DetailInput kCreditCardInputs[] = { 35 { 2, CREDIT_CARD_VERIFICATION_CODE, IDS_AUTOFILL_DIALOG_PLACEHOLDER_CVC } 36 }; 37 cc_default_inputs_.push_back(kCreditCardInputs[0]); 38 ON_CALL(*this, RequestedFieldsForSection(SECTION_CC)) 39 .WillByDefault(ReturnRef(cc_default_inputs_)); 40 41 ON_CALL(*this, GetDialogButtons()) 42 .WillByDefault(Return(ui::DIALOG_BUTTON_OK | ui::DIALOG_BUTTON_CANCEL)); 43 ON_CALL(*this, LegalDocumentLinks()).WillByDefault(ReturnRef(range_)); 44 45 // Activate all sections but CC_BILLING - default for the real 46 // controller implementation, too. 47 ON_CALL(*this, SectionIsActive(_)).WillByDefault(Return(true)); 48 ON_CALL(*this, SectionIsActive(SECTION_CC_BILLING)) 49 .WillByDefault(Return(false)); 50} 51 52MockAutofillDialogViewDelegate::~MockAutofillDialogViewDelegate() { 53 using testing::DefaultValue; 54 55 DefaultValue<SuggestionState>::Clear(); 56 DefaultValue<gfx::Image>::Clear(); 57 DefaultValue<ValidityData>::Clear(); 58 DefaultValue<string16>::Clear(); 59 DefaultValue<const DetailInputs&>::Clear(); 60} 61 62} // namespace autofill 63