// 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_