Integrate Mojo JS validation bindings with the Router
[chromium-blink-merge.git] / mojo / public / tests / test_support_private.cc
blobfa5ead44ba294e5e139a57f540e9bb966fbbbc79
1 // Copyright 2014 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 "mojo/public/tests/test_support_private.h"
7 #include <assert.h>
8 #include <stdio.h>
9 #include <stdlib.h>
11 static mojo::test::TestSupport* g_test_support = NULL;
13 extern "C" {
15 void MojoTestSupportLogPerfResult(const char* test_name,
16 double value,
17 const char* units) {
18 if (g_test_support)
19 g_test_support->LogPerfResult(test_name, value, units);
20 else
21 printf("[no test runner]\t%s\t%g\t%s\n", test_name, value, units);
24 FILE* MojoTestSupportOpenSourceRootRelativeFile(const char* relative_path) {
25 if (g_test_support)
26 return g_test_support->OpenSourceRootRelativeFile(relative_path);
27 printf("[no test runner]\n");
28 return NULL;
31 char** MojoTestSupportEnumerateSourceRootRelativeDirectory(
32 const char* relative_path) {
33 if (g_test_support)
34 return g_test_support->EnumerateSourceRootRelativeDirectory(relative_path);
36 printf("[no test runner]\n");
38 // Return empty list:
39 char** rv = static_cast<char**>(calloc(1, sizeof(char*)));
40 rv[0] = NULL;
41 return rv;
44 } // extern "C"
46 namespace mojo {
47 namespace test {
49 TestSupport::~TestSupport() {
52 // static
53 void TestSupport::Init(TestSupport* test_support) {
54 assert(!g_test_support);
55 g_test_support = test_support;
58 // static
59 TestSupport* TestSupport::Get() {
60 return g_test_support;
63 // static
64 void TestSupport::Reset() {
65 g_test_support = NULL;
68 } // namespace test
69 } // namespace mojo