#pragma once #include #include #include struct AmqpMock { private: static void setInstance(AmqpMock* value); static void clearInstance(AmqpMock* value); public: MOCK_METHOD1(amqp_error_string2, const char* (int err)); MOCK_METHOD2(amqp_channel_open, amqp_channel_open_ok_t* (amqp_connection_state_t state, amqp_channel_t channel)); MOCK_METHOD1(amqp_get_rpc_reply, amqp_rpc_reply_t (amqp_connection_state_t state)); MOCK_METHOD3(amqp_channel_close, amqp_rpc_reply_t (amqp_connection_state_t state, amqp_channel_t channel, int code)); MOCK_METHOD8(amqp_queue_declare, amqp_queue_declare_ok_t* (amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_boolean_t passive, amqp_boolean_t durable, amqp_boolean_t exclusive, amqp_boolean_t auto_delete, amqp_table_t arguments)); MOCK_METHOD1(amqp_release_buffers, void (amqp_connection_state_t state)); MOCK_METHOD4(amqp_consume_message, amqp_rpc_reply_t (amqp_connection_state_t state, amqp_envelope_t *envelope, struct timeval *timeout, int flags)); MOCK_METHOD3(amqp_simple_wait_frame_noblock, int (amqp_connection_state_t state, amqp_frame_t *decoded_frame, struct timeval *tv)); MOCK_METHOD4(amqp_read_message, amqp_rpc_reply_t (amqp_connection_state_t state, amqp_channel_t channel, amqp_message_t *message, int flags)); MOCK_METHOD2(amqp_connection_close, amqp_rpc_reply_t (amqp_connection_state_t state, int code)); MOCK_METHOD1(amqp_destroy_envelope, void (amqp_envelope_t *envelope)); MOCK_METHOD1(amqp_destroy_message, void (amqp_message_t *message)); MOCK_METHOD1(amqp_destroy_connection, int (amqp_connection_state_t state)); MOCK_METHOD1(amqp_maybe_release_buffers, void (amqp_connection_state_t state)); MOCK_METHOD0(amqp_new_connection, amqp_connection_state_t (void)); MOCK_METHOD1(amqp_tcp_socket_new, amqp_socket_t* (amqp_connection_state_t state)); MOCK_METHOD3(amqp_socket_open, int (amqp_socket_t *self, const char *host, int port)); MOCK_METHOD8(amqp_login_plain, amqp_rpc_reply_t (amqp_connection_state_t state, char const *vhost, int channel_max, int frame_max, int heartbeat, amqp_sasl_method_enum sasl_method, const char* user, const char* pw)); MOCK_METHOD7(amqp_login_external, amqp_rpc_reply_t (amqp_connection_state_t state, char const *vhost, int channel_max, int frame_max, int heartbeat, amqp_sasl_method_enum sasl_method, const char* token)); MOCK_METHOD6(amqp_queue_bind, amqp_queue_bind_ok_t* (amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_table_t arguments)); MOCK_METHOD8(amqp_basic_publish, int (amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t exchange, amqp_bytes_t routing_key, amqp_boolean_t mandatory, amqp_boolean_t immediate, struct amqp_basic_properties_t_ const *properties, amqp_bytes_t body)); MOCK_METHOD8(amqp_basic_consume, amqp_basic_consume_ok_t* (amqp_connection_state_t state, amqp_channel_t channel, amqp_bytes_t queue, amqp_bytes_t consumer_tag, amqp_boolean_t no_local, amqp_boolean_t no_ack, amqp_boolean_t exclusive, amqp_table_t arguments)); static amqp_connection_state_t defaultConnectionState; static amqp_socket_t* defaultSocket; static amqp_rpc_reply_t defaultRpcReply; AmqpMock() { setInstance(this); } ~AmqpMock() { clearInstance(this); } };