diff options
author | Nirav Atre | 2018-07-16 19:16:02 -0500 |
---|---|---|
committer | android-build-merger | 2018-07-16 19:16:02 -0500 |
commit | 1233e0a7eb21d36220d1e3c6cbd1dbf6881e9e99 (patch) | |
tree | 8a2c83fce6ecb7a786b3152e6a6f89f6e85f85cf /tests | |
parent | 7151988f6258bf2db7360639f35211f8ae9db9e8 (diff) | |
parent | 76b383d5c2f5ec50f7102aca6700ced8bcb05601 (diff) | |
download | platform-hardware-interfaces-1233e0a7eb21d36220d1e3c6cbd1dbf6881e9e99.tar.gz platform-hardware-interfaces-1233e0a7eb21d36220d1e3c6cbd1dbf6881e9e99.tar.xz platform-hardware-interfaces-1233e0a7eb21d36220d1e3c6cbd1dbf6881e9e99.zip |
Merge "Updated HALs to test structs/safe_unions containing interfaces"
am: 76b383d5c2
Change-Id: Idbf119111f9d3a1e916b4753bc68aec35638a275
Diffstat (limited to 'tests')
-rw-r--r-- | tests/baz/1.0/IBaz.hal | 3 | ||||
-rw-r--r-- | tests/safeunion/1.0/ISafeUnion.hal | 4 | ||||
-rw-r--r-- | tests/safeunion/1.0/default/SafeUnion.cpp | 20 | ||||
-rw-r--r-- | tests/safeunion/1.0/default/SafeUnion.h | 2 |
4 files changed, 29 insertions, 0 deletions
diff --git a/tests/baz/1.0/IBaz.hal b/tests/baz/1.0/IBaz.hal index 9a9e7545..00fe5686 100644 --- a/tests/baz/1.0/IBaz.hal +++ b/tests/baz/1.0/IBaz.hal | |||
@@ -70,6 +70,9 @@ interface IBaz extends IBase { | |||
70 | 70 | ||
71 | struct StructWithInterface { | 71 | struct StructWithInterface { |
72 | int32_t number; | 72 | int32_t number; |
73 | int8_t[7] array; | ||
74 | string oneString; | ||
75 | vec<string> vectorOfStrings; | ||
73 | IBase dummy; | 76 | IBase dummy; |
74 | }; | 77 | }; |
75 | oneway doThis(float param); | 78 | oneway doThis(float param); |
diff --git a/tests/safeunion/1.0/ISafeUnion.hal b/tests/safeunion/1.0/ISafeUnion.hal index fedd63b8..e56022f4 100644 --- a/tests/safeunion/1.0/ISafeUnion.hal +++ b/tests/safeunion/1.0/ISafeUnion.hal | |||
@@ -66,6 +66,8 @@ interface ISafeUnion { | |||
66 | uint32_t a; | 66 | uint32_t a; |
67 | int8_t[7] b; | 67 | int8_t[7] b; |
68 | IOtherInterface c; | 68 | IOtherInterface c; |
69 | string d; | ||
70 | vec<string> e; | ||
69 | }; | 71 | }; |
70 | 72 | ||
71 | newLargeSafeUnion() generates (LargeSafeUnion myUnion); | 73 | newLargeSafeUnion() generates (LargeSafeUnion myUnion); |
@@ -86,4 +88,6 @@ interface ISafeUnion { | |||
86 | setInterfaceA(InterfaceTypeSafeUnion myUnion, uint32_t a) generates (InterfaceTypeSafeUnion myUnion); | 88 | setInterfaceA(InterfaceTypeSafeUnion myUnion, uint32_t a) generates (InterfaceTypeSafeUnion myUnion); |
87 | setInterfaceB(InterfaceTypeSafeUnion myUnion, int8_t[7] b) generates (InterfaceTypeSafeUnion myUnion); | 89 | setInterfaceB(InterfaceTypeSafeUnion myUnion, int8_t[7] b) generates (InterfaceTypeSafeUnion myUnion); |
88 | setInterfaceC(InterfaceTypeSafeUnion myUnion, IOtherInterface c) generates (InterfaceTypeSafeUnion myUnion); | 90 | setInterfaceC(InterfaceTypeSafeUnion myUnion, IOtherInterface c) generates (InterfaceTypeSafeUnion myUnion); |
91 | setInterfaceD(InterfaceTypeSafeUnion myUnion, string d) generates (InterfaceTypeSafeUnion myUnion); | ||
92 | setInterfaceE(InterfaceTypeSafeUnion myUnion, vec<string> e) generates (InterfaceTypeSafeUnion myUnion); | ||
89 | }; | 93 | }; |
diff --git a/tests/safeunion/1.0/default/SafeUnion.cpp b/tests/safeunion/1.0/default/SafeUnion.cpp index 7047d161..11b2e367 100644 --- a/tests/safeunion/1.0/default/SafeUnion.cpp +++ b/tests/safeunion/1.0/default/SafeUnion.cpp | |||
@@ -191,6 +191,26 @@ Return<void> SafeUnion::setInterfaceC(const InterfaceTypeSafeUnion& myUnion, con | |||
191 | return Void(); | 191 | return Void(); |
192 | } | 192 | } |
193 | 193 | ||
194 | Return<void> SafeUnion::setInterfaceD(const ::android::hardware::tests::safeunion::V1_0::ISafeUnion::InterfaceTypeSafeUnion& myUnion, const hidl_string& d, setInterfaceD_cb _hidl_cb) { | ||
195 | LOG(INFO) << "SERVER(SafeUnion) setInterfaceD(myUnion, " << toString(d) << ")"; | ||
196 | |||
197 | InterfaceTypeSafeUnion myNewUnion = myUnion; | ||
198 | myNewUnion.d(d); | ||
199 | |||
200 | _hidl_cb(myNewUnion); | ||
201 | return Void(); | ||
202 | } | ||
203 | |||
204 | Return<void> SafeUnion::setInterfaceE(const ::android::hardware::tests::safeunion::V1_0::ISafeUnion::InterfaceTypeSafeUnion& myUnion, const hidl_vec<hidl_string>& e, setInterfaceE_cb _hidl_cb) { | ||
205 | LOG(INFO) << "SERVER(SafeUnion) setInterfaceE(myUnion, " << toString(e) << ")"; | ||
206 | |||
207 | InterfaceTypeSafeUnion myNewUnion = myUnion; | ||
208 | myNewUnion.e(e); | ||
209 | |||
210 | _hidl_cb(myNewUnion); | ||
211 | return Void(); | ||
212 | } | ||
213 | |||
194 | ISafeUnion* HIDL_FETCH_ISafeUnion(const char* /* name */) { | 214 | ISafeUnion* HIDL_FETCH_ISafeUnion(const char* /* name */) { |
195 | return new SafeUnion(); | 215 | return new SafeUnion(); |
196 | } | 216 | } |
diff --git a/tests/safeunion/1.0/default/SafeUnion.h b/tests/safeunion/1.0/default/SafeUnion.h index 07d88d23..e900fcec 100644 --- a/tests/safeunion/1.0/default/SafeUnion.h +++ b/tests/safeunion/1.0/default/SafeUnion.h | |||
@@ -52,6 +52,8 @@ struct SafeUnion : public ISafeUnion { | |||
52 | Return<void> setInterfaceA(const InterfaceTypeSafeUnion& myUnion, uint32_t a, setInterfaceA_cb _hidl_cb) override; | 52 | Return<void> setInterfaceA(const InterfaceTypeSafeUnion& myUnion, uint32_t a, setInterfaceA_cb _hidl_cb) override; |
53 | Return<void> setInterfaceB(const InterfaceTypeSafeUnion& myUnion, const hidl_array<int8_t, 7>& b, setInterfaceB_cb _hidl_cb) override; | 53 | Return<void> setInterfaceB(const InterfaceTypeSafeUnion& myUnion, const hidl_array<int8_t, 7>& b, setInterfaceB_cb _hidl_cb) override; |
54 | Return<void> setInterfaceC(const InterfaceTypeSafeUnion& myUnion, const sp<::android::hardware::tests::safeunion::V1_0::IOtherInterface>& c, setInterfaceC_cb _hidl_cb) override; | 54 | Return<void> setInterfaceC(const InterfaceTypeSafeUnion& myUnion, const sp<::android::hardware::tests::safeunion::V1_0::IOtherInterface>& c, setInterfaceC_cb _hidl_cb) override; |
55 | Return<void> setInterfaceD(const InterfaceTypeSafeUnion& myUnion, const hidl_string& d, setInterfaceD_cb _hidl_cb) override; | ||
56 | Return<void> setInterfaceE(const InterfaceTypeSafeUnion& myUnion, const hidl_vec<hidl_string>& e, setInterfaceE_cb _hidl_cb) override; | ||
55 | }; | 57 | }; |
56 | 58 | ||
57 | extern "C" ISafeUnion* HIDL_FETCH_ISafeUnion(const char* name); | 59 | extern "C" ISafeUnion* HIDL_FETCH_ISafeUnion(const char* name); |