summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Steven Moreland <smoreland@google.com> 2021-10-08 21:20:52 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2021-10-08 21:20:52 +0000
commitac23c326ba6fd37f9698dd4a95bf712cff6a185c (patch)
treeaa19833888b90fd7721405572d5fb4a4d97ee1f2
parenta9cf8de92f4cc7fbfeff6b62e6aac87bde68b96b (diff)
parentf403e54d9ab2bc076f2594323769559d49ee7666 (diff)
Merge "binderUnitTests: getOpenAshmemSize" am: 14c95f0218 am: bd19f65b95 am: f403e54d9a
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1850297 Change-Id: Ica8507d2ae6bf260fdd51e81cc4a49151eb5e6ad
-rw-r--r--libs/binder/tests/Android.bp1
-rw-r--r--libs/binder/tests/binderParcelUnitTest.cpp18
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());
+ }
+}