summaryrefslogtreecommitdiffstats
path: root/content/public/common/injection_test_mac.h
blob: c95e86a938a55c5ab7f9a6ffc14f27f412bdd8b8 (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
31
32
33
34
// 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 CONTENT_PUBLIC_COMMON_INJECTION_TEST_MAC_H_
#define CONTENT_PUBLIC_COMMON_INJECTION_TEST_MAC_H_

#import <Foundation/Foundation.h>

#include <string>

// Callback function used by sandbox tests to print error messages. It's
// provided in order to avoid linking the logging code of the renderer into this
// loadable bundle. RendererMainPlatformDelegate provides an implementation.
//
//   |message|  - the message that's printed.
//   |is_error| - true if this is an error message, false if an info message.
typedef void (*LogRendererSandboxTestMessage)(std::string message,
                                              bool is_error);

// An ObjC wrapper around sandbox tests.
@interface RendererSandboxTestsRunner : NSObject

// Sets the function that logs the progress of the tests.
+ (void)setLogFunction:(LogRendererSandboxTestMessage)logFunction;

// Runs all tests and logs its progress using the provided log function.
// Returns YES if all tests passed, NO otherwise. This method should be called
// after the sandbox has been turned on.
+ (BOOL)runTests;

@end

#endif  // CONTENT_PUBLIC_COMMON_INJECTION_TEST_MAC_H_