Migrate Bionic tests to CTSv2
Bug:21762834
Change-Id: I853063c57c2c4d08330173b7504ffb23b38a4dc3
diff --git a/CtsTestCaseList.mk b/CtsTestCaseList.mk
index f23099b..1ef1d43 100644
--- a/CtsTestCaseList.mk
+++ b/CtsTestCaseList.mk
@@ -242,7 +242,7 @@
NativeMediaTest_XA \
ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
-cts_native_tests += bionic-unit-tests-cts
+cts_native_tests += CtsBionicTestCases
endif
cts_ui_tests := \
diff --git a/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/targetprep/FilePusher.java b/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/targetprep/FilePusher.java
index ce19c8d..054d815b 100644
--- a/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/targetprep/FilePusher.java
+++ b/common/host-side/tradefed/src/com/android/compatibility/common/tradefed/targetprep/FilePusher.java
@@ -16,10 +16,15 @@
package com.android.compatibility.common.tradefed.targetprep;
import com.android.compatibility.common.tradefed.build.CompatibilityBuildHelper;
+import com.android.ddmlib.Log.LogLevel;
import com.android.tradefed.build.IBuildInfo;
import com.android.tradefed.build.IFolderBuildInfo;
+import com.android.tradefed.config.Option;
import com.android.tradefed.config.OptionClass;
+import com.android.tradefed.log.LogUtil.CLog;
import com.android.tradefed.targetprep.PushFilePreparer;
+import com.android.tradefed.testtype.IAbi;
+import com.android.tradefed.testtype.IAbiReceiver;
import java.io.File;
import java.io.FileNotFoundException;
@@ -28,10 +33,16 @@
* Pushes specified testing artifacts from Compatibility repository.
*/
@OptionClass(alias="file-pusher")
-public class FilePusher extends PushFilePreparer {
+public class FilePusher extends PushFilePreparer implements IAbiReceiver {
+
+ @Option(name = "append-bitness",
+ description = "Append the ABI's bitness to the filename.")
+ private boolean mAppendBitness = false;
private CompatibilityBuildHelper mBuildHelper = null;
+ private IAbi mAbi;
+
protected File getTestsDir(IFolderBuildInfo buildInfo) throws FileNotFoundException {
if (mBuildHelper == null) {
mBuildHelper = new CompatibilityBuildHelper(buildInfo);
@@ -43,9 +54,20 @@
* {@inheritDoc}
*/
@Override
+ public void setAbi(IAbi abi) {
+ mAbi = abi;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
public File resolveRelativeFilePath(IBuildInfo buildInfo, String fileName) {
try {
- return new File(getTestsDir((IFolderBuildInfo) buildInfo), fileName);
+ File f = new File(getTestsDir((IFolderBuildInfo) buildInfo),
+ String.format("%s%s", fileName, mAppendBitness ? mAbi.getBitness() : ""));
+ CLog.logAndDisplay(LogLevel.ERROR, "Copying from %s", f.getAbsolutePath());
+ return f;
} catch (FileNotFoundException e) {
e.printStackTrace();
}
diff --git a/tests/tests/bionic/Android.mk b/tests/tests/bionic/Android.mk
index 06b7920..db8c2a9 100644
--- a/tests/tests/bionic/Android.mk
+++ b/tests/tests/bionic/Android.mk
@@ -1,6 +1,6 @@
LOCAL_PATH := $(call my-dir)
-test_executable := bionic-unit-tests-cts
+test_executable := CtsBionicTestCases
list_executable := $(test_executable)_list
include $(CLEAR_VARS)
@@ -26,6 +26,9 @@
liblog \
libgtest \
+# Tag this module as a cts_v2 test artifact
+LOCAL_COMPATIBILITY_SUITE := cts_v2
+
LOCAL_CTS_TEST_PACKAGE := android.bionic
include $(BUILD_CTS_EXECUTABLE)
diff --git a/tests/tests/bionic/AndroidTest.xml b/tests/tests/bionic/AndroidTest.xml
new file mode 100644
index 0000000..2dd04d9
--- /dev/null
+++ b/tests/tests/bionic/AndroidTest.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<configuration description="Config for CTS Bionic test cases">
+ <target_preparer class="com.android.compatibility.common.tradefed.targetprep.FilePusher">
+ <option name="cleanup" value="true" />
+ <option name="push" value="CtsBionicTestCases->/data/local/tmp/CtsBionicTestCases" />
+ <option name="append-bitness" value="true" />
+ </target_preparer>
+ <test class="com.android.tradefed.testtype.GTest" >
+ <option name="native-test-device-path" value="/data/local/tmp" />
+ <option name="module-name" value="CtsBionicTestCases" />
+ </test>
+</configuration>