Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Unified Diff: base/test/test_support_android.cc

Issue 2043803003: 👔 Reland #2: Move side-loaded test data /sdcard -> /sdcard/gtestdata (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase atop https://codereview.chromium.org/2041723006 Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « base/test/test_support_android.h ('k') | build/android/pylib/local/device/local_device_gtest_run.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/test/test_support_android.cc
diff --git a/base/test/test_support_android.cc b/base/test/test_support_android.cc
index f8441bd1ba5f9d75fe8e52258c6d339f24763514..e2678c054eec1439bd5eaaf834514f3d053f29f3 100644
--- a/base/test/test_support_android.cc
+++ b/base/test/test_support_android.cc
@@ -18,6 +18,8 @@
namespace {
+base::FilePath* g_test_data_dir = nullptr;
+
struct RunState {
RunState(base::MessagePump::Delegate* delegate, int run_depth)
: delegate(delegate),
@@ -132,13 +134,16 @@ std::unique_ptr<base::MessagePump> CreateMessagePumpForUIStub() {
return std::unique_ptr<base::MessagePump>(new MessagePumpForUIStub());
};
-// Provides the test path for DIR_MODULE and DIR_ANDROID_APP_DATA.
+// Provides the test path for DIR_SOURCE_ROOT and DIR_ANDROID_APP_DATA.
bool GetTestProviderPath(int key, base::FilePath* result) {
switch (key) {
- case base::DIR_ANDROID_APP_DATA: {
- // For tests, app data is put in external storage.
- return base::android::GetExternalStorageDirectory(result);
- }
+ // TODO(agrieve): Stop overriding DIR_ANDROID_APP_DATA.
+ // https://crbug.com/617734
+ case base::DIR_ANDROID_APP_DATA:
jbudorick 2016/06/07 14:31:01 Hm, the salient bit of code here is https://codese
agrieve 2016/06/07 14:46:24 Responded to this comment here: https://bugs.chrom
jbudorick 2016/06/07 15:05:48 Replied there too. Not sure either will work.
+ case base::DIR_SOURCE_ROOT:
+ CHECK(g_test_data_dir != nullptr);
+ *result = *g_test_data_dir;
+ return true;
default:
return false;
}
@@ -166,8 +171,13 @@ void InitAndroidTestLogging() {
false); // Tick count
}
-void InitAndroidTestPaths() {
- InitPathProvider(DIR_MODULE);
+void InitAndroidTestPaths(const FilePath& test_data_dir) {
+ if (g_test_data_dir) {
+ CHECK(test_data_dir == *g_test_data_dir);
+ return;
+ }
+ g_test_data_dir = new FilePath(test_data_dir);
+ InitPathProvider(DIR_SOURCE_ROOT);
InitPathProvider(DIR_ANDROID_APP_DATA);
}
@@ -179,7 +189,6 @@ void InitAndroidTestMessageLoop() {
void InitAndroidTest() {
if (!base::AndroidIsChildProcess()) {
InitAndroidTestLogging();
- InitAndroidTestPaths();
}
InitAndroidTestMessageLoop();
}
« no previous file with comments | « base/test/test_support_android.h ('k') | build/android/pylib/local/device/local_device_gtest_run.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698