Move initTraceEvent to WebView code in Android tree to avoid reflection.
[chromium-blink-merge.git] / base / test / mock_chrome_application_mac.mm
blob089055361d2bb07286688d747e9128fb835fd32e
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.
5 #include "base/test/mock_chrome_application_mac.h"
7 #include "base/auto_reset.h"
8 #include "base/logging.h"
10 @implementation MockCrApp
12 + (NSApplication*)sharedApplication {
13   NSApplication* app = [super sharedApplication];
14   DCHECK([app conformsToProtocol:@protocol(CrAppControlProtocol)])
15       << "Existing NSApp (class " << [[app className] UTF8String]
16       << ") does not conform to required protocol.";
17   DCHECK(base::MessagePumpMac::UsingCrApp())
18       << "MessagePumpMac::Create() was called before "
19       << "+[MockCrApp sharedApplication]";
20   return app;
23 - (void)sendEvent:(NSEvent*)event {
24   base::AutoReset<BOOL> scoper(&handlingSendEvent_, YES);
25   [super sendEvent:event];
28 - (void)setHandlingSendEvent:(BOOL)handlingSendEvent {
29   handlingSendEvent_ = handlingSendEvent;
32 - (BOOL)isHandlingSendEvent {
33   return handlingSendEvent_;
36 @end
38 namespace mock_cr_app {
40 void RegisterMockCrApp() {
41   [MockCrApp sharedApplication];
44 }  // namespace mock_cr_app