diff options
| author | 2021-10-08 21:05:34 +0000 | |
|---|---|---|
| committer | 2021-10-08 21:05:34 +0000 | |
| commit | f403e54d9ab2bc076f2594323769559d49ee7666 (patch) | |
| tree | 272254331b188480cf670efa4ca3868755917867 | |
| parent | fde87cbc486c76a600bbcdb9e3c67d7577c71b2e (diff) | |
| parent | bd19f65b954c0ea4dba8500a771b0989c3509699 (diff) | |
Merge "binderUnitTests: getOpenAshmemSize" am: 14c95f0218 am: bd19f65b95
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1850297
Change-Id: I96b37dcda9fa0a90457b7cf28aace2eab5b2a35c
| -rw-r--r-- | libs/binder/tests/Android.bp | 1 | ||||
| -rw-r--r-- | libs/binder/tests/binderParcelUnitTest.cpp | 18 |
2 files changed, 18 insertions, 1 deletions
diff --git a/libs/binder/tests/Android.bp b/libs/binder/tests/Android.bp index 680f0edd51..86da5887a8 100644 --- a/libs/binder/tests/Android.bp +++ b/libs/binder/tests/Android.bp @@ -87,6 +87,7 @@ cc_test { srcs: ["binderParcelUnitTest.cpp", "binderBinderUnitTest.cpp"], shared_libs: [ "libbinder", + "libcutils", "libutils", ], test_suites: ["general-tests"], diff --git a/libs/binder/tests/binderParcelUnitTest.cpp b/libs/binder/tests/binderParcelUnitTest.cpp index 841d47b264..4950b23858 100644 --- a/libs/binder/tests/binderParcelUnitTest.cpp +++ b/libs/binder/tests/binderParcelUnitTest.cpp @@ -14,8 +14,9 @@ * limitations under the License. */ -#include <binder/Parcel.h> #include <binder/IPCThreadState.h> +#include <binder/Parcel.h> +#include <cutils/ashmem.h> #include <gtest/gtest.h> using android::IPCThreadState; @@ -146,3 +147,18 @@ TEST_READ_WRITE_INVERSE(char16_t, Char, {u'a', u'\0'}); TEST_READ_WRITE_INVERSE(int8_t, Byte, {-1, 0, 1}); TEST_READ_WRITE_INVERSE(String8, String8, {String8(), String8("a"), String8("asdf")}); TEST_READ_WRITE_INVERSE(String16, String16, {String16(), String16("a"), String16("asdf")}); + +TEST(Parcel, GetOpenAshmemSize) { + constexpr size_t kSize = 1024; + constexpr size_t kCount = 3; + + Parcel p; + + for (size_t i = 0; i < kCount; i++) { + int fd = ashmem_create_region("test-getOpenAshmemSize", kSize); + ASSERT_GE(fd, 0); + ASSERT_EQ(OK, p.writeFileDescriptor(fd, true /* take ownership */)); + + ASSERT_EQ((kSize * (i + 1)), p.getOpenAshmemSize()); + } +} |