summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorHoward Chen2017-09-27 02:34:08 -0500
committerHoward Chen2017-11-29 02:55:49 -0600
commit4e7ccc4cb9a7586f067aeef5a16092be9325e340 (patch)
tree23b182c007d302402aa4f22adf1baeffa54843f1 /tests
parent6a5daf8cac8fdec6a1d48a4d699f22c82e448165 (diff)
downloadplatform-hardware-interfaces-4e7ccc4cb9a7586f067aeef5a16092be9325e340.tar.gz
platform-hardware-interfaces-4e7ccc4cb9a7586f067aeef5a16092be9325e340.tar.xz
platform-hardware-interfaces-4e7ccc4cb9a7586f067aeef5a16092be9325e340.zip
Add more test methods to IMemoryTest
Add haveSomeMemoryBlock to test transport of the hidl_memory_block. Add set(hidl_memory) & get(IMemoryToken) to test IMemoryToken Test: hidl_test Bug: 68295540 Change-Id: I08bcfae256de9db7dd647cde0ccbee214b598f47
Diffstat (limited to 'tests')
-rw-r--r--tests/memory/1.0/Android.bp2
-rw-r--r--tests/memory/1.0/IMemoryTest.hal6
-rw-r--r--tests/memory/1.0/default/Android.bp1
-rw-r--r--tests/memory/1.0/default/MemoryTest.cpp17
-rw-r--r--tests/memory/1.0/default/MemoryTest.h16
5 files changed, 40 insertions, 2 deletions
diff --git a/tests/memory/1.0/Android.bp b/tests/memory/1.0/Android.bp
index cd97fe48..50386649 100644
--- a/tests/memory/1.0/Android.bp
+++ b/tests/memory/1.0/Android.bp
@@ -7,6 +7,8 @@ hidl_interface {
7 "IMemoryTest.hal", 7 "IMemoryTest.hal",
8 ], 8 ],
9 interfaces: [ 9 interfaces: [
10 "android.hidl.memory.token@1.0",
11 "android.hidl.memory.block@1.0",
10 "android.hidl.base@1.0", 12 "android.hidl.base@1.0",
11 ], 13 ],
12 gen_java: false, 14 gen_java: false,
diff --git a/tests/memory/1.0/IMemoryTest.hal b/tests/memory/1.0/IMemoryTest.hal
index 4d6de3f2..b20859cc 100644
--- a/tests/memory/1.0/IMemoryTest.hal
+++ b/tests/memory/1.0/IMemoryTest.hal
@@ -16,7 +16,13 @@
16 16
17package android.hardware.tests.memory@1.0; 17package android.hardware.tests.memory@1.0;
18 18
19import android.hidl.memory.token@1.0::IMemoryToken;
20import android.hidl.memory.block@1.0::MemoryBlock;
21
19interface IMemoryTest { 22interface IMemoryTest {
20 haveSomeMemory(memory mem) generates(memory mem); 23 haveSomeMemory(memory mem) generates(memory mem);
21 fillMemory(memory memory_in, uint8_t filler); 24 fillMemory(memory memory_in, uint8_t filler);
25 haveSomeMemoryBlock(MemoryBlock blk) generates(MemoryBlock blk);
26 set(memory mem) generates();
27 get()generates(IMemoryToken token);
22}; 28};
diff --git a/tests/memory/1.0/default/Android.bp b/tests/memory/1.0/default/Android.bp
index 985183bc..3f136340 100644
--- a/tests/memory/1.0/default/Android.bp
+++ b/tests/memory/1.0/default/Android.bp
@@ -28,6 +28,7 @@ cc_library {
28 "liblog", 28 "liblog",
29 "libutils", 29 "libutils",
30 "android.hidl.memory@1.0", 30 "android.hidl.memory@1.0",
31 "android.hidl.memory.token@1.0",
31 ], 32 ],
32 33
33 // These are static libs only for testing purposes and portability. Shared 34 // These are static libs only for testing purposes and portability. Shared
diff --git a/tests/memory/1.0/default/MemoryTest.cpp b/tests/memory/1.0/default/MemoryTest.cpp
index 37a2a606..5cbf67e1 100644
--- a/tests/memory/1.0/default/MemoryTest.cpp
+++ b/tests/memory/1.0/default/MemoryTest.cpp
@@ -20,6 +20,7 @@
20 20
21#include <log/log.h> 21#include <log/log.h>
22 22
23#include <hidlmemory/HidlMemoryToken.h>
23#include <hidlmemory/mapping.h> 24#include <hidlmemory/mapping.h>
24 25
25#include <android/hidl/memory/1.0/IMemory.h> 26#include <android/hidl/memory/1.0/IMemory.h>
@@ -60,6 +61,22 @@ Return<void> Memory::fillMemory(const hidl_memory& memory_in, uint8_t filler) {
60 return Void(); 61 return Void();
61} 62}
62 63
64Return<void> Memory::haveSomeMemoryBlock(const MemoryBlock& blk, haveSomeMemoryBlock_cb _hidl_cb) {
65 _hidl_cb(blk);
66 return Void();
67}
68
69Return<void> Memory::set(const hidl_memory& mem) {
70 sp<HidlMemory> hidlMem = HidlMemory::getInstance(mem);
71 if (hidlMem->valid()) {
72 mSavedMemoryToken = new HidlMemoryToken(hidlMem);
73 }
74 return Void();
75}
76
77Return<sp<IMemoryToken>> Memory::get() {
78 return mSavedMemoryToken;
79}
63 80
64IMemoryTest* HIDL_FETCH_IMemoryTest(const char* /* name */) { 81IMemoryTest* HIDL_FETCH_IMemoryTest(const char* /* name */) {
65 return new Memory(); 82 return new Memory();
diff --git a/tests/memory/1.0/default/MemoryTest.h b/tests/memory/1.0/default/MemoryTest.h
index 0d903f15..4c2ed36d 100644
--- a/tests/memory/1.0/default/MemoryTest.h
+++ b/tests/memory/1.0/default/MemoryTest.h
@@ -20,6 +20,7 @@
20#include <android/hardware/tests/memory/1.0/IMemoryTest.h> 20#include <android/hardware/tests/memory/1.0/IMemoryTest.h>
21#include <hidl/MQDescriptor.h> 21#include <hidl/MQDescriptor.h>
22#include <hidl/Status.h> 22#include <hidl/Status.h>
23#include <hidlmemory/HidlMemoryToken.h>
23 24
24namespace android { 25namespace android {
25namespace hardware { 26namespace hardware {
@@ -28,14 +29,17 @@ namespace memory {
28namespace V1_0 { 29namespace V1_0 {
29namespace implementation { 30namespace implementation {
30 31
31using ::android::hardware::tests::memory::V1_0::IMemoryTest; 32using ::android::sp;
32using ::android::hardware::hidl_array; 33using ::android::hardware::hidl_array;
33using ::android::hardware::hidl_memory; 34using ::android::hardware::hidl_memory;
34using ::android::hardware::hidl_string; 35using ::android::hardware::hidl_string;
35using ::android::hardware::hidl_vec; 36using ::android::hardware::hidl_vec;
37using ::android::hardware::HidlMemoryToken;
36using ::android::hardware::Return; 38using ::android::hardware::Return;
37using ::android::hardware::Void; 39using ::android::hardware::Void;
38using ::android::sp; 40using ::android::hardware::tests::memory::V1_0::IMemoryTest;
41using ::android::hidl::memory::block::V1_0::MemoryBlock;
42using ::android::hidl::memory::token::V1_0::IMemoryToken;
39 43
40struct Memory : public IMemoryTest { 44struct Memory : public IMemoryTest {
41 // Methods from ::android::hardware::tests::memory::V1_0::IMemoryTest follow. 45 // Methods from ::android::hardware::tests::memory::V1_0::IMemoryTest follow.
@@ -43,6 +47,14 @@ struct Memory : public IMemoryTest {
43 47
44 Return<void> fillMemory(const hidl_memory& memory_in, uint8_t filler) override; 48 Return<void> fillMemory(const hidl_memory& memory_in, uint8_t filler) override;
45 49
50 Return<void> haveSomeMemoryBlock(const MemoryBlock& blk,
51 haveSomeMemoryBlock_cb _hidl_cb) override;
52 Return<void> set(const ::android::hardware::hidl_memory& mem) override;
53
54 Return<sp<IMemoryToken>> get() override;
55
56 protected:
57 sp<HidlMemoryToken> mSavedMemoryToken;
46}; 58};
47 59
48extern "C" IMemoryTest* HIDL_FETCH_IMemoryTest(const char* name); 60extern "C" IMemoryTest* HIDL_FETCH_IMemoryTest(const char* name);