Home | History | Annotate | Download | only in location_bar
      1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_UI_COCOA_AUTOCOMPLETE_TEXT_FIELD_UNITTEST_HELPER_H_
      6 #define CHROME_BROWSER_UI_COCOA_AUTOCOMPLETE_TEXT_FIELD_UNITTEST_HELPER_H_
      7 #pragma once
      8 
      9 #import <Cocoa/Cocoa.h>
     10 
     11 #import "base/mac/cocoa_protocols.h"
     12 #include "base/memory/scoped_nsobject.h"
     13 #import "chrome/browser/ui/cocoa/location_bar/autocomplete_text_field.h"
     14 #include "testing/gmock/include/gmock/gmock.h"
     15 
     16 @class AutocompleteTextFieldEditor;
     17 
     18 // Return the right field editor for AutocompleteTextField instance.
     19 
     20 @interface AutocompleteTextFieldWindowTestDelegate :
     21     NSObject<NSWindowDelegate> {
     22   scoped_nsobject<AutocompleteTextFieldEditor> editor_;
     23 }
     24 - (id)windowWillReturnFieldEditor:(NSWindow *)sender toObject:(id)anObject;
     25 @end
     26 
     27 // Allow monitoring calls into AutocompleteTextField's observer.
     28 // Being in a .h file with an anonymous namespace is strange, but this
     29 // is here so the mock interface doesn't have to change in multiple
     30 // places.
     31 
     32 // Any method you add here needs a unit test.  You knew that.
     33 
     34 class MockAutocompleteTextFieldObserver : public AutocompleteTextFieldObserver {
     35  public:
     36   MockAutocompleteTextFieldObserver();
     37   ~MockAutocompleteTextFieldObserver();
     38 
     39   MOCK_METHOD1(SelectionRangeForProposedRange, NSRange(NSRange range));
     40   MOCK_METHOD1(OnControlKeyChanged, void(bool pressed));
     41   MOCK_METHOD0(CanCopy, bool());
     42   MOCK_METHOD1(CopyToPasteboard, void(NSPasteboard* pboard));
     43   MOCK_METHOD0(OnPaste, void());
     44   MOCK_METHOD0(CanPasteAndGo, bool());
     45   MOCK_METHOD0(GetPasteActionStringId, int());
     46   MOCK_METHOD0(OnPasteAndGo, void());
     47   MOCK_METHOD0(OnFrameChanged, void());
     48   MOCK_METHOD0(ClosePopup, void());
     49   MOCK_METHOD0(OnDidBeginEditing, void());
     50   MOCK_METHOD0(OnBeforeChange, void());
     51   MOCK_METHOD0(OnDidChange, void());
     52   MOCK_METHOD0(OnDidEndEditing, void());
     53   MOCK_METHOD0(OnStartingIME, void());
     54   MOCK_METHOD1(OnDoCommandBySelector, bool(SEL cmd));
     55   MOCK_METHOD1(OnSetFocus, void(bool control_down));
     56   MOCK_METHOD0(OnKillFocus, void());
     57 };
     58 
     59 #endif  // CHROME_BROWSER_UI_COCOA_AUTOCOMPLETE_TEXT_FIELD_UNITTEST_HELPER_H_
     60