resolve merge conflicts of ae811bc806 to rvc-dev-plus-aosp am: 7a3434e08e am: 73f8f50148 am: 1a47a02f72

Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/12292179

Change-Id: I5efe72efc1fa4e76d24e4bc727a138bff640c43c
This commit is contained in:
Lajos Molnar 2020-08-03 17:54:28 +00:00 committed by Automerger Merge Worker
commit 014329700f
6 changed files with 27 additions and 27 deletions

View file

@ -1,12 +1,12 @@
## Omx Hal @ 1.0 tests ##
---
## Overview :
The scope of the tests presented here is not restricted solely to testing omx hal @ 1.0 API but also test to omx core functionality and to an extent omx components as well. The current directory contains the following folders: audio, common, component, master and video. Besides common all other folders contain test fixtures for testing AV decoder, encoder components. Common constitutes files that are used across by these test applications.
The scope of the tests presented here is not restricted solely to testing omx hal @ 1.0 API but also test to omx core functionality and to an extent omx components as well. The current directory contains the following folders: audio, common, component, store and video. Besides common all other folders contain test fixtures for testing AV decoder, encoder components. Common constitutes files that are used across by these test applications.
#### master :
Functionality of master is to enumerate all the omx components (and the roles it supports) available in android media framework.
#### store :
Functionality of store is to enumerate all the omx components (and the roles it supports) available in android media framework.
usage: atest VtsHalMediaOmxV1\_0TargetMasterTest
usage: atest VtsHalMediaOmxV1\_0TargetStoreTest
#### component :
This folder includes test fixtures that tests aspects common to all omx compatible components. For instance, port enabling/disabling, enumerating port formats, state transitions, flush, ..., stay common to all components irrespective of the service they offer. Test fixtures here are directed towards testing these (omx core). Every standard OMX compatible component is expected to pass these tests.

View file

