Commit 55ff9438 authored by agrieve's avatar agrieve Committed by Commit bot

Revert of Reland of Move side-loaded test data /sdcard -> /sdcard/gtestdata...

Revert of Reland of Move side-loaded test data /sdcard -> /sdcard/gtestdata (patchset #3 id:300001 of https://codereview.chromium.org/2018663002/ )

Reason for revert:
Breaking quota-related tests in content_browsertests
https://crbug.com/617213

Original issue's description:
> Reland of Move side-loaded test data /sdcard -> /sdcard/chromium_tests_root
>
> Reason for reland:
> Updated webview tests that broke (WebViewLayoutTest.java)
>
> And use delete_device_stale=True when pushing. This will prevent tests
> mistakenly passing when they depend on stale data files from a previous test.
>
> TBR=jbudorick@chromium.org,thakis@chromium.org,mef@chromium.org
> BUG=607169
>
> Committed: https://crrev.com/2524a0db714a44fbce723e00f6ed914e6d143cb6
> Cr-Commit-Position: refs/heads/master@{#396479}

TBR=jbudorick@chromium.org,thakis@chromium.org,mef@chromium.org,torne@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=607169,617213,616155

Review-Url: https://codereview.chromium.org/2044523003
Cr-Commit-Position: refs/heads/master@{#398137}
parent eee7c411
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
package org.chromium.webview_shell.test; package org.chromium.webview_shell.test;
import android.os.Environment;
import android.test.ActivityInstrumentationTestCase2; import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.MediumTest; import android.test.suitebuilder.annotation.MediumTest;
...@@ -11,7 +12,6 @@ import junit.framework.ComparisonFailure; ...@@ -11,7 +12,6 @@ import junit.framework.ComparisonFailure;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.UrlUtils;
import org.chromium.webview_shell.WebViewLayoutTestActivity; import org.chromium.webview_shell.WebViewLayoutTestActivity;
import java.io.BufferedReader; import java.io.BufferedReader;
...@@ -34,7 +34,8 @@ public class WebViewLayoutTest ...@@ -34,7 +34,8 @@ public class WebViewLayoutTest
private static final String TAG = "WebViewLayoutTest"; private static final String TAG = "WebViewLayoutTest";
private static final String EXTERNAL_PREFIX = UrlUtils.getIsolatedTestRoot() + "/"; private static final String EXTERNAL_PREFIX =
Environment.getExternalStorageDirectory().getAbsolutePath() + "/";
private static final String BASE_WEBVIEW_TEST_PATH = private static final String BASE_WEBVIEW_TEST_PATH =
"android_webview/tools/system_webview_shell/test/data/"; "android_webview/tools/system_webview_shell/test/data/";
private static final String BASE_BLINK_TEST_PATH = "third_party/WebKit/LayoutTests/"; private static final String BASE_BLINK_TEST_PATH = "third_party/WebKit/LayoutTests/";
......
...@@ -5,8 +5,8 @@ ...@@ -5,8 +5,8 @@
# found in the LICENSE file. # found in the LICENSE file.
PACKAGE_NAME="org.chromium.webview_shell.test" PACKAGE_NAME="org.chromium.webview_shell.test"
DEVICE_WEBVIEW_TEST_PATH="/sdcard/chromium_tests_root/android_webview/tools/" DEVICE_WEBVIEW_TEST_PATH=\
DEVICE_WEBVIEW_TEST_PATH+="system_webview_shell/test/data/" "/sdcard/android_webview/tools/system_webview_shell/test/data/"
TESTRUNNER="../../../../build/android/test_runner.py" TESTRUNNER="../../../../build/android/test_runner.py"
$TESTRUNNER instrumentation \ $TESTRUNNER instrumentation \
......
...@@ -38,10 +38,8 @@ bool PathProviderAndroid(int key, FilePath* result) { ...@@ -38,10 +38,8 @@ bool PathProviderAndroid(int key, FilePath* result) {
case base::DIR_MODULE: case base::DIR_MODULE:
return base::android::GetNativeLibraryDirectory(result); return base::android::GetNativeLibraryDirectory(result);
case base::DIR_SOURCE_ROOT: case base::DIR_SOURCE_ROOT:
// Used only by tests. // This const is only used for tests.
// In that context, hooked up via base/test/test_support_android.cc. return base::android::GetExternalStorageDirectory(result);
NOTIMPLEMENTED();
return false;
case base::DIR_USER_DESKTOP: case base::DIR_USER_DESKTOP:
// Android doesn't support GetUserDesktop. // Android doesn't support GetUserDesktop.
NOTIMPLEMENTED(); NOTIMPLEMENTED();
......
...@@ -20,7 +20,7 @@ public class UrlUtils { ...@@ -20,7 +20,7 @@ public class UrlUtils {
*/ */
public static String getTestFilePath(String path) { public static String getTestFilePath(String path) {
// TODO(jbudorick): Remove DATA_DIR once everything has been isolated. crbug/400499 // TODO(jbudorick): Remove DATA_DIR once everything has been isolated. crbug/400499
return getIsolatedTestFilePath(DATA_DIR + path); return PathUtils.getExternalStorageDirectory() + DATA_DIR + path;
} }
// TODO(jbudorick): Remove this function once everything has been isolated and switched back // TODO(jbudorick): Remove this function once everything has been isolated and switched back
...@@ -30,14 +30,7 @@ public class UrlUtils { ...@@ -30,14 +30,7 @@ public class UrlUtils {
* @param path Pathname relative to external/ * @param path Pathname relative to external/
*/ */
public static String getIsolatedTestFilePath(String path) { public static String getIsolatedTestFilePath(String path) {
return getIsolatedTestRoot() + "/" + path; return PathUtils.getExternalStorageDirectory() + "/" + path;
}
/**
* Returns the root of the test data directory.
*/
public static String getIsolatedTestRoot() {
return PathUtils.getExternalStorageDirectory() + "/chromium_tests_root";
} }
/** /**
......
...@@ -18,8 +18,6 @@ ...@@ -18,8 +18,6 @@
namespace { namespace {
base::FilePath* g_test_data_dir = nullptr;
struct RunState { struct RunState {
RunState(base::MessagePump::Delegate* delegate, int run_depth) RunState(base::MessagePump::Delegate* delegate, int run_depth)
: delegate(delegate), : delegate(delegate),
...@@ -134,14 +132,13 @@ std::unique_ptr<base::MessagePump> CreateMessagePumpForUIStub() { ...@@ -134,14 +132,13 @@ std::unique_ptr<base::MessagePump> CreateMessagePumpForUIStub() {
return std::unique_ptr<base::MessagePump>(new MessagePumpForUIStub()); return std::unique_ptr<base::MessagePump>(new MessagePumpForUIStub());
}; };
// Provides the test path for DIR_SOURCE_ROOT and DIR_ANDROID_APP_DATA. // Provides the test path for DIR_MODULE and DIR_ANDROID_APP_DATA.
bool GetTestProviderPath(int key, base::FilePath* result) { bool GetTestProviderPath(int key, base::FilePath* result) {
switch (key) { switch (key) {
case base::DIR_ANDROID_APP_DATA: case base::DIR_ANDROID_APP_DATA: {
case base::DIR_SOURCE_ROOT: // For tests, app data is put in external storage.
CHECK(g_test_data_dir != nullptr); return base::android::GetExternalStorageDirectory(result);
*result = *g_test_data_dir; }
return true;
default: default:
return false; return false;
} }
...@@ -169,13 +166,8 @@ void InitAndroidTestLogging() { ...@@ -169,13 +166,8 @@ void InitAndroidTestLogging() {
false); // Tick count false); // Tick count
} }
void InitAndroidTestPaths(const FilePath& test_data_dir) { void InitAndroidTestPaths() {
if (g_test_data_dir) { InitPathProvider(DIR_MODULE);
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); InitPathProvider(DIR_ANDROID_APP_DATA);
} }
...@@ -187,6 +179,7 @@ void InitAndroidTestMessageLoop() { ...@@ -187,6 +179,7 @@ void InitAndroidTestMessageLoop() {
void InitAndroidTest() { void InitAndroidTest() {
if (!base::AndroidIsChildProcess()) { if (!base::AndroidIsChildProcess()) {
InitAndroidTestLogging(); InitAndroidTestLogging();
InitAndroidTestPaths();
} }
InitAndroidTestMessageLoop(); InitAndroidTestMessageLoop();
} }
......
...@@ -9,13 +9,11 @@ ...@@ -9,13 +9,11 @@
namespace base { namespace base {
class FilePath;
// Init logging for tests on Android. Logs will be output into Android's logcat. // Init logging for tests on Android. Logs will be output into Android's logcat.
BASE_EXPORT void InitAndroidTestLogging(); BASE_EXPORT void InitAndroidTestLogging();
// Init path providers for tests on Android. // Init path providers for tests on Android.
BASE_EXPORT void InitAndroidTestPaths(const FilePath& test_data_dir); BASE_EXPORT void InitAndroidTestPaths();
// Init the message loop for tests on Android. // Init the message loop for tests on Android.
BASE_EXPORT void InitAndroidTestMessageLoop(); BASE_EXPORT void InitAndroidTestMessageLoop();
......
...@@ -241,16 +241,12 @@ class LocalDeviceGtestRun(local_device_test_run.LocalDeviceTestRun): ...@@ -241,16 +241,12 @@ class LocalDeviceGtestRun(local_device_test_run.LocalDeviceTestRun):
def push_test_data(): def push_test_data():
# Push data dependencies. # Push data dependencies.
device_root = posixpath.join(dev.GetExternalStoragePath(), external_storage = dev.GetExternalStoragePath()
'chromium_tests_root')
data_deps = self._test_instance.GetDataDependencies() data_deps = self._test_instance.GetDataDependencies()
host_device_tuples = [ host_device_tuples = [
(h, d if d is not None else device_root) (h, d if d is not None else external_storage)
for h, d in data_deps] for h, d in data_deps]
dev.PushChangedFiles(host_device_tuples, delete_device_stale=True) dev.PushChangedFiles(host_device_tuples)
if not host_device_tuples:
dev.RunShellCommand(['rm', '-rf', device_root], check_return=True)
dev.RunShellCommand(['mkdir', '-p', device_root], check_return=True)
def init_tool_and_start_servers(): def init_tool_and_start_servers():
tool = self.GetTool(dev) tool = self.GetTool(dev)
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
import logging import logging
import os import os
import posixpath
import re import re
import time import time
...@@ -59,11 +58,11 @@ class LocalDeviceInstrumentationTestRun( ...@@ -59,11 +58,11 @@ class LocalDeviceInstrumentationTestRun(
return self._test_instance.suite return self._test_instance.suite
def SetUp(self): def SetUp(self):
def substitute_device_root(d, device_root): def substitute_external_storage(d, external_storage):
if not d: if not d:
return device_root return external_storage
elif isinstance(d, list): elif isinstance(d, list):
return posixpath.join(p if p else device_root for p in d) return '/'.join(p if p else external_storage for p in d)
else: else:
return d return d
...@@ -107,19 +106,14 @@ class LocalDeviceInstrumentationTestRun( ...@@ -107,19 +106,14 @@ class LocalDeviceInstrumentationTestRun(
check_return=True) check_return=True)
def push_test_data(): def push_test_data():
device_root = posixpath.join(dev.GetExternalStoragePath(), external_storage = dev.GetExternalStoragePath()
'chromium_tests_root')
host_device_tuples_substituted = [ host_device_tuples_substituted = [
(h, substitute_device_root(d, device_root)) (h, substitute_external_storage(d, external_storage))
for h, d in host_device_tuples] for h, d in host_device_tuples]
logging.info('instrumentation data deps:') logging.info('instrumentation data deps:')
for h, d in host_device_tuples_substituted: for h, d in host_device_tuples_substituted:
logging.info('%r -> %r', h, d) logging.info('%r -> %r', h, d)
dev.PushChangedFiles(host_device_tuples_substituted, dev.PushChangedFiles(host_device_tuples_substituted)
delete_device_stale=True)
if not host_device_tuples_substituted:
dev.RunShellCommand(['rm', '-rf', device_root], check_return=True)
dev.RunShellCommand(['mkdir', '-p', device_root], check_return=True)
def create_flag_changer(): def create_flag_changer():
if self._test_instance.flags: if self._test_instance.flags:
......
...@@ -230,8 +230,6 @@ class RemoteDeviceTestRun(test_run.TestRun): ...@@ -230,8 +230,6 @@ class RemoteDeviceTestRun(test_run.TestRun):
self._app_id = self._UploadAppToDevice(app_path) self._app_id = self._UploadAppToDevice(app_path)
# TODO(agrieve): If AMP is ever ressurected, this needs to be changed to put
# test files under /sdcard/gtestdata. http://crbug.com/607169
data_deps = self._test_instance.GetDataDependencies() data_deps = self._test_instance.GetDataDependencies()
if data_deps: if data_deps:
with tempfile.NamedTemporaryFile(suffix='.zip') as test_with_deps: with tempfile.NamedTemporaryFile(suffix='.zip') as test_with_deps:
......
...@@ -24,7 +24,6 @@ ...@@ -24,7 +24,6 @@
'<(DEPTH)/build/android/pylib/remote/device/dummy/dummy.gyp:require_remote_device_dummy_apk', '<(DEPTH)/build/android/pylib/remote/device/dummy/dummy.gyp:require_remote_device_dummy_apk',
'<(DEPTH)/testing/android/appurify_support.gyp:appurify_support_java', '<(DEPTH)/testing/android/appurify_support.gyp:appurify_support_java',
'<(DEPTH)/testing/android/on_device_instrumentation.gyp:reporter_java', '<(DEPTH)/testing/android/on_device_instrumentation.gyp:reporter_java',
'<(DEPTH)/testing/android/native_test.gyp:native_test_java',
'<(DEPTH)/tools/android/android_tools.gyp:android_tools', '<(DEPTH)/tools/android/android_tools.gyp:android_tools',
], ],
'conditions': [ 'conditions': [
...@@ -34,9 +33,8 @@ ...@@ -34,9 +33,8 @@
'test_type': 'gtest', 'test_type': 'gtest',
'apk_name': '<(test_suite_name)', 'apk_name': '<(test_suite_name)',
'intermediate_dir': '<(PRODUCT_DIR)/<(test_suite_name)_apk', 'intermediate_dir': '<(PRODUCT_DIR)/<(test_suite_name)_apk',
'java_in_dir': '<(DEPTH)/build/android/empty',
'android_manifest_path%': '<(DEPTH)/testing/android/native_test/java/AndroidManifest.xml',
'final_apk_path': '<(intermediate_dir)/<(test_suite_name)-debug.apk', 'final_apk_path': '<(intermediate_dir)/<(test_suite_name)-debug.apk',
'java_in_dir': '<(DEPTH)/testing/android/native_test/java',
'native_lib_target': 'lib<(test_suite_name)', 'native_lib_target': 'lib<(test_suite_name)',
# TODO(yfriedman, cjhopman): Support managed installs for gtests. # TODO(yfriedman, cjhopman): Support managed installs for gtests.
'gyp_managed_install': 0, 'gyp_managed_install': 0,
......
...@@ -444,7 +444,7 @@ bool PathProvider(int key, base::FilePath* result) { ...@@ -444,7 +444,7 @@ bool PathProvider(int key, base::FilePath* result) {
#if defined(OS_ANDROID) #if defined(OS_ANDROID)
// On Android, our tests don't have permission to write to DIR_MODULE. // On Android, our tests don't have permission to write to DIR_MODULE.
// gtest/test_runner.py pushes data to external storage. // gtest/test_runner.py pushes data to external storage.
if (!PathService::Get(base::DIR_SOURCE_ROOT, &cur)) if (!PathService::Get(base::DIR_ANDROID_EXTERNAL_STORAGE, &cur))
return false; return false;
#else #else
if (!PathService::Get(base::DIR_MODULE, &cur)) if (!PathService::Get(base::DIR_MODULE, &cur))
......
...@@ -429,7 +429,6 @@ shared_library("cronet_tests") { ...@@ -429,7 +429,6 @@ shared_library("cronet_tests") {
":cronet_version_header", ":cronet_version_header",
"//base", "//base",
"//base:i18n", "//base:i18n",
"//base/test:test_support",
"//net", "//net",
"//net:simple_quic_tools", "//net:simple_quic_tools",
"//net:test_support", "//net:test_support",
...@@ -480,7 +479,6 @@ android_library("cronet_test_apk_java") { ...@@ -480,7 +479,6 @@ android_library("cronet_test_apk_java") {
":cronet_api", ":cronet_api",
":cronet_java", ":cronet_java",
"//base:base_java", "//base:base_java",
"//base:base_java_test_support",
"//net/android:net_java_test_support", "//net/android:net_java_test_support",
"//third_party/netty-tcnative:netty-tcnative", "//third_party/netty-tcnative:netty-tcnative",
"//third_party/netty4:netty_all", "//third_party/netty4:netty_all",
......
...@@ -9,8 +9,6 @@ ...@@ -9,8 +9,6 @@
#include "base/android/jni_android.h" #include "base/android/jni_android.h"
#include "base/android/jni_array.h" #include "base/android/jni_array.h"
#include "base/android/jni_string.h"
#include "base/test/test_support_android.h"
#include "crypto/sha2.h" #include "crypto/sha2.h"
#include "jni/MockCertVerifier_jni.h" #include "jni/MockCertVerifier_jni.h"
#include "net/base/net_errors.h" #include "net/base/net_errors.h"
...@@ -51,15 +49,9 @@ static bool CalculatePublicKeySha256(const net::X509Certificate& cert, ...@@ -51,15 +49,9 @@ static bool CalculatePublicKeySha256(const net::X509Certificate& cert,
} // namespace } // namespace
static jlong CreateMockCertVerifier( static jlong CreateMockCertVerifier(JNIEnv* env,
JNIEnv* env, const JavaParamRef<jclass>& jcaller,
const JavaParamRef<jclass>& jcaller, const JavaParamRef<jobjectArray>& jcerts) {
const JavaParamRef<jobjectArray>& jcerts,
const JavaParamRef<jstring>& jtest_data_dir) {
base::FilePath test_data_dir(
base::android::ConvertJavaStringToUTF8(env, jtest_data_dir));
base::InitAndroidTestPaths(test_data_dir);
std::vector<std::string> certs; std::vector<std::string> certs;
base::android::AppendJavaStringArrayToStringVector(env, jcerts, &certs); base::android::AppendJavaStringArrayToStringVector(env, jcerts, &certs);
net::MockCertVerifier* mock_cert_verifier = new net::MockCertVerifier(); net::MockCertVerifier* mock_cert_verifier = new net::MockCertVerifier();
......
...@@ -18,7 +18,6 @@ ...@@ -18,7 +18,6 @@
#include "base/path_service.h" #include "base/path_service.h"
#include "base/strings/string_util.h" #include "base/strings/string_util.h"
#include "base/strings/stringprintf.h" #include "base/strings/stringprintf.h"
#include "base/test/test_support_android.h"
#include "components/cronet/android/test/cronet_test_util.h" #include "components/cronet/android/test/cronet_test_util.h"
#include "jni/NativeTestServer_jni.h" #include "jni/NativeTestServer_jni.h"
#include "net/base/host_port_pair.h" #include "net/base/host_port_pair.h"
...@@ -165,16 +164,10 @@ std::unique_ptr<net::test_server::HttpResponse> SdchRequestHandler( ...@@ -165,16 +164,10 @@ std::unique_ptr<net::test_server::HttpResponse> SdchRequestHandler(
jboolean StartNativeTestServer(JNIEnv* env, jboolean StartNativeTestServer(JNIEnv* env,
const JavaParamRef<jclass>& jcaller, const JavaParamRef<jclass>& jcaller,
const JavaParamRef<jstring>& jtest_files_root, const JavaParamRef<jstring>& jtest_files_root) {
const JavaParamRef<jstring>& jtest_data_dir) {
// Shouldn't happen. // Shouldn't happen.
if (g_test_server) if (g_test_server)
return false; return false;
base::FilePath test_data_dir(
base::android::ConvertJavaStringToUTF8(env, jtest_data_dir));
base::InitAndroidTestPaths(test_data_dir);
g_test_server = new net::EmbeddedTestServer(); g_test_server = new net::EmbeddedTestServer();
g_test_server->RegisterRequestHandler( g_test_server->RegisterRequestHandler(
base::Bind(&NativeTestServerRequestHandler)); base::Bind(&NativeTestServerRequestHandler));
......
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
#include "base/bind.h" #include "base/bind.h"
#include "base/files/file_path.h" #include "base/files/file_path.h"
#include "base/files/file_util.h" #include "base/files/file_util.h"
#include "base/test/test_support_android.h"
#include "base/threading/thread.h" #include "base/threading/thread.h"
#include "components/cronet/android/test/cronet_test_util.h" #include "components/cronet/android/test/cronet_test_util.h"
#include "jni/QuicTestServer_jni.h" #include "jni/QuicTestServer_jni.h"
...@@ -30,8 +29,7 @@ static const int kServerPort = 6121; ...@@ -30,8 +29,7 @@ static const int kServerPort = 6121;
base::Thread* g_quic_server_thread = nullptr; base::Thread* g_quic_server_thread = nullptr;
net::QuicSimpleServer* g_quic_server = nullptr; net::QuicSimpleServer* g_quic_server = nullptr;
void StartOnServerThread(const base::FilePath& test_files_root, void StartOnServerThread(const base::FilePath& test_files_root) {
const base::FilePath& test_data_dir) {
DCHECK(g_quic_server_thread->task_runner()->BelongsToCurrentThread()); DCHECK(g_quic_server_thread->task_runner()->BelongsToCurrentThread());
DCHECK(!g_quic_server); DCHECK(!g_quic_server);
...@@ -43,7 +41,9 @@ void StartOnServerThread(const base::FilePath& test_files_root, ...@@ -43,7 +41,9 @@ void StartOnServerThread(const base::FilePath& test_files_root,
net::QuicConfig config; net::QuicConfig config;
// Set up server certs. // Set up server certs.
base::FilePath directory = test_data_dir.Append("net/data/ssl/certificates"); base::FilePath directory;
CHECK(base::android::GetExternalStorageDirectory(&directory));
directory = directory.Append("net/data/ssl/certificates");
// TODO(xunjieli): Use scoped_ptr when crbug.com/545474 is fixed. // TODO(xunjieli): Use scoped_ptr when crbug.com/545474 is fixed.
net::ProofSourceChromium* proof_source = new net::ProofSourceChromium(); net::ProofSourceChromium* proof_source = new net::ProofSourceChromium();
CHECK(proof_source->Initialize( CHECK(proof_source->Initialize(
...@@ -73,13 +73,8 @@ void ShutdownOnServerThread() { ...@@ -73,13 +73,8 @@ void ShutdownOnServerThread() {
// the device. // the device.
void StartQuicTestServer(JNIEnv* env, void StartQuicTestServer(JNIEnv* env,
const JavaParamRef<jclass>& /*jcaller*/, const JavaParamRef<jclass>& /*jcaller*/,
const JavaParamRef<jstring>& jtest_files_root, const JavaParamRef<jstring>& jtest_files_root) {
const JavaParamRef<jstring>& jtest_data_dir) {
DCHECK(!g_quic_server_thread); DCHECK(!g_quic_server_thread);
base::FilePath test_data_dir(
base::android::ConvertJavaStringToUTF8(env, jtest_data_dir));
base::InitAndroidTestPaths(test_data_dir);
g_quic_server_thread = new base::Thread("quic server thread"); g_quic_server_thread = new base::Thread("quic server thread");
base::Thread::Options thread_options; base::Thread::Options thread_options;
thread_options.message_loop_type = base::MessageLoop::TYPE_IO; thread_options.message_loop_type = base::MessageLoop::TYPE_IO;
...@@ -88,8 +83,7 @@ void StartQuicTestServer(JNIEnv* env, ...@@ -88,8 +83,7 @@ void StartQuicTestServer(JNIEnv* env,
base::FilePath test_files_root( base::FilePath test_files_root(
base::android::ConvertJavaStringToUTF8(env, jtest_files_root)); base::android::ConvertJavaStringToUTF8(env, jtest_files_root));
g_quic_server_thread->task_runner()->PostTask( g_quic_server_thread->task_runner()->PostTask(
FROM_HERE, FROM_HERE, base::Bind(&StartOnServerThread, test_files_root));
base::Bind(&StartOnServerThread, test_files_root, test_data_dir));
} }
void ShutdownQuicTestServer(JNIEnv* env, void ShutdownQuicTestServer(JNIEnv* env,
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
package org.chromium.net; package org.chromium.net;
import org.chromium.base.annotations.JNINamespace; import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.test.util.UrlUtils;
/** /**
* A Java wrapper to supply a net::MockCertVerifier which can be then passed * A Java wrapper to supply a net::MockCertVerifier which can be then passed
...@@ -23,8 +22,8 @@ public class MockCertVerifier { ...@@ -23,8 +22,8 @@ public class MockCertVerifier {
* @return a pointer to the newly created net::MockCertVerifier. * @return a pointer to the newly created net::MockCertVerifier.
*/ */
public static long createMockCertVerifier(String[] certs) { public static long createMockCertVerifier(String[] certs) {
return nativeCreateMockCertVerifier(certs, UrlUtils.getIsolatedTestRoot()); return nativeCreateMockCertVerifier(certs);
} }
private static native long nativeCreateMockCertVerifier(String[] certs, String testDataDir); private static native long nativeCreateMockCertVerifier(String[] certs);
} }
...@@ -7,7 +7,6 @@ package org.chromium.net; ...@@ -7,7 +7,6 @@ package org.chromium.net;
import android.content.Context; import android.content.Context;
import org.chromium.base.annotations.JNINamespace; import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.test.util.UrlUtils;
/** /**
* Wrapper class to start an in-process native test server, and get URLs * Wrapper class to start an in-process native test server, and get URLs
...@@ -21,7 +20,7 @@ public final class NativeTestServer { ...@@ -21,7 +20,7 @@ public final class NativeTestServer {
public static boolean startNativeTestServer(Context context) { public static boolean startNativeTestServer(Context context) {
TestFilesInstaller.installIfNeeded(context); TestFilesInstaller.installIfNeeded(context);
return nativeStartNativeTestServer( return nativeStartNativeTestServer(
TestFilesInstaller.getInstalledPath(context), UrlUtils.getIsolatedTestRoot()); TestFilesInstaller.getInstalledPath(context));
} }
public static void shutdownNativeTestServer() { public static void shutdownNativeTestServer() {
...@@ -83,7 +82,7 @@ public final class NativeTestServer { ...@@ -83,7 +82,7 @@ public final class NativeTestServer {
return nativeIsDataReductionProxySupported(); return nativeIsDataReductionProxySupported();
} }
private static native boolean nativeStartNativeTestServer(String filePath, String testDataDir); private static native boolean nativeStartNativeTestServer(String filePath);
private static native void nativeShutdownNativeTestServer(); private static native void nativeShutdownNativeTestServer();
private static native String nativeGetEchoBodyURL(); private static native String nativeGetEchoBodyURL();
private static native String nativeGetEchoHeaderURL(String header); private static native String nativeGetEchoHeaderURL(String header);
......
...@@ -10,7 +10,6 @@ import android.os.ConditionVariable; ...@@ -10,7 +10,6 @@ import android.os.ConditionVariable;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.annotations.CalledByNative; import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace; import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.test.util.UrlUtils;
/** /**
* Wrapper class to start a Quic test server. * Wrapper class to start a Quic test server.
...@@ -34,8 +33,7 @@ public final class QuicTestServer { ...@@ -34,8 +33,7 @@ public final class QuicTestServer {
throw new IllegalStateException("Quic server is already running"); throw new IllegalStateException("Quic server is already running");
} }
TestFilesInstaller.installIfNeeded(context); TestFilesInstaller.installIfNeeded(context);
nativeStartQuicTestServer( nativeStartQuicTestServer(TestFilesInstaller.getInstalledPath(context));
TestFilesInstaller.getInstalledPath(context), UrlUtils.getIsolatedTestRoot());
sBlock.block(); sBlock.block();
sBlock.close(); sBlock.close();
sServerRunning = true; sServerRunning = true;
...@@ -82,7 +80,7 @@ public final class QuicTestServer { ...@@ -82,7 +80,7 @@ public final class QuicTestServer {
sBlock.open(); sBlock.open();
} }
private static native void nativeStartQuicTestServer(String filePath, String testDataDir); private static native void nativeStartQuicTestServer(String filePath);
private static native void nativeShutdownQuicTestServer(); private static native void nativeShutdownQuicTestServer();
private static native String nativeGetServerHost(); private static native String nativeGetServerHost();
private static native int nativeGetServerPort(); private static native int nativeGetServerPort();
......
...@@ -8,7 +8,6 @@ import android.content.ComponentName; ...@@ -8,7 +8,6 @@ import android.content.ComponentName;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.ServiceConnection; import android.content.ServiceConnection;
import android.os.Environment;
import android.os.IBinder; import android.os.IBinder;
import android.os.RemoteException; import android.os.RemoteException;
...@@ -195,17 +194,19 @@ public class EmbeddedTestServer { ...@@ -195,17 +194,19 @@ public class EmbeddedTestServer {
* On returning, the server is ready for use. * On returning, the server is ready for use.
* *
* @param context The context in which the server will run. * @param context The context in which the server will run.
* @param directory The directory from which files should be served. This must be * @param directory The directory from which files should be served.
* Environment.getExternalStorageDirectory().
* @return The created server. * @return The created server.
*/ */
public static EmbeddedTestServer createAndStartFileServer(Context context, File directory) public static EmbeddedTestServer createAndStartFileServer(Context context, File directory)
throws InterruptedException { throws InterruptedException {
// TODO(jbudorick): Update all callers to use createAndStartDefaultServer() directly. EmbeddedTestServer server = new EmbeddedTestServer();
if (!directory.equals(Environment.getExternalStorageDirectory())) { server.initializeNative(context);
throw new IllegalArgumentException("Expected directory to be ExternalStorageDirectory"); server.serveFilesFromDirectory(directory);
if (!server.start()) {
throw new EmbeddedTestServerFailure(
"Failed to start serving files from " + directory.getPath());
} }
return createAndStartDefaultServer(context); return server;
} }
/** Create and initialize a server with the default handlers. /** Create and initialize a server with the default handlers.
......
...@@ -15,7 +15,6 @@ import org.chromium.base.annotations.JNINamespace; ...@@ -15,7 +15,6 @@ import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.library_loader.LibraryLoader; import org.chromium.base.library_loader.LibraryLoader;
import org.chromium.base.library_loader.LibraryProcessType; import org.chromium.base.library_loader.LibraryProcessType;
import org.chromium.base.library_loader.ProcessInitException; import org.chromium.base.library_loader.ProcessInitException;
import org.chromium.base.test.util.UrlUtils;
import java.util.concurrent.Callable; import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutionException;
...@@ -77,7 +76,7 @@ public class EmbeddedTestServerImpl extends IEmbeddedTestServerImpl.Stub { ...@@ -77,7 +76,7 @@ public class EmbeddedTestServerImpl extends IEmbeddedTestServerImpl.Stub {
runOnHandlerThread(new Callable<Void>() { runOnHandlerThread(new Callable<Void>() {
@Override @Override
public Void call() { public Void call() {
if (mNativeEmbeddedTestServer == 0) nativeInit(UrlUtils.getIsolatedTestRoot()); if (mNativeEmbeddedTestServer == 0) nativeInit();
assert mNativeEmbeddedTestServer != 0; assert mNativeEmbeddedTestServer != 0;
return null; return null;
} }
...@@ -206,7 +205,7 @@ public class EmbeddedTestServerImpl extends IEmbeddedTestServerImpl.Stub { ...@@ -206,7 +205,7 @@ public class EmbeddedTestServerImpl extends IEmbeddedTestServerImpl.Stub {
mNativeEmbeddedTestServer = 0; mNativeEmbeddedTestServer = 0;
} }
private native void nativeInit(String testDataDir); private native void nativeInit();
private native void nativeDestroy(long nativeEmbeddedTestServerAndroid); private native void nativeDestroy(long nativeEmbeddedTestServerAndroid);
private native boolean nativeStart(long nativeEmbeddedTestServerAndroid); private native boolean nativeStart(long nativeEmbeddedTestServerAndroid);
private native boolean nativeShutdownAndWaitUntilComplete(long nativeEmbeddedTestServerAndroid); private native boolean nativeShutdownAndWaitUntilComplete(long nativeEmbeddedTestServerAndroid);
......
...@@ -6,7 +6,7 @@ package org.chromium.net.test.util; ...@@ -6,7 +6,7 @@ package org.chromium.net.test.util;
import android.util.Base64; import android.util.Base64;
import org.chromium.base.test.util.UrlUtils; import org.chromium.base.PathUtils;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.FileReader; import java.io.FileReader;
...@@ -23,7 +23,7 @@ public class CertTestUtil { ...@@ -23,7 +23,7 @@ public class CertTestUtil {
* The location of the directory that contains certificates for testing. * The location of the directory that contains certificates for testing.
*/ */
public static final String CERTS_DIRECTORY = public static final String CERTS_DIRECTORY =
UrlUtils.getIsolatedTestFilePath("net/data/ssl/certificates/"); PathUtils.getExternalStorageDirectory() + "/net/data/ssl/certificates/";
private static final String BEGIN_MARKER = "-----BEGIN CERTIFICATE-----"; private static final String BEGIN_MARKER = "-----BEGIN CERTIFICATE-----";
private static final String END_MARKER = "-----END CERTIFICATE-----"; private static final String END_MARKER = "-----END CERTIFICATE-----";
......
...@@ -8,7 +8,6 @@ ...@@ -8,7 +8,6 @@
#include "base/android/scoped_java_ref.h" #include "base/android/scoped_java_ref.h"
#include "base/bind.h" #include "base/bind.h"
#include "base/files/file_path.h" #include "base/files/file_path.h"
#include "base/test/test_support_android.h"
#include "base/trace_event/trace_event.h" #include "base/trace_event/trace_event.h"
#include "net/test/jni/EmbeddedTestServerImpl_jni.h" #include "net/test/jni/EmbeddedTestServerImpl_jni.h"
...@@ -70,13 +69,8 @@ void EmbeddedTestServerAndroid::Destroy(JNIEnv* env, ...@@ -70,13 +69,8 @@ void EmbeddedTestServerAndroid::Destroy(JNIEnv* env,
delete this; delete this;
} }
static void Init(JNIEnv* env, static void Init(JNIEnv* env, const JavaParamRef<jobject>& jobj) {
const JavaParamRef<jobject>& jobj,
const JavaParamRef<jstring>& jtest_data_dir) {
TRACE_EVENT0("native", "EmbeddedTestServerAndroid::Init"); TRACE_EVENT0("native", "EmbeddedTestServerAndroid::Init");
base::FilePath test_data_dir(
base::android::ConvertJavaStringToUTF8(env, jtest_data_dir));
base::InitAndroidTestPaths(test_data_dir);
new EmbeddedTestServerAndroid(env, jobj); new EmbeddedTestServerAndroid(env, jobj);
} }
......
...@@ -59,7 +59,6 @@ ...@@ -59,7 +59,6 @@
'on_device_instrumentation.gyp:reporter_java', 'on_device_instrumentation.gyp:reporter_java',
'../../base/base.gyp:base_native_libraries_gen', '../../base/base.gyp:base_native_libraries_gen',
'../../base/base.gyp:base_java', '../../base/base.gyp:base_java',
'../../base/base.gyp:base_java_test_support',
], ],
'variables': { 'variables': {
'chromium_code': '1', 'chromium_code': '1',
......
...@@ -40,7 +40,6 @@ android_library("native_test_java") { ...@@ -40,7 +40,6 @@ android_library("native_test_java") {
testonly = true testonly = true
deps = [ deps = [
"//base:base_java", "//base:base_java",
"//base:base_java_test_support",
"//testing/android/appurify_support:appurify_support_java", "//testing/android/appurify_support:appurify_support_java",
"//testing/android/reporter:reporter_java", "//testing/android/reporter:reporter_java",
] ]
......
...@@ -16,7 +16,6 @@ import org.chromium.base.CommandLine; ...@@ -16,7 +16,6 @@ import org.chromium.base.CommandLine;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.annotations.JNINamespace; import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.multidex.ChromiumMultiDexInstaller; import org.chromium.base.multidex.ChromiumMultiDexInstaller;
import org.chromium.base.test.util.UrlUtils;
import org.chromium.test.reporter.TestStatusReporter; import org.chromium.test.reporter.TestStatusReporter;
import java.io.File; import java.io.File;
...@@ -155,7 +154,7 @@ public class NativeTest { ...@@ -155,7 +154,7 @@ public class NativeTest {
private void runTests(Activity activity) { private void runTests(Activity activity) {
nativeRunTests(mCommandLineFlags.toString(), mCommandLineFilePath, mStdoutFilePath, nativeRunTests(mCommandLineFlags.toString(), mCommandLineFilePath, mStdoutFilePath,
mStdoutFifo, activity.getApplicationContext(), UrlUtils.getIsolatedTestRoot()); mStdoutFifo, activity.getApplicationContext());
activity.finish(); activity.finish();
mReporter.testRunFinished(Process.myPid()); mReporter.testRunFinished(Process.myPid());
} }
...@@ -168,5 +167,5 @@ public class NativeTest { ...@@ -168,5 +167,5 @@ public class NativeTest {
} }
private native void nativeRunTests(String commandLineFlags, String commandLineFilePath, private native void nativeRunTests(String commandLineFlags, String commandLineFilePath,
String stdoutFilePath, boolean stdoutFifo, Context appContext, String testDataDir); String stdoutFilePath, boolean stdoutFifo, Context appContext);
} }
...@@ -24,7 +24,6 @@ ...@@ -24,7 +24,6 @@
#include "base/files/file_util.h" #include "base/files/file_util.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/strings/stringprintf.h" #include "base/strings/stringprintf.h"
#include "base/test/test_support_android.h"
#include "gtest/gtest.h" #include "gtest/gtest.h"
#include "jni/NativeTest_jni.h" #include "jni/NativeTest_jni.h"
#include "testing/android/native_test/native_test_util.h" #include "testing/android/native_test/native_test_util.h"
...@@ -71,8 +70,7 @@ static void RunTests(JNIEnv* env, ...@@ -71,8 +70,7 @@ static void RunTests(JNIEnv* env,
const JavaParamRef<jstring>& jcommand_line_file_path, const JavaParamRef<jstring>& jcommand_line_file_path,
const JavaParamRef<jstring>& jstdout_file_path, const JavaParamRef<jstring>& jstdout_file_path,
jboolean jstdout_fifo, jboolean jstdout_fifo,
const JavaParamRef<jobject>& app_context, const JavaParamRef<jobject>& app_context) {
const JavaParamRef<jstring>& jtest_data_dir) {
// Command line initialized basically, will be fully initialized later. // Command line initialized basically, will be fully initialized later.
static const char* const kInitialArgv[] = { "ChromeTestActivity" }; static const char* const kInitialArgv[] = { "ChromeTestActivity" };
base::CommandLine::Init(arraysize(kInitialArgv), kInitialArgv); base::CommandLine::Init(arraysize(kInitialArgv), kInitialArgv);
...@@ -126,10 +124,6 @@ static void RunTests(JNIEnv* env, ...@@ -126,10 +124,6 @@ static void RunTests(JNIEnv* env,
base::debug::WaitForDebugger(24 * 60 * 60, false); base::debug::WaitForDebugger(24 * 60 * 60, false);
} }
base::FilePath test_data_dir(
base::android::ConvertJavaStringToUTF8(env, jtest_data_dir));
base::InitAndroidTestPaths(test_data_dir);
ScopedMainEntryLogger scoped_main_entry_logger; ScopedMainEntryLogger scoped_main_entry_logger;
main(argc, &argv[0]); main(argc, &argv[0]);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment