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_C_TEST_SUPPORT_TEST_SUPPORT_H_ 6 #define MOJO_PUBLIC_C_TEST_SUPPORT_TEST_SUPPORT_H_ 7 8 // Note: This header should be compilable as C. 9 10 #include <stdio.h> 11 12 #include "mojo/public/c/test_support/test_support_export.h" 13 14 #ifdef __cplusplus 15 extern "C" { 16 #endif 17 18 MOJO_TEST_SUPPORT_EXPORT void MojoTestSupportLogPerfResult( 19 const char* test_name, 20 double value, 21 const char* units); 22 23 // Opens a "/"-delimited file path relative to the source root. 24 MOJO_TEST_SUPPORT_EXPORT FILE* MojoTestSupportOpenSourceRootRelativeFile( 25 const char* source_root_relative_path); 26 27 // Enumerates a "/"-delimited directory path relative to the source root. 28 // Returns only regular files. The return value is a heap-allocated array of 29 // heap-allocated strings. Each must be free'd separately. 30 // 31 // The return value is built like so: 32 // 33 // char** rv = (char**) calloc(N + 1, sizeof(char*)); 34 // rv[0] = strdup("a"); 35 // rv[1] = strdup("b"); 36 // rv[2] = strdup("c"); 37 // ... 38 // rv[N] = NULL; 39 // 40 MOJO_TEST_SUPPORT_EXPORT 41 char** MojoTestSupportEnumerateSourceRootRelativeDirectory( 42 const char* source_root_relative_path); 43 44 #ifdef __cplusplus 45 } // extern "C" 46 #endif 47 48 #endif // MOJO_PUBLIC_C_TEST_SUPPORT_TEST_SUPPORT_H_ 49