summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Steven Moreland <smoreland@google.com> 2021-02-25 02:13:18 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2021-02-25 02:13:18 +0000
commit91d42e487df16e1ff6ca309d28f65d3fc392e1ae (patch)
tree4d1f9e06142948801401538ca645058c20f53828
parent3290186159d7f844a72144bf819ce24d6c1ea78d (diff)
parent4fb0f925123397465bfb9b50f7030229e537e1cd (diff)
Merge "libbinder_rs: Modify asserts to propagate failure to C++" am: f867ed2f2a am: 4fb0f92512
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1588098 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: Ie47a34351cdfc3a9e8eccf82766ca9b1c2fbaf95
-rw-r--r--libs/binder/rust/tests/serialization.rs37
1 files changed, 36 insertions, 1 deletions
diff --git a/libs/binder/rust/tests/serialization.rs b/libs/binder/rust/tests/serialization.rs
index 2bf3d03a4b..f1b068ee43 100644
--- a/libs/binder/rust/tests/serialization.rs
+++ b/libs/binder/rust/tests/serialization.rs
@@ -40,6 +40,41 @@ mod bindings {
include!(concat!(env!("OUT_DIR"), "/bindings.rs"));
}
+macro_rules! assert_eq {
+ ($left:expr, $right:expr $(,)?) => {
+ match (&$left, &$right) {
+ (left, right) => {
+ if *left != *right {
+ eprintln!(
+ "assertion failed: `{:?}` == `{:?}`, {}:{}:{}",
+ &*left,
+ &*right,
+ file!(),
+ line!(),
+ column!()
+ );
+ return Err(StatusCode::FAILED_TRANSACTION);
+ }
+ }
+ }
+ };
+}
+
+macro_rules! assert {
+ ($expr:expr) => {
+ if !$expr {
+ eprintln!(
+ "assertion failed: `{:?}`, {}:{}:{}",
+ $expr,
+ file!(),
+ line!(),
+ column!()
+ );
+ return Err(StatusCode::FAILED_TRANSACTION);
+ }
+ };
+}
+
static SERVICE_ONCE: Once = Once::new();
static mut SERVICE: Option<SpIBinder> = None;
@@ -282,7 +317,7 @@ fn on_transact(_service: &dyn ReadParcelTest, code: TransactionCode,
))?;
}
bindings::Transaction_TEST_FAIL => {
- return Err(StatusCode::FAILED_TRANSACTION)
+ assert!(false);
}
_ => return Err(StatusCode::UNKNOWN_TRANSACTION),
}