From 0cd07d214bcf92a35b78a2066fe835ed018450b9 Mon Sep 17 00:00:00 2001 From: Howard Chen Date: Wed, 3 Jan 2018 15:54:55 +0800 Subject: [PATCH] Add a test method to test interface in struct Add a test method to IBaz to test struct with a composed interface Test: hidl_test_java/ internal master Bug: 70529597 Change-Id: I73eaaf3dda6a24b88207729f31c75454c005c8cf --- tests/baz/1.0/IBaz.hal | 6 ++++++ tests/baz/1.0/default/Baz.cpp | 6 ++++++ tests/baz/1.0/default/Baz.h | 2 ++ 3 files changed, 14 insertions(+) diff --git a/tests/baz/1.0/IBaz.hal b/tests/baz/1.0/IBaz.hal index 8c6a9a45dc..9a9e75451c 100644 --- a/tests/baz/1.0/IBaz.hal +++ b/tests/baz/1.0/IBaz.hal @@ -68,6 +68,10 @@ interface IBaz extends IBase { bitfield bf; }; + struct StructWithInterface { + int32_t number; + IBase dummy; + }; oneway doThis(float param); doThatAndReturnSomething(int64_t param) generates (int32_t result); @@ -93,4 +97,6 @@ interface IBaz extends IBase { size(uint32_t size) generates (uint32_t size); getNestedStructs() generates(vec data); + + haveSomeStructWithInterface(StructWithInterface swi) generates(StructWithInterface swi); }; diff --git a/tests/baz/1.0/default/Baz.cpp b/tests/baz/1.0/default/Baz.cpp index 5ccd87b441..e118122eba 100644 --- a/tests/baz/1.0/default/Baz.cpp +++ b/tests/baz/1.0/default/Baz.cpp @@ -394,6 +394,12 @@ Return Baz::getNestedStructs(getNestedStructs_cb _hidl_cb) { _hidl_cb(result); return Void(); } + +Return Baz::haveSomeStructWithInterface(const StructWithInterface& swi, + haveSomeStructWithInterface_cb _hidl_cb) { + _hidl_cb(swi); + return Void(); +} // Methods from ::android::hidl::base::V1_0::IBase follow. IBaz* HIDL_FETCH_IBaz(const char* /* name */) { diff --git a/tests/baz/1.0/default/Baz.h b/tests/baz/1.0/default/Baz.h index 4443587b26..c264f47a79 100644 --- a/tests/baz/1.0/default/Baz.h +++ b/tests/baz/1.0/default/Baz.h @@ -91,6 +91,8 @@ struct Baz : public IBaz { Return size(uint32_t size) override; Return getNestedStructs(getNestedStructs_cb _hidl_cb) override; + Return haveSomeStructWithInterface(const StructWithInterface& swi, + haveSomeStructWithInterface_cb _hidl_cb) override; // Methods from ::android::hidl::base::V1_0::IBase follow. private: sp mStoredCallback;