blob: 329e1e8b38631a643ea804b58c3ba556d65c3f48 [file] [log] [blame]
/*
* Copyright 2017 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
package org.webrtc.native_test;
import android.app.Activity;
import android.util.Log;
import org.chromium.build.NativeLibraries;
import org.webrtc.native_test.NativeTestWebrtc;
import org.webrtc.ContextUtils;
/**
* Native unit test that calls ContextUtils.initialize for WebRTC.
*/
public class RTCNativeUnitTest extends NativeTestWebrtc {
private static final String TAG = "RTCNativeUnitTest";
private static final String LIBRARY_UNDER_TEST_NAME =
"org.chromium.native_test.NativeTestInstrumentationTestRunner.LibraryUnderTest";
@Override
public void preCreate(Activity activity) {
super.preCreate(activity);
// For NativeActivity based tests, dependency libraries must be loaded before
// NativeActivity::OnCreate, otherwise loading android.app.lib_name will fail
String libraryToLoad = activity.getIntent().getStringExtra(LIBRARY_UNDER_TEST_NAME);
loadLibraries(
libraryToLoad != null ? new String[] {libraryToLoad} : NativeLibraries.LIBRARIES);
ContextUtils.initialize(activity.getApplicationContext());
}
private void loadLibraries(String[] librariesToLoad) {
for (String library : librariesToLoad) {
Log.i(TAG, "loading: " + library);
System.loadLibrary(library);
Log.i(TAG, "loaded: " + library);
}
}
}