#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "content/public/test/browser_test.h"
#include "content/test/ppapi/ppapi_test.h"
#include "ppapi/shared_impl/test_utils.h"
namespace content {
namespace {
#define STRIP_PREFIXES(test_name) ppapi::StripTestPrefixes(#test_name)
#if defined(THREAD_SANITIZER)
#define DISABLE_IF_TSAN(test_name) DISABLED_##test_name
#else
#define DISABLE_IF_TSAN(test_name) test_name
#endif
#define TEST_PPAPI_IN_PROCESS(test_name) \
IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
RunTest(STRIP_PREFIXES(test_name)); \
}
#define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, DISABLE_IF_TSAN(test_name)) { \
RunTest(STRIP_PREFIXES(test_name)); \
}
#if BUILDFLAG(IS_CHROMEOS_ASH)
#define MAYBE_BrowserFont DISABLED_BrowserFont
#else
#define MAYBE_BrowserFont BrowserFont
#endif
TEST_PPAPI_OUT_OF_PROCESS(MAYBE_BrowserFont)
TEST_PPAPI_IN_PROCESS(Buffer)
TEST_PPAPI_OUT_OF_PROCESS(Buffer)
TEST_PPAPI_IN_PROCESS(CharSet)
TEST_PPAPI_OUT_OF_PROCESS(CharSet)
TEST_PPAPI_IN_PROCESS(Console)
TEST_PPAPI_OUT_OF_PROCESS(Console)
TEST_PPAPI_IN_PROCESS(Core)
TEST_PPAPI_OUT_OF_PROCESS(Core)
TEST_PPAPI_IN_PROCESS(Crypto)
TEST_PPAPI_OUT_OF_PROCESS(Crypto)
TEST_PPAPI_IN_PROCESS(Graphics2D)
TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)
TEST_PPAPI_IN_PROCESS(ImageData)
TEST_PPAPI_OUT_OF_PROCESS(ImageData)
TEST_PPAPI_OUT_OF_PROCESS(InputEvent)
TEST_PPAPI_IN_PROCESS(Instance_ExecuteScript)
TEST_PPAPI_OUT_OF_PROCESS(Instance_ExecuteScript)
IN_PROC_BROWSER_TEST_F(PPAPITest,
Instance_ExecuteScriptAtInstanceShutdown) {
RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
RunTest("Instance_ExecuteScriptAtInstanceShutdown");
}
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
DISABLE_IF_TSAN(Instance_ExecuteScriptAtInstanceShutdown)) {
RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
RunTest("Instance_ExecuteScriptAtInstanceShutdown");
}
TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors)
TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors)
IN_PROC_BROWSER_TEST_F(PPAPITest, Instance_RecursiveObjects) {
RunTestAndReload("Instance_RecursiveObjects");
}
IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
DISABLED_Instance_RecursiveObjects) {
RunTestAndReload("Instance_RecursiveObjects");
}
TEST_PPAPI_OUT_OF_PROCESS(DISABLED_MediaStreamAudioTrack)
TEST_PPAPI_OUT_OF_PROCESS(MediaStreamVideoTrack)
TEST_PPAPI_IN_PROCESS(Memory)
TEST_PPAPI_OUT_OF_PROCESS(Memory)
TEST_PPAPI_OUT_OF_PROCESS(MessageHandler)
TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Basics)
TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Post)
TEST_PPAPI_OUT_OF_PROCESS(NetworkProxy)
TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar)
TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Scrollbar)
TEST_PPAPI_IN_PROCESS(TraceEvent)
TEST_PPAPI_OUT_OF_PROCESS(TraceEvent)
TEST_PPAPI_IN_PROCESS(URLUtil)
TEST_PPAPI_OUT_OF_PROCESS(URLUtil)
TEST_PPAPI_IN_PROCESS(Var)
TEST_PPAPI_OUT_OF_PROCESS(Var)
#if BUILDFLAG(IS_MAC)
#define MAYBE_VarDeprecated DISABLED_VarDeprecated
#else
#define MAYBE_VarDeprecated VarDeprecated
#endif
TEST_PPAPI_IN_PROCESS(VarDeprecated)
TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated)
TEST_PPAPI_IN_PROCESS(VarResource)
TEST_PPAPI_OUT_OF_PROCESS(VarResource)
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
#define MAYBE_VideoDecoder DISABLED_VideoDecoder
#else
#define MAYBE_VideoDecoder VideoDecoder
#endif
TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VideoDecoder)
TEST_PPAPI_IN_PROCESS(VideoDecoderDev)
TEST_PPAPI_OUT_OF_PROCESS(VideoDecoderDev)
TEST_PPAPI_OUT_OF_PROCESS(VideoEncoder)
}
}