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

Side by Side Diff: testing/android/java/src/org/chromium/native_test/ChromeNativeTestActivity.java

Issue 866183002: Roll Chrome into Mojo. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.native_test; 5 package org.chromium.native_test;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.content.Context; 8 import android.content.Context;
9 import android.os.Bundle; 9 import android.os.Bundle;
10 import android.os.Environment; 10 import android.os.Environment;
(...skipping 11 matching lines...) Expand all
22 /** 22 /**
23 * Android's NativeActivity is mostly useful for pure-native code. 23 * Android's NativeActivity is mostly useful for pure-native code.
24 * Our tests need to go up to our own java classes, which is not possible using 24 * Our tests need to go up to our own java classes, which is not possible using
25 * the native activity class loader. 25 * the native activity class loader.
26 */ 26 */
27 public class ChromeNativeTestActivity extends Activity { 27 public class ChromeNativeTestActivity extends Activity {
28 public static final String EXTRA_COMMAND_LINE_FILE = 28 public static final String EXTRA_COMMAND_LINE_FILE =
29 "org.chromium.native_test.ChromeNativeTestActivity.CommandLineFile"; 29 "org.chromium.native_test.ChromeNativeTestActivity.CommandLineFile";
30 public static final String EXTRA_COMMAND_LINE_FLAGS = 30 public static final String EXTRA_COMMAND_LINE_FLAGS =
31 "org.chromium.native_test.ChromeNativeTestActivity.CommandLineFlags" ; 31 "org.chromium.native_test.ChromeNativeTestActivity.CommandLineFlags" ;
32 public static final String EXTRA_STDOUT_FILE =
33 "org.chromium.native_test.ChromeNativeTestActivity.StdoutFile";
32 34
33 private static final String TAG = "ChromeNativeTestActivity"; 35 private static final String TAG = "ChromeNativeTestActivity";
34 private static final String EXTRA_RUN_IN_SUB_THREAD = "RunInSubThread"; 36 private static final String EXTRA_RUN_IN_SUB_THREAD = "RunInSubThread";
35 // We post a delayed task to run tests so that we do not block onCreate(). 37 // We post a delayed task to run tests so that we do not block onCreate().
36 private static final long RUN_TESTS_DELAY_IN_MS = 300; 38 private static final long RUN_TESTS_DELAY_IN_MS = 300;
37 39
38 @Override 40 @Override
39 public void onCreate(Bundle savedInstanceState) { 41 public void onCreate(Bundle savedInstanceState) {
40 super.onCreate(savedInstanceState); 42 super.onCreate(savedInstanceState);
41 CommandLine.init(new String[]{}); 43 CommandLine.init(new String[]{});
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 commandLineFilePath = ""; 84 commandLineFilePath = "";
83 } else { 85 } else {
84 File commandLineFile = new File(commandLineFilePath); 86 File commandLineFile = new File(commandLineFilePath);
85 if (!commandLineFile.isAbsolute()) { 87 if (!commandLineFile.isAbsolute()) {
86 commandLineFilePath = Environment.getExternalStorageDirectory() + "/" 88 commandLineFilePath = Environment.getExternalStorageDirectory() + "/"
87 + commandLineFilePath; 89 + commandLineFilePath;
88 } 90 }
89 Log.i(TAG, "command line file path: " + commandLineFilePath); 91 Log.i(TAG, "command line file path: " + commandLineFilePath);
90 } 92 }
91 93
94 String stdoutFilePath = getIntent().getStringExtra(EXTRA_STDOUT_FILE);
95 boolean stdoutFifo = false;
96 if (stdoutFilePath == null) {
97 stdoutFilePath = new File(getFilesDir(), "test.fifo").getAbsolutePat h();
98 stdoutFifo = true;
99 }
100
92 // This directory is used by build/android/pylib/test_package_apk.py. 101 // This directory is used by build/android/pylib/test_package_apk.py.
93 nativeRunTests(commandLineFlags, commandLineFilePath, getFilesDir().getA bsolutePath(), 102 nativeRunTests(commandLineFlags, commandLineFilePath, stdoutFilePath, st doutFifo,
94 getApplicationContext()); 103 getApplicationContext());
104 finish();
95 } 105 }
96 106
97 // Signal a failure of the native test loader to python scripts 107 // Signal a failure of the native test loader to python scripts
98 // which run tests. For example, we look for 108 // which run tests. For example, we look for
99 // RUNNER_FAILED build/android/test_package.py. 109 // RUNNER_FAILED build/android/test_package.py.
100 private void nativeTestFailed() { 110 private void nativeTestFailed() {
101 Log.e(TAG, "[ RUNNER_FAILED ] could not load native library"); 111 Log.e(TAG, "[ RUNNER_FAILED ] could not load native library");
102 } 112 }
103 113
104 private void loadLibraries() { 114 private void loadLibraries() {
105 for (String library : NativeLibraries.LIBRARIES) { 115 for (String library : NativeLibraries.LIBRARIES) {
106 Log.i(TAG, "loading: " + library); 116 Log.i(TAG, "loading: " + library);
107 System.loadLibrary(library); 117 System.loadLibrary(library);
108 Log.i(TAG, "loaded: " + library); 118 Log.i(TAG, "loaded: " + library);
109 } 119 }
110 } 120 }
111 121
112 private native void nativeRunTests(String commandLineFlags, String commandLi neFilePath, 122 private native void nativeRunTests(String commandLineFlags, String commandLi neFilePath,
113 String filesDir, Context appContext); 123 String stdoutFilePath, boolean stdoutFifo, Context appContext);
114 } 124 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698