diff options
| -rw-r--r-- | media/c2/V1_0/__init__.py | 0 | ||||
| -rw-r--r-- | media/c2/V1_0/host/Android.bp | 21 | ||||
| -rw-r--r-- | media/c2/V1_0/host/AndroidTest.xml | 152 | ||||
| -rw-r--r-- | media/c2/V1_0/host/VtsHalMediaC2V1_0HostTest.py | 121 | ||||
| -rw-r--r-- | media/c2/V1_0/host/__init__.py | 0 | ||||
| -rw-r--r-- | media/c2/__init__.py | 0 | ||||
| -rw-r--r-- | script/build/vts_spec_parser.py | 1 | ||||
| -rwxr-xr-x | script/launch_hal_test.py | 7 |
8 files changed, 294 insertions, 8 deletions
diff --git a/media/c2/V1_0/__init__.py b/media/c2/V1_0/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/media/c2/V1_0/__init__.py diff --git a/media/c2/V1_0/host/Android.bp b/media/c2/V1_0/host/Android.bp new file mode 100644 index 00000000..8f128775 --- /dev/null +++ b/media/c2/V1_0/host/Android.bp @@ -0,0 +1,21 @@ +// Copyright (C) 2019 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. +// +// This file is autogenerated by test/vts-testcase/hal/script/test_case_creator.py +// DO NOT EDIT + +vts_config { + name: "VtsHalMediaC2V1_0Host", +} + diff --git a/media/c2/V1_0/host/AndroidTest.xml b/media/c2/V1_0/host/AndroidTest.xml new file mode 100644 index 00000000..d1b75e23 --- /dev/null +++ b/media/c2/V1_0/host/AndroidTest.xml @@ -0,0 +1,152 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2019 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 VTS VtsHalMediaC2V1_0Host test cases"> + <option name="config-descriptor:metadata" key="plan" value="vts-hal" /> + <option name="config-descriptor:metadata" key="plan" value="vts-hal-host" /> + <target_preparer class="com.android.compatibility.common.tradefed.targetprep.VtsFilePusher"> + <option name="abort-on-push-failure" value="true"/> + <option name="push-group" value="HalHidlHostTest.push"/> + <option name="cleanup" value="true"/> + <option name="push" value="spec/hardware/interfaces/graphics/bufferqueue/1.0/vts/GraphicBufferProducer.vts->/data/local/tmp/spec/android/hardware/graphics/bufferqueue/1.0/GraphicBufferProducer.vts"/> + <option name="push" value="spec/hardware/interfaces/graphics/bufferqueue/1.0/vts/ProducerListener.vts->/data/local/tmp/spec/android/hardware/graphics/bufferqueue/1.0/ProducerListener.vts"/> + <option name="push" value="DATA/lib/android.hidl.safe_union@1.0-vts.driver.so->/data/local/tmp/32/android.hidl.safe_union@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hidl.safe_union@1.0-vts.driver.so->/data/local/tmp/64/android.hidl.safe_union@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib/android.hardware.graphics.bufferqueue@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.bufferqueue@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.graphics.bufferqueue@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.bufferqueue@1.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/graphics/bufferqueue/2.0/vts/GraphicBufferProducer.vts->/data/local/tmp/spec/android/hardware/graphics/bufferqueue/2.0/GraphicBufferProducer.vts"/> + <option name="push" value="spec/hardware/interfaces/graphics/bufferqueue/2.0/vts/ProducerListener.vts->/data/local/tmp/spec/android/hardware/graphics/bufferqueue/2.0/ProducerListener.vts"/> + <option name="push" value="spec/hardware/interfaces/graphics/bufferqueue/2.0/vts/types.vts->/data/local/tmp/spec/android/hardware/graphics/bufferqueue/2.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.graphics.bufferqueue@2.0-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.bufferqueue@2.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.graphics.bufferqueue@2.0-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.bufferqueue@2.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/graphics/common/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/graphics/common/1.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.graphics.common@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.common@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.common@1.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/graphics/common/1.1/vts/types.vts->/data/local/tmp/spec/android/hardware/graphics/common/1.1/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.graphics.common@1.1-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.common@1.1-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.1-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.common@1.1-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/graphics/common/1.2/vts/types.vts->/data/local/tmp/spec/android/hardware/graphics/common/1.2/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.graphics.common@1.2-vts.driver.so->/data/local/tmp/32/android.hardware.graphics.common@1.2-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.graphics.common@1.2-vts.driver.so->/data/local/tmp/64/android.hardware.graphics.common@1.2-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/media/bufferpool/2.0/vts/Accessor.vts->/data/local/tmp/spec/android/hardware/media/bufferpool/2.0/Accessor.vts"/> + <option name="push" value="spec/hardware/interfaces/media/bufferpool/2.0/vts/ClientManager.vts->/data/local/tmp/spec/android/hardware/media/bufferpool/2.0/ClientManager.vts"/> + <option name="push" value="spec/hardware/interfaces/media/bufferpool/2.0/vts/Connection.vts->/data/local/tmp/spec/android/hardware/media/bufferpool/2.0/Connection.vts"/> + <option name="push" value="spec/hardware/interfaces/media/bufferpool/2.0/vts/Observer.vts->/data/local/tmp/spec/android/hardware/media/bufferpool/2.0/Observer.vts"/> + <option name="push" value="spec/hardware/interfaces/media/bufferpool/2.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/bufferpool/2.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.media.bufferpool@2.0-vts.driver.so->/data/local/tmp/32/android.hardware.media.bufferpool@2.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.media.bufferpool@2.0-vts.driver.so->/data/local/tmp/64/android.hardware.media.bufferpool@2.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/GraphicBufferSource.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/GraphicBufferSource.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/Omx.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/Omx.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxBufferSource.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxBufferSource.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxNode.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxNode.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxObserver.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxObserver.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/OmxStore.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/OmxStore.vts"/> + <option name="push" value="spec/hardware/interfaces/media/omx/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/omx/1.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.media.omx@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.media.omx@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.media.omx@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.media.omx@1.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/media/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/1.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.media@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.media@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.media@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.media@1.0-vts.driver.so"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/Component.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/Component.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/ComponentInterface.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/ComponentInterface.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/ComponentListener.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/ComponentListener.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/ComponentStore.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/ComponentStore.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/Configurable.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/Configurable.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/InputSink.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/InputSink.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/InputSurface.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/InputSurface.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/InputSurfaceConnection.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/InputSurfaceConnection.vts"/> + <option name="push" value="spec/hardware/interfaces/media/c2/1.0/vts/types.vts->/data/local/tmp/spec/android/hardware/media/c2/1.0/types.vts"/> + <option name="push" value="DATA/lib/android.hardware.media.c2@1.0-vts.driver.so->/data/local/tmp/32/android.hardware.media.c2@1.0-vts.driver.so"/> + <option name="push" value="DATA/lib64/android.hardware.media.c2@1.0-vts.driver.so->/data/local/tmp/64/android.hardware.media.c2@1.0-vts.driver.so"/> + + <option name="push" value="DATA/media/c2/res/bbb_352x288_420p_30fps_32frames.yuv->/sdcard/media/bbb_352x288_420p_30fps_32frames.yuv"/> + <option name="push" value="DATA/media/c2/res/bbb_aac_stereo_128kbps_48000hz.aac->/sdcard/media/bbb_aac_stereo_128kbps_48000hz.aac"/> + <option name="push" value="DATA/media/c2/res/bbb_aac_stereo_128kbps_48000hz.info->/sdcard/media/bbb_aac_stereo_128kbps_48000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_aac_stereo_128kbps_48000hz_multi_frame.info->/sdcard/media/bbb_aac_stereo_128kbps_48000hz_multi_frame.info"/> + <option name="push" value="DATA/media/c2/res/bbb_amrwb_1ch_14kbps_16000hz.amrwb->/sdcard/media/bbb_amrwb_1ch_14kbps_16000hz.amrwb"/> + <option name="push" value="DATA/media/c2/res/bbb_amrwb_1ch_14kbps_16000hz.info->/sdcard/media/bbb_amrwb_1ch_14kbps_16000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_amrwb_1ch_14kbps_16000hz_multi_frame.info->/sdcard/media/bbb_amrwb_1ch_14kbps_16000hz_multi_frame.info"/> + <option name="push" value="DATA/media/c2/res/bbb_av1_176_144.av1->/sdcard/media/bbb_av1_176_144.av1"/> + <option name="push" value="DATA/media/c2/res/bbb_av1_176_144.info->/sdcard/media/bbb_av1_176_144.info"/> + <option name="push" value="DATA/media/c2/res/bbb_av1_640_360.av1->/sdcard/media/bbb_av1_640_360.av1"/> + <option name="push" value="DATA/media/c2/res/bbb_av1_640_360.info->/sdcard/media/bbb_av1_640_360.info"/> + <option name="push" value="DATA/media/c2/res/bbb_avc_176x144_300kbps_60fps.h264->/sdcard/media/bbb_avc_176x144_300kbps_60fps.h264"/> + <option name="push" value="DATA/media/c2/res/bbb_avc_176x144_300kbps_60fps.info->/sdcard/media/bbb_avc_176x144_300kbps_60fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_avc_640x360_768kbps_30fps.h264->/sdcard/media/bbb_avc_640x360_768kbps_30fps.h264"/> + <option name="push" value="DATA/media/c2/res/bbb_avc_640x360_768kbps_30fps.info->/sdcard/media/bbb_avc_640x360_768kbps_30fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_flac_stereo_680kbps_48000hz.flac->/sdcard/media/bbb_flac_stereo_680kbps_48000hz.flac"/> + <option name="push" value="DATA/media/c2/res/bbb_flac_stereo_680kbps_48000hz.info->/sdcard/media/bbb_flac_stereo_680kbps_48000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_g711alaw_1ch_8khz.info->/sdcard/media/bbb_g711alaw_1ch_8khz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_g711alaw_1ch_8khz.raw->/sdcard/media/bbb_g711alaw_1ch_8khz.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_g711mulaw_1ch_8khz.info->/sdcard/media/bbb_g711mulaw_1ch_8khz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_g711mulaw_1ch_8khz.raw->/sdcard/media/bbb_g711mulaw_1ch_8khz.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_gsm_1ch_8khz_13kbps.info->/sdcard/media/bbb_gsm_1ch_8khz_13kbps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_gsm_1ch_8khz_13kbps.raw->/sdcard/media/bbb_gsm_1ch_8khz_13kbps.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_h263_352x288_300kbps_12fps.h263->/sdcard/media/bbb_h263_352x288_300kbps_12fps.h263"/> + <option name="push" value="DATA/media/c2/res/bbb_h263_352x288_300kbps_12fps.info->/sdcard/media/bbb_h263_352x288_300kbps_12fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_hevc_176x144_176kbps_60fps.hevc->/sdcard/media/bbb_hevc_176x144_176kbps_60fps.hevc"/> + <option name="push" value="DATA/media/c2/res/bbb_hevc_176x144_176kbps_60fps.info->/sdcard/media/bbb_hevc_176x144_176kbps_60fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_hevc_640x360_1600kbps_30fps.hevc->/sdcard/media/bbb_hevc_640x360_1600kbps_30fps.hevc"/> + <option name="push" value="DATA/media/c2/res/bbb_hevc_640x360_1600kbps_30fps.info->/sdcard/media/bbb_hevc_640x360_1600kbps_30fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mp3_stereo_192kbps_48000hz.info->/sdcard/media/bbb_mp3_stereo_192kbps_48000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mp3_stereo_192kbps_48000hz.mp3->/sdcard/media/bbb_mp3_stereo_192kbps_48000hz.mp3"/> + <option name="push" value="DATA/media/c2/res/bbb_mp3_stereo_192kbps_48000hz_multi_frame.info->/sdcard/media/bbb_mp3_stereo_192kbps_48000hz_multi_frame.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg2_176x144_105kbps_25fps.info->/sdcard/media/bbb_mpeg2_176x144_105kbps_25fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg2_176x144_105kbps_25fps.m2v->/sdcard/media/bbb_mpeg2_176x144_105kbps_25fps.m2v"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg2_352x288_1mbps_60fps.info->/sdcard/media/bbb_mpeg2_352x288_1mbps_60fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg2_352x288_1mbps_60fps.m2v->/sdcard/media/bbb_mpeg2_352x288_1mbps_60fps.m2v"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg4_352x288_512kbps_30fps.info->/sdcard/media/bbb_mpeg4_352x288_512kbps_30fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_mpeg4_352x288_512kbps_30fps.m4v->/sdcard/media/bbb_mpeg4_352x288_512kbps_30fps.m4v"/> + <option name="push" value="DATA/media/c2/res/bbb_opus_stereo_128kbps_48000hz.info->/sdcard/media/bbb_opus_stereo_128kbps_48000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_opus_stereo_128kbps_48000hz.opus->/sdcard/media/bbb_opus_stereo_128kbps_48000hz.opus"/> + <option name="push" value="DATA/media/c2/res/bbb_raw_1ch_16khz_s16le.raw->/sdcard/media/bbb_raw_1ch_16khz_s16le.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_raw_1ch_8khz_s16le.raw->/sdcard/media/bbb_raw_1ch_8khz_s16le.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_raw_1ch_8khz_s32le.info->/sdcard/media/bbb_raw_1ch_8khz_s32le.info"/> + <option name="push" value="DATA/media/c2/res/bbb_raw_1ch_8khz_s32le.raw->/sdcard/media/bbb_raw_1ch_8khz_s32le.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_raw_2ch_48khz_s16le.raw->/sdcard/media/bbb_raw_2ch_48khz_s16le.raw"/> + <option name="push" value="DATA/media/c2/res/bbb_vorbis_stereo_128kbps_48000hz.info->/sdcard/media/bbb_vorbis_stereo_128kbps_48000hz.info"/> + <option name="push" value="DATA/media/c2/res/bbb_vorbis_stereo_128kbps_48000hz.vorbis->/sdcard/media/bbb_vorbis_stereo_128kbps_48000hz.vorbis"/> + <option name="push" value="DATA/media/c2/res/bbb_vp8_176x144_240kbps_60fps.info->/sdcard/media/bbb_vp8_176x144_240kbps_60fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_vp8_176x144_240kbps_60fps.vp8->/sdcard/media/bbb_vp8_176x144_240kbps_60fps.vp8"/> + <option name="push" value="DATA/media/c2/res/bbb_vp8_640x360_2mbps_30fps.info->/sdcard/media/bbb_vp8_640x360_2mbps_30fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_vp8_640x360_2mbps_30fps.vp8->/sdcard/media/bbb_vp8_640x360_2mbps_30fps.vp8"/> + <option name="push" value="DATA/media/c2/res/bbb_vp9_176x144_285kbps_60fps.info->/sdcard/media/bbb_vp9_176x144_285kbps_60fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_vp9_176x144_285kbps_60fps.vp9->/sdcard/media/bbb_vp9_176x144_285kbps_60fps.vp9"/> + <option name="push" value="DATA/media/c2/res/bbb_vp9_640x360_1600kbps_30fps.info->/sdcard/media/bbb_vp9_640x360_1600kbps_30fps.info"/> + <option name="push" value="DATA/media/c2/res/bbb_vp9_640x360_1600kbps_30fps.vp9->/sdcard/media/bbb_vp9_640x360_1600kbps_30fps.vp9"/> + <option name="push" value="DATA/media/c2/res/sine_amrnb_1ch_12kbps_8000hz.amrnb->/sdcard/media/sine_amrnb_1ch_12kbps_8000hz.amrnb"/> + <option name="push" value="DATA/media/c2/res/sine_amrnb_1ch_12kbps_8000hz.info->/sdcard/media/sine_amrnb_1ch_12kbps_8000hz.info"/> + <option name="push" value="DATA/media/c2/res/sine_amrnb_1ch_12kbps_8000hz_multi_frame.info->/sdcard/media/sine_amrnb_1ch_12kbps_8000hz_multi_frame.info"/> + + </target_preparer> + <test class="com.android.tradefed.testtype.VtsMultiDeviceTest"> + <option name="test-module-name" value="VtsHalMediaC2V1_0Host"/> + <option name="test-case-path" value="vts/testcases/hal/media/c2/V1_0/host/VtsHalMediaC2V1_0HostTest"/> + <option name="binary-test-working-directory" value="_32bit::/data/nativetest/" /> + <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalMediaC2V1_0TargetComponentTest/VtsHalMediaC2V1_0TargetComponentTest"/> + <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalMediaC2V1_0TargetAudioEncTest/VtsHalMediaC2V1_0TargetAudioEncTest"/> + <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalMediaC2V1_0TargetAudioDecTest/VtsHalMediaC2V1_0TargetAudioDecTest"/> + <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalMediaC2V1_0TargetVideoEncTest/VtsHalMediaC2V1_0TargetVideoEncTest"/> + <option name="binary-test-source" value="_32bit::DATA/nativetest/VtsHalMediaC2V1_0TargetVideoDecTest/VtsHalMediaC2V1_0TargetVideoDecTest"/> + <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalMediaC2V1_0TargetComponentTest/VtsHalMediaC2V1_0TargetComponentTest"/> + <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalMediaC2V1_0TargetAudioEncTest/VtsHalMediaC2V1_0TargetAudioEncTest"/> + <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalMediaC2V1_0TargetAudioDecTest/VtsHalMediaC2V1_0TargetAudioDecTest"/> + <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalMediaC2V1_0TargetVideoEncTest/VtsHalMediaC2V1_0TargetVideoEncTest"/> + <option name="binary-test-source" value="_64bit::DATA/nativetest64/VtsHalMediaC2V1_0TargetVideoDecTest/VtsHalMediaC2V1_0TargetVideoDecTest"/> + <option name="binary-test-disable-framework" value="true"/> + <option name="test-timeout" value="2h"/> + <option name="runtime-hint" value="10m"/> + </test> +</configuration> diff --git a/media/c2/V1_0/host/VtsHalMediaC2V1_0HostTest.py b/media/c2/V1_0/host/VtsHalMediaC2V1_0HostTest.py new file mode 100644 index 00000000..d2c1ff51 --- /dev/null +++ b/media/c2/V1_0/host/VtsHalMediaC2V1_0HostTest.py @@ -0,0 +1,121 @@ +#!/usr/bin/env python +# +# Copyright (C) 2019 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. +# + +import copy +import logging +import time + +from vts.runners.host import asserts +from vts.runners.host import keys +from vts.runners.host import test_runner +from vts.testcases.template.hal_hidl_gtest import hal_hidl_gtest +from vts.utils.python.hal import hal_service_name_utils + +class VtsHalMediaC2V1_0Host(hal_hidl_gtest.HidlHalGTest): + """Host test class to run the Media_C2 HAL.""" + + COMPONENT_TEST = "Codec2Component" + AUDIO_ENC_TEST = "Codec2AudioEnc" + AUDIO_DEC_TEST = "Codec2AudioDec" + VIDEO_ENC_TEST = "Codec2VideoEnc" + VIDEO_DEC_TEST = "Codec2VideoDec" + + def CreateTestCases(self): + """Get all registered test components and create test case objects.""" + # Retrieve all available IComponentStore instances + testable, self.service_names = \ + hal_service_name_utils.GetHalServiceName( + self.shell, + "android.hardware.media.c2@1.0::IComponentStore", + "64" if self._dut.is64Bit else "32") + self.components = []; + + if testable: + for service_name in self.service_names: + self._dut.hal.InitHidlHal( + target_type="media_c2", + target_basepaths=self._dut.libPaths, + target_version=1.0, + target_package="android.hardware.media.c2", + target_component_name="IComponentStore", + hw_binder_service_name=service_name.encode("utf8"), + bits=64 if self._dut.is64Bit else 32) + self.vtypes = self._dut.hal.media_c2.GetHidlTypeInterface("types") + status, traitsList = self._dut.hal.media_c2.listComponents() + asserts.assertEqual(self.vtypes.Status.OK, status) + for traits in traitsList: + self.components.append({ + 'owner' : service_name, + 'name' : traits['name'], + 'domain' : traits['domain'], + 'kind' : traits['kind'], + 'mediaType' : traits['mediaType'], + 'aliases' : traits['aliases'] + }) + else: + self.skipAllTests('There are no HAL services presenting ' + \ + 'android.hardware.media.c2@1.0::IComponentStore. ' + \ + 'Tests skipped.') + + super(VtsHalMediaC2V1_0Host, self).CreateTestCases() + + # @Override + def CreateTestCase(self, path, tag=''): + """Create a list of VtsHalMediaC2V1_0testCase objects. + + For each target side gtest test case, create a set of new test cases + argumented with different component and role values. + + Args: + path: string, absolute path of a gtest binary on device + tag: string, a tag that will be appended to the end of test name + + Returns: + A list of VtsHalMediaC2V1_0TestCase objects + """ + gtest_cases = super(VtsHalMediaC2V1_0Host, self).CreateTestCase(path, + tag) + test_cases = [] + + for gtest_case in gtest_cases: + test_suite = gtest_case.full_name + for component in self.components: + if self.AUDIO_ENC_TEST in test_suite and \ + (component['domain'] != 2 or component['kind'] != 2): + continue + if self.AUDIO_DEC_TEST in test_suite and \ + (component['domain'] != 2 or component['kind'] != 1): + continue + if self.VIDEO_ENC_TEST in test_suite and \ + (component['domain'] != 1 or component['kind'] != 2): + continue + if self.VIDEO_DEC_TEST in test_suite and \ + (component['domain'] != 1 or component['kind'] != 1): + continue + + test_case = copy.copy(gtest_case) + test_case.args += " -I " + component['owner'] + test_case.args += " -C " + component['name'] + test_case.name_appendix = '_' + component['owner'] + \ + '_' + component['name'] + test_case.name_appendix + test_cases.append(test_case) + + logging.info("num of test_testcases: %s", len(test_cases)) + return test_cases + +if __name__ == "__main__": + test_runner.main() diff --git a/media/c2/V1_0/host/__init__.py b/media/c2/V1_0/host/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/media/c2/V1_0/host/__init__.py diff --git a/media/c2/__init__.py b/media/c2/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/media/c2/__init__.py diff --git a/script/build/vts_spec_parser.py b/script/build/vts_spec_parser.py index f4001dfd..fa447337 100644 --- a/script/build/vts_spec_parser.py +++ b/script/build/vts_spec_parser.py @@ -89,7 +89,6 @@ class VtsSpecParser(object): # Exclude the current package and packages with no corresponding libs. exclude_packages = [ "android.hidl.base@1.0", "android.hidl.manager@1.0", - '%s.%s@%s' % (self._package_root, hal_name, hal_version) ] return sorted(list(set(imported_packages) - set(exclude_packages))) diff --git a/script/launch_hal_test.py b/script/launch_hal_test.py index d4debe9b..f6f4f263 100755 --- a/script/launch_hal_test.py +++ b/script/launch_hal_test.py @@ -160,12 +160,5 @@ def main(): args.hal_package_name) sys.exit(1) - if args.test_type == "host": - build_rule_gen = BuildRuleGen( - Constant.BP_WARNING_HEADER, args.package_root, args.path_root) - name_version = args.hal_package_name[len(args.package_root) + 1:] - build_rule_gen.UpdateHalDirBuildRule( - [name_version.split('@')], args.test_config_dir) - if __name__ == '__main__': main() |
