mock_objects.h
Go to the documentation of this file.
1 // Copyright 2021 gRPC authors.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #ifndef GRPC_TEST_CORE_TRANSPORT_BINDER_MOCK_OBJECTS_H
16 #define GRPC_TEST_CORE_TRANSPORT_BINDER_MOCK_OBJECTS_H
17 
18 #include <gmock/gmock.h>
19 
25 
26 namespace grpc_binder {
27 
29  public:
30  MOCK_METHOD(int32_t, GetDataSize, (), (const, override));
31  MOCK_METHOD(absl::Status, WriteInt32, (int32_t), (override));
32  MOCK_METHOD(absl::Status, WriteInt64, (int64_t), (override));
36  (override));
37 
39 };
40 
42  public:
43  MOCK_METHOD(int32_t, GetDataSize, (), (const, override));
44  MOCK_METHOD(absl::Status, ReadInt32, (int32_t*), (override));
45  MOCK_METHOD(absl::Status, ReadInt64, (int64_t*), (override));
46  MOCK_METHOD(absl::Status, ReadBinder, (std::unique_ptr<Binder>*), (override));
49 
51 };
52 
53 class MockBinder : public Binder {
54  public:
55  MOCK_METHOD(void, Initialize, (), (override));
58  MOCK_METHOD(WritableParcel*, GetWritableParcel, (), (const, override));
59  MOCK_METHOD(std::unique_ptr<TransactionReceiver>, ConstructTxReceiver,
62  (const, override));
63  MOCK_METHOD(void*, GetRawBinder, (), (override));
64 
65  MockBinder();
68 
69  private:
72 };
73 
74 // TODO(waynetu): Implement transaction injection later for more thorough
75 // testing.
77  public:
78  explicit MockTransactionReceiver(OnTransactCb transact_cb,
82  EXPECT_CALL(*output, ReadInt32).WillOnce([](int32_t* version) {
83  *version = 1;
84  return absl::OkStatus();
85  });
86  }
87  transact_cb(static_cast<transaction_code_t>(code), output, /*uid=*/0)
88  .IgnoreError();
89  }
90 
91  MOCK_METHOD(void*, GetRawBinder, (), (override));
92 };
93 
94 class MockWireWriter : public WireWriter {
95  public:
96  MOCK_METHOD(absl::Status, RpcCall, (std::unique_ptr<Transaction>),
97  (override));
98  MOCK_METHOD(absl::Status, SendAck, (int64_t), (override));
99  MOCK_METHOD(void, OnAckReceived, (int64_t), (override));
100 };
101 
103  public:
115  (StreamIdentifier, absl::StatusOr<Metadata>, int), (override));
116  MOCK_METHOD(void, CancelStream, (StreamIdentifier), (override));
117 };
118 
119 } // namespace grpc_binder
120 
121 #endif // GRPC_TEST_CORE_TRANSPORT_BINDER_MOCK_OBJECTS_H
grpc_binder::Binder::ConstructTxReceiver
virtual std::unique_ptr< TransactionReceiver > ConstructTxReceiver(grpc_core::RefCountedPtr< WireReader > wire_reader_ref, TransactionReceiver::OnTransactCb transact_cb) const =0
grpc_binder::BinderTransportTxCode::SETUP_TRANSPORT
@ SETUP_TRANSPORT
grpc_binder::TransportStreamReceiver::NotifyRecvTrailingMetadata
virtual void NotifyRecvTrailingMetadata(StreamIdentifier id, absl::StatusOr< Metadata > trailing_metadata, int status)=0
grpc_binder::MockBinder::mock_input_
MockWritableParcel mock_input_
Definition: mock_objects.h:70
grpc_binder::MockTransactionReceiver::MOCK_METHOD
MOCK_METHOD(void *, GetRawBinder,(),(override))
binder.h
grpc_binder::MockBinder::GetWriter
MockWritableParcel & GetWriter()
Definition: mock_objects.h:66
grpc_binder::MockBinder::GetReader
MockReadableParcel & GetReader()
Definition: mock_objects.h:67
grpc_binder::TransportStreamReceiver::CancelStream
virtual void CancelStream(StreamIdentifier id)=0
absl::string_view
Definition: abseil-cpp/absl/strings/string_view.h:167
grpc_binder
Definition: connection_id_generator.cc:45
testing::internal::string
::std::string string
Definition: bloaty/third_party/protobuf/third_party/googletest/googletest/include/gtest/internal/gtest-port.h:881
grpc_binder::WireWriter
Definition: wire_writer.h:34
transaction_code_t
uint32_t transaction_code_t
Definition: binder_constants.h:24
absl::OkStatus
Status OkStatus()
Definition: third_party/abseil-cpp/absl/status/status.h:882
grpc_binder::MockWireWriter
Definition: mock_objects.h:94
binder_constants.h
version
Definition: version.py:1
grpc_binder::WritableParcel::WriteString
virtual absl::Status WriteString(absl::string_view s)=0
grpc_binder::WireWriter::OnAckReceived
virtual void OnAckReceived(int64_t num_bytes)=0
grpc_binder::TransportStreamReceiver::InitialMetadataCallbackType
std::function< void(absl::StatusOr< Metadata >)> InitialMetadataCallbackType
Definition: transport_stream_receiver.h:37
grpc_binder::TransportStreamReceiver::NotifyRecvMessage
virtual void NotifyRecvMessage(StreamIdentifier id, absl::StatusOr< std::string > message)=0
grpc_binder::MockReadableParcel::MOCK_METHOD
MOCK_METHOD(int32_t, GetDataSize,(),(const, override))
grpc_binder::BinderTransportTxCode
BinderTransportTxCode
Definition: binder_constants.h:31
wire_reader.h
grpc_binder::MockTransportStreamReceiver
Definition: mock_objects.h:102
grpc_binder::MockReadableParcel
Definition: mock_objects.h:41
grpc_binder::TransportStreamReceiver::TrailingMetadataCallbackType
std::function< void(absl::StatusOr< Metadata >, int)> TrailingMetadataCallbackType
Definition: transport_stream_receiver.h:41
grpc_binder::TransactionReceiver
Definition: binder.h:77
grpc_core::RefCountedPtr
Definition: ref_counted_ptr.h:35
grpc_binder::MockWritableParcel
Definition: mock_objects.h:28
int64_t
signed __int64 int64_t
Definition: stdint-msvc2008.h:89
gmock_output_test.output
output
Definition: bloaty/third_party/googletest/googlemock/test/gmock_output_test.py:175
grpc_binder::MockWritableParcel::MOCK_METHOD
MOCK_METHOD(int32_t, GetDataSize,(),(const, override))
grpc_binder::WireWriter::SendAck
virtual absl::Status SendAck(int64_t num_bytes)=0
grpc_binder::TransportStreamReceiver::NotifyRecvInitialMetadata
virtual void NotifyRecvInitialMetadata(StreamIdentifier id, absl::StatusOr< Metadata > initial_metadata)=0
grpc_binder::ReadableParcel::ReadBinder
virtual absl::Status ReadBinder(std::unique_ptr< Binder > *data)=0
grpc_binder::ReadableParcel::GetDataSize
virtual int32_t GetDataSize() const =0
grpc_binder::MockTransactionReceiver::MockTransactionReceiver
MockTransactionReceiver(OnTransactCb transact_cb, BinderTransportTxCode code, MockReadableParcel *output)
Definition: mock_objects.h:78
grpc_binder::WritableParcel::GetDataSize
virtual int32_t GetDataSize() const =0
grpc_binder::TransportStreamReceiver::MessageDataCallbackType
std::function< void(absl::StatusOr< std::string >)> MessageDataCallbackType
Definition: transport_stream_receiver.h:39
grpc_binder::Binder::GetWritableParcel
virtual WritableParcel * GetWritableParcel() const =0
grpc_binder::StreamIdentifier
int StreamIdentifier
Definition: transport_stream_receiver.h:30
grpc_binder::WritableParcel
Definition: binder.h:44
grpc_binder::ReadableParcel::ReadByteArray
virtual absl::Status ReadByteArray(std::string *data)=0
grpc_binder::MockBinder
Definition: mock_objects.h:53
EXPECT_CALL
#define EXPECT_CALL(obj, call)
grpc_binder::MockBinder::MOCK_METHOD
MOCK_METHOD(void, Initialize,(),(override))
grpc_binder::TransportStreamReceiver::RegisterRecvInitialMetadata
virtual void RegisterRecvInitialMetadata(StreamIdentifier id, InitialMetadataCallbackType cb)=0
grpc_binder::MockTransactionReceiver
Definition: mock_objects.h:76
grpc_binder::TransactionReceiver::OnTransactCb
std::function< absl::Status(transaction_code_t, ReadableParcel *, int uid)> OnTransactCb
Definition: binder.h:80
grpc_binder::WritableParcel::WriteInt32
virtual absl::Status WriteInt32(int32_t data)=0
absl::Status
Definition: third_party/abseil-cpp/absl/status/status.h:424
grpc_binder::MockTransportStreamReceiver::MOCK_METHOD
MOCK_METHOD(void, RegisterRecvInitialMetadata,(StreamIdentifier, InitialMetadataCallbackType),(override))
grpc_binder::TransportStreamReceiver::RegisterRecvTrailingMetadata
virtual void RegisterRecvTrailingMetadata(StreamIdentifier id, TrailingMetadataCallbackType cb)=0
grpc_binder::Binder::Initialize
virtual void Initialize()=0
grpc_binder::WritableParcel::WriteBinder
virtual absl::Status WriteBinder(HasRawBinder *binder)=0
wire_writer.h
grpc_binder::ReadableParcel::ReadString
virtual absl::Status ReadString(std::string *str)=0
transport_stream_receiver.h
grpc_binder::MockBinder::MockBinder
MockBinder()
Definition: mock_objects.cc:42
grpc_binder::ReadableParcel::ReadInt32
virtual absl::Status ReadInt32(int32_t *data)=0
grpc_binder::HasRawBinder::GetRawBinder
virtual void * GetRawBinder()=0
grpc_binder::WritableParcel::WriteByteArray
virtual absl::Status WriteByteArray(const int8_t *buffer, int32_t length)=0
grpc_binder::TransportStreamReceiver::RegisterRecvMessage
virtual void RegisterRecvMessage(StreamIdentifier id, MessageDataCallbackType cb)=0
grpc_binder::MockReadableParcel::MockReadableParcel
MockReadableParcel()
Definition: mock_objects.cc:25
grpc_binder::MockWireWriter::MOCK_METHOD
MOCK_METHOD(absl::Status, RpcCall,(std::unique_ptr< Transaction >),(override))
grpc_binder::HasRawBinder
Definition: binder.h:33
grpc_binder::ReadableParcel::ReadInt64
virtual absl::Status ReadInt64(int64_t *data)=0
absl::StatusOr
Definition: abseil-cpp/absl/status/statusor.h:187
int8_t
signed char int8_t
Definition: stdint-msvc2008.h:75
code
Definition: bloaty/third_party/zlib/contrib/infback9/inftree9.h:24
grpc_binder::TransportStreamReceiver
Definition: transport_stream_receiver.h:32
grpc_binder::ReadableParcel
Definition: binder.h:66
grpc_binder::Binder
Definition: binder.h:87
grpc_binder::MockBinder::mock_output_
MockReadableParcel mock_output_
Definition: mock_objects.h:71
int32_t
signed int int32_t
Definition: stdint-msvc2008.h:77
grpc_binder::Binder::Transact
virtual absl::Status Transact(BinderTransportTxCode tx_code)=0
grpc_binder::Binder::PrepareTransaction
virtual absl::Status PrepareTransaction()=0
grpc_binder::WireWriter::RpcCall
virtual absl::Status RpcCall(std::unique_ptr< Transaction > tx)=0
grpc_binder::MockWritableParcel::MockWritableParcel
MockWritableParcel()
Definition: mock_objects.cc:35
grpc_binder::WritableParcel::WriteInt64
virtual absl::Status WriteInt64(int64_t data)=0


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:40