class MockUsbFunction
Defined at line 37 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
This class mocks a device by providing a usb_function_protocol_t.
Users can set expectations on how the protocol ops are called and what values they return. After
the test, use VerifyAndClear to reset the object and verify that all expectations were satisfied.
See the following example test:
ddk::MockUsbFunction usb_function;
/* Set some expectations on the device by calling usb_function.Expect... methods. */
SomeDriver dut(usb_function.GetProto());
EXPECT_OK(dut.SomeMethod());
ASSERT_NO_FATAL_FAILURES(usb_function.VerifyAndClear());
Note that users must provide the equality operator for struct types, for example:
bool operator==(const a_struct_type
&
lhs, const a_struct_type
&
rhs)
Protected Members
MockFunction mock_set_interface_
MockFunction mock_alloc_interface_
MockFunction mock_alloc_ep_
MockFunction mock_config_ep_
MockFunction mock_disable_ep_
MockFunction mock_alloc_string_desc_
MockFunction mock_request_queue_
MockFunction mock_ep_set_stall_
MockFunction mock_ep_clear_stall_
MockFunction mock_get_request_size_
MockFunction mock_cancel_all_
Public Methods
void MockUsbFunction ()
Defined at line 39 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
void ~MockUsbFunction ()
Defined at line 41 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
const usb_function_protocol_t * GetProto ()
Defined at line 43 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectSetInterface (zx_status_t out_s, usb_function_interface_protocol_t interface)
Defined at line 45 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectAllocInterface (zx_status_t out_s, uint8_t out_intf_num)
Defined at line 50 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectAllocEp (zx_status_t out_s, uint8_t direction, uint8_t out_address)
Defined at line 55 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectConfigEp (zx_status_t out_s, usb_endpoint_descriptor_t ep_desc, usb_ss_ep_comp_descriptor_t ss_comp_desc)
Defined at line 60 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectDisableEp (zx_status_t out_s, uint8_t address)
Defined at line 65 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectAllocStringDesc (zx_status_t out_s, std::string string, uint8_t out_index)
Defined at line 70 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectRequestQueue (usb_request_t usb_request, usb_request_complete_callback_t complete_cb)
Defined at line 75 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectEpSetStall (zx_status_t out_s, uint8_t ep_address)
Defined at line 80 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectEpClearStall (zx_status_t out_s, uint8_t ep_address)
Defined at line 85 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectGetRequestSize (uint64_t out_size)
Defined at line 90 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
MockUsbFunction & ExpectCancelAll (zx_status_t out_s, uint8_t ep_address)
Defined at line 95 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
void VerifyAndClear ()
Defined at line 100 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionSetInterface (const usb_function_interface_protocol_t * interface)
Defined at line 114 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionAllocInterface (uint8_t * out_intf_num)
Defined at line 119 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionAllocEp (uint8_t direction, uint8_t * out_address)
Defined at line 125 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionConfigEp (const usb_endpoint_descriptor_t * ep_desc, const usb_ss_ep_comp_descriptor_t * ss_comp_desc)
Defined at line 131 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionDisableEp (uint8_t address)
Defined at line 136 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionAllocStringDesc (const char * string, uint8_t * out_index)
Defined at line 141 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
void UsbFunctionRequestQueue (usb_request_t * usb_request, const usb_request_complete_callback_t * complete_cb)
Defined at line 147 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionEpSetStall (uint8_t ep_address)
Defined at line 151 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionEpClearStall (uint8_t ep_address)
Defined at line 156 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
uint64_t UsbFunctionGetRequestSize ()
Defined at line 161 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
zx_status_t UsbFunctionCancelAll (uint8_t ep_address)
Defined at line 166 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, usb_function_interface_protocol_t> & mock_set_interface ()
Defined at line 171 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t, uint8_t>> & mock_alloc_interface ()
Defined at line 172 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t, uint8_t>, uint8_t> & mock_alloc_ep ()
Defined at line 173 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, usb_endpoint_descriptor_t, usb_ss_ep_comp_descriptor_t> & mock_config_ep ()
Defined at line 174 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, uint8_t> & mock_disable_ep ()
Defined at line 175 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t, uint8_t>, std::string> & mock_alloc_string_desc ()
Defined at line 176 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<void, usb_request_t, usb_request_complete_callback_t> & mock_request_queue ()
Defined at line 177 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, uint8_t> & mock_ep_set_stall ()
Defined at line 178 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, uint8_t> & mock_ep_clear_stall ()
Defined at line 179 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<uint64_t>> & mock_get_request_size ()
Defined at line 180 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h
mock_function::MockFunction<std::tuple<zx_status_t>, uint8_t> & mock_cancel_all ()
Defined at line 181 of file fidling/gen/sdk/banjo/fuchsia.hardware.usb.function/fuchsia.hardware.usb.function/banjo/cpp/fuchsia/hardware/usb/function/cpp/banjo-mock.h