Index: chrome/browser/load_library_perf_test.cc |
diff --git a/chrome/browser/load_library_perf_test.cc b/chrome/browser/load_library_perf_test.cc |
index 5b4fe125709d5d136d0e78b2e267e49a927e52ec..0aa7f02e17a8d9de93aab24f770326bcfab1c5fd 100644 |
--- a/chrome/browser/load_library_perf_test.cc |
+++ b/chrome/browser/load_library_perf_test.cc |
@@ -16,21 +16,22 @@ |
#include "testing/perf/perf_test.h" |
#include "widevine_cdm_version.h" // In SHARED_INTERMEDIATE_DIR. |
+// Base path for Clear Key CDM (relative to the chrome executable). |
+const char kClearKeyCdmBaseDirectory[] = "ClearKeyCdm"; |
+ |
// Measures the size (bytes) and time to load (sec) of a native library. |
-void MeasureSizeAndTimeToLoadNativeLibrary(const base::FilePath& library_name) { |
+void MeasureSizeAndTimeToLoadNativeLibrary(const std::string& library_base_dir, |
+ const std::string& library_name) { |
base::FilePath output_dir; |
ASSERT_TRUE(PathService::Get(base::DIR_MODULE, &output_dir)); |
- base::FilePath library_path = output_dir.Append(library_name); |
+ output_dir = output_dir.AppendASCII(library_base_dir); |
+ base::FilePath library_path = output_dir.AppendASCII(library_name); |
ASSERT_TRUE(base::PathExists(library_path)) << library_path.value(); |
int64_t size = 0; |
ASSERT_TRUE(base::GetFileSize(library_path, &size)); |
- perf_test::PrintResult("library_size", |
- "", |
- library_name.AsUTF8Unsafe(), |
- static_cast<size_t>(size), |
- "bytes", |
- true); |
+ perf_test::PrintResult("library_size", "", library_name, |
+ static_cast<size_t>(size), "bytes", true); |
base::NativeLibraryLoadError error; |
base::TimeTicks start = base::TimeTicks::Now(); |
@@ -39,50 +40,50 @@ void MeasureSizeAndTimeToLoadNativeLibrary(const base::FilePath& library_name) { |
double delta = (base::TimeTicks::Now() - start).InMillisecondsF(); |
ASSERT_TRUE(native_library) << "Error loading library: " << error.ToString(); |
base::UnloadNativeLibrary(native_library); |
- perf_test::PrintResult("time_to_load_library", |
- "", |
- library_name.AsUTF8Unsafe(), |
- delta, |
- "ms", |
+ perf_test::PrintResult("time_to_load_library", "", library_name, delta, "ms", |
true); |
} |
// Use the base name of the library to dynamically get the platform specific |
// name. See base::GetNativeLibraryName() for details. |
void MeasureSizeAndTimeToLoadNativeLibraryByBaseName( |
+ const std::string& library_base_dir, |
const std::string& base_library_name) { |
- MeasureSizeAndTimeToLoadNativeLibrary(base::FilePath::FromUTF16Unsafe( |
- base::GetNativeLibraryName(base::ASCIIToUTF16(base_library_name)))); |
+ MeasureSizeAndTimeToLoadNativeLibrary( |
+ library_base_dir, base::UTF16ToUTF8(base::GetNativeLibraryName( |
+ base::ASCIIToUTF16(base_library_name)))); |
} |
#if defined(ENABLE_PEPPER_CDMS) |
#if defined(WIDEVINE_CDM_AVAILABLE) |
TEST(LoadCDMPerfTest, Widevine) { |
- MeasureSizeAndTimeToLoadNativeLibrary( |
- base::FilePath::FromUTF8Unsafe(kWidevineCdmFileName)); |
+ MeasureSizeAndTimeToLoadNativeLibrary(kWidevineCdmBaseDirectory, |
+ kWidevineCdmFileName); |
} |
TEST(LoadCDMPerfTest, WidevineAdapter) { |
- MeasureSizeAndTimeToLoadNativeLibrary( |
- base::FilePath::FromUTF8Unsafe(kWidevineCdmAdapterFileName)); |
+ MeasureSizeAndTimeToLoadNativeLibrary(kWidevineCdmBaseDirectory, |
+ kWidevineCdmAdapterFileName); |
} |
#endif // defined(WIDEVINE_CDM_AVAILABLE) |
TEST(LoadCDMPerfTest, ExternalClearKey) { |
#if defined(OS_MACOSX) |
- MeasureSizeAndTimeToLoadNativeLibrary( |
- base::FilePath::FromUTF8Unsafe("libclearkeycdm.dylib")); |
+ MeasureSizeAndTimeToLoadNativeLibrary(kClearKeyCdmBaseDirectory, |
+ "libclearkeycdm.dylib"); |
#else |
- MeasureSizeAndTimeToLoadNativeLibraryByBaseName("clearkeycdm"); |
+ MeasureSizeAndTimeToLoadNativeLibraryByBaseName(kClearKeyCdmBaseDirectory, |
+ "clearkeycdm"); |
#endif // defined(OS_MACOSX) |
} |
TEST(LoadCDMPerfTest, ExternalClearKeyAdapter) { |
#if defined(OS_MACOSX) |
- MeasureSizeAndTimeToLoadNativeLibrary( |
- base::FilePath::FromUTF8Unsafe("clearkeycdmadapter.plugin")); |
+ MeasureSizeAndTimeToLoadNativeLibrary(kClearKeyCdmBaseDirectory, |
+ "clearkeycdmadapter.plugin"); |
#else |
- MeasureSizeAndTimeToLoadNativeLibraryByBaseName("clearkeycdmadapter"); |
+ MeasureSizeAndTimeToLoadNativeLibraryByBaseName(kClearKeyCdmBaseDirectory, |
+ "clearkeycdmadapter"); |
#endif // defined(OS_MACOSX) |
} |
#endif // defined(ENABLE_PEPPER_CDMS) |