1 /* 2 * Copyright (C) 2019 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #pragma once 18 19 #include <binder/Status.h> 20 #include <gtest/gtest.h> 21 #include <utils/String8.h> 22 23 #define ASSERT_BINDER_SUCCESS(expr) \ 24 ({ \ 25 binder::Status expect_status = (expr); \ 26 ASSERT_TRUE(expect_status.isOk()) << expect_status.toString8().c_str(); \ 27 expect_status; \ 28 }) 29 #define ASSERT_BINDER_FAIL(expr) \ 30 ({ \ 31 binder::Status expect_status = (expr); \ 32 ASSERT_FALSE(expect_status.isOk()); \ 33 expect_status; \ 34 }) 35 #define EXPECT_BINDER_SUCCESS(expr) \ 36 ({ \ 37 binder::Status expect_status = (expr); \ 38 EXPECT_TRUE(expect_status.isOk()) << expect_status.toString8().c_str(); \ 39 expect_status; \ 40 }) 41 #define EXPECT_BINDER_FAIL(expr) \ 42 ({ \ 43 binder::Status expect_status = (expr); \ 44 EXPECT_FALSE(expect_status.isOk()); \ 45 expect_status; \ 46 }) 47