summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/cocoa/cocoa_test_helper.h
blob: de69e97dbf7c4038f1066833c8c6520a46cf8033 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_UI_COCOA_COCOA_TEST_HELPER_H_
#define CHROME_BROWSER_UI_COCOA_COCOA_TEST_HELPER_H_

#import <Cocoa/Cocoa.h>

#import "ui/gfx/test/ui_cocoa_test_helper.h"

// A test class that all tests that depend on AppKit should inherit from.
// Sets up paths correctly, and makes sure that any windows created in the test
// are closed down properly by the test. If you need to inherit from a
// different test class, but need to set up the AppKit runtime environment, you
// can call BootstrapCocoa directly from your test class. You will have to deal
// with windows on your own though.  Note that NSApp is initialized by
// ChromeTestSuite.
class CocoaTest : public ui::CocoaTest {
 public:
  // Sets up paths correctly for unit tests. If you can't inherit from
  // CocoaTest but are going to be using any AppKit features directly, or
  // indirectly, you should be calling this from the c'tor or SetUp methods of
  // your test class. Note that NSApp is initialized by ChromeTestSuite.
  static void BootstrapCocoa();

  CocoaTest();
};

#endif  // CHROME_BROWSER_UI_COCOA_COCOA_TEST_HELPER_H_