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. 4 5 #ifndef MOJO_PUBLIC_TESTS_TEST_SUPPORT_PRIVATE_H_ 6 #define MOJO_PUBLIC_TESTS_TEST_SUPPORT_PRIVATE_H_ 7 8 #include <stdio.h> 9 10 #include "mojo/public/c/test_support/test_support.h" 11 12 namespace mojo { 13 namespace test { 14 15 // Implementors of the test support APIs can use this interface to install their 16 // implementation into the mojo_test_support dynamic library. 17 class TestSupport { 18 public: 19 virtual ~TestSupport(); 20 21 static void Init(TestSupport* test_support); 22 static TestSupport* Get(); 23 static void Reset(); 24 25 virtual void LogPerfResult(const char* test_name, 26 const char* sub_test_name, 27 double value, 28 const char* units) = 0; 29 virtual FILE* OpenSourceRootRelativeFile(const char* relative_path) = 0; 30 virtual char** EnumerateSourceRootRelativeDirectory( 31 const char* relative_path) = 0; 32 }; 33 34 } // namespace test 35 } // namespace mojo 36 37 #endif // MOJO_PUBLIC_TESTS_TEST_SUPPORT_PRIVATE_H_ 38