@ -713,8 +713,8 @@ const std::vector<std::tuple<std::string, std::string, std::string>>& getTestPar
for (IOmx::ComponentInfo info : componentInfos) {
for (std::string role : info.mRoles) {
if (filter.empty()) {
if (kWhiteListRoles.find(role.c_str()) == kWhiteListRoles.end()) {
// This is for component test and the role is not in the white list.
if (kKnownRoles.find(role.c_str()) == kKnownRoles.end()) {
// This is for component test and the role is not supported.
continue;
}
} else if (role.find(filter) == std::string::npos) {

View file

@ -71,8 +71,8 @@ enum bufferOwner {
unknown,
};
// White list audio/video roles to be tested.
static std::set<std::string> kWhiteListRoles{
// List known and thus tested audio/video roles.
static std::set<std::string> kKnownRoles{
"audio_encoder.aac", "audio_encoder.amrnb", "audio_encoder.amrwb",
"audio_encoder.flac", "audio_decoder.aac", "audio_decoder.amrnb",
"audio_decoder.amrwb", "audio_decoder.flac", "audio_decoder.g711alaw",

View file

@ -15,9 +15,9 @@
//
cc_test {
name: "VtsHalMediaOmxV1_0TargetMasterTest",
name: "VtsHalMediaOmxV1_0TargetStoreTest",
defaults: ["VtsHalMediaOmxV1_0Defaults"],
srcs: ["VtsHalMediaOmxV1_0TargetMasterTest.cpp"],
srcs: ["VtsHalMediaOmxV1_0TargetStoreTest.cpp"],
test_suites: [
"general-tests",
"vts",

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
#define LOG_TAG "media_omx_hidl_master_test"
#define LOG_TAG "media_omx_hidl_store_test"
#ifdef __LP64__
#define OMX_ANDROID_COMPILE_AS_32BIT_ON_64BIT_PLATFORMS
#endif
@ -55,7 +55,7 @@ using ::android::hidl::memory::V1_0::IMemory;
#include <getopt.h>
#include <media_hidl_test_common.h>
class MasterHidlTest : public ::testing::TestWithParam<std::string> {
class StoreHidlTest : public ::testing::TestWithParam<std::string> {
public:
virtual void SetUp() override {
omxStore = IOmxStore::getService(GetParam());
@ -127,7 +127,7 @@ void validateAttributes(
}
// Make sure IOmx and IOmxStore have the same set of instances.
TEST(MasterHidlTest, instanceMatchValidation) {
TEST(StoreHidlTest, instanceMatchValidation) {
auto omxInstances = android::hardware::getAllHalInstanceNames(IOmx::descriptor);
auto omxStoreInstances = android::hardware::getAllHalInstanceNames(IOmxStore::descriptor);
ASSERT_EQ(omxInstances.size(), omxInstances.size());
@ -138,7 +138,7 @@ TEST(MasterHidlTest, instanceMatchValidation) {
}
// list service attributes and verify expected formats
TEST_P(MasterHidlTest, ListServiceAttr) {
TEST_P(StoreHidlTest, ListServiceAttr) {
description("list service attributes");
android::hardware::media::omx::V1_0::Status status;
hidl_vec<IOmxStore::Attribute> attributes;
@ -184,7 +184,7 @@ TEST_P(MasterHidlTest, ListServiceAttr) {
}
// get node prefix
TEST_P(MasterHidlTest, getNodePrefix) {
TEST_P(StoreHidlTest, getNodePrefix) {
description("get node prefix");
hidl_string prefix;
omxStore->getNodePrefix(
@ -193,7 +193,7 @@ TEST_P(MasterHidlTest, getNodePrefix) {
}
// list roles and validate all RoleInfo objects
TEST_P(MasterHidlTest, ListRoles) {
TEST_P(StoreHidlTest, ListRoles) {
description("list roles");
hidl_vec<IOmxStore::RoleInfo> roleList;
omxStore->listRoles([&roleList](hidl_vec<IOmxStore::RoleInfo> const& _nl) {
@ -370,7 +370,7 @@ TEST_P(MasterHidlTest, ListRoles) {
}
// list components and roles.
TEST_P(MasterHidlTest, ListNodes) {
TEST_P(StoreHidlTest, ListNodes) {
description("enumerate component and roles");
android::hardware::media::omx::V1_0::Status status;
hidl_vec<IOmx::ComponentInfo> nodeList;
@ -419,6 +419,6 @@ TEST_P(MasterHidlTest, ListNodes) {
}
INSTANTIATE_TEST_CASE_P(
PerInstance, MasterHidlTest,
PerInstance, StoreHidlTest,
testing::ValuesIn(android::hardware::getAllHalInstanceNames(IOmxStore::descriptor)),
android::hardware::PrintInstanceNameToString);

View file

@ -287,11 +287,11 @@ struct CodecProducerListener : public IProducerListener {
};
// Mock IOmxBufferSource class. GraphicBufferSource.cpp in libstagefright/omx/
// implements this class. Below is dummy class introduced to test if callback
// implements this class. Below class is introduced to test if callback
// functions are actually being called or not
struct DummyBufferSource : public IOmxBufferSource {
struct MockBufferSource : public IOmxBufferSource {
public:
DummyBufferSource(sp<IOmxNode> node) {
MockBufferSource(sp<IOmxNode> node) {
callback = 0;
executing = false;
omxNode = node;
@ -309,7 +309,7 @@ struct DummyBufferSource : public IOmxBufferSource {
android::Vector<BufferInfo> iBuffer, oBuffer;
};
Return<void> DummyBufferSource::onOmxExecuting() {
Return<void> MockBufferSource::onOmxExecuting() {
executing = true;
callback |= 0x1;
size_t index;
@ -330,25 +330,25 @@ Return<void> DummyBufferSource::onOmxExecuting() {
return Void();
};
Return<void> DummyBufferSource::onOmxIdle() {
Return<void> MockBufferSource::onOmxIdle() {
callback |= 0x2;
executing = false;
return Void();
};
Return<void> DummyBufferSource::onOmxLoaded() {
Return<void> MockBufferSource::onOmxLoaded() {
callback |= 0x4;
return Void();
};
Return<void> DummyBufferSource::onInputBufferAdded(uint32_t buffer) {
Return<void> MockBufferSource::onInputBufferAdded(uint32_t buffer) {
(void)buffer;
EXPECT_EQ(executing, false);
callback |= 0x8;
return Void();
};
Return<void> DummyBufferSource::onInputBufferEmptied(
Return<void> MockBufferSource::onInputBufferEmptied(
uint32_t buffer, const ::android::hardware::hidl_handle& fence) {
(void)fence;
callback |= 0x10;
@ -1031,7 +1031,7 @@ TEST_P(VideoEncHidlTest, BufferSourceCallBacks) {
setupRAWPort(omxNode, kPortIndexInput, nFrameWidth, nFrameHeight, 0,
xFramerate, eColorFormat);
sp<DummyBufferSource> buffersource = new DummyBufferSource(omxNode);
sp<MockBufferSource> buffersource = new MockBufferSource(omxNode);
ASSERT_NE(buffersource, nullptr);
status = omxNode->setInputSurface(buffersource);
ASSERT_EQ(status, ::android::hardware::media::omx::V1_0::Status::OK);