async def METHOD_NAME(self):
    request_context = RequestContext.test_context()
    request_context.message_receipt = MessageReceipt()
    request_context.settings["debug.auto_respond_credential_offer"] = True
    request_context.connection_record = async_mock.MagicMock()
    request_context.connection_record.my_did = "dummy"
    mock_oob_processor = async_mock.MagicMock(
        find_oob_record_for_inbound_message=async_mock.CoroutineMock(
            return_value=async_mock.MagicMock()
        )
    )
    request_context.injector.bind_instance(OobMessageProcessor, mock_oob_processor)
    with async_mock.patch.object(
        test_module, "V20CredManager", autospec=True
    ) as mock_cred_mgr:
        mock_cred_mgr.return_value.receive_offer = async_mock.CoroutineMock()
        mock_cred_mgr.return_value.create_request = async_mock.CoroutineMock(
            return_value=(None, "cred_request_message")
        )
        request_context.message = V20CredOffer()
        request_context.connection_ready = True
        handler_inst = test_module.V20CredOfferHandler()
        responder = MockResponder()
        await handler_inst.handle(request_context, responder)
    mock_cred_mgr.assert_called_once_with(request_context.profile)
    mock_cred_mgr.return_value.receive_offer.assert_called_once_with(
        request_context.message, request_context.connection_record.connection_id
    )
    mock_oob_processor.find_oob_record_for_inbound_message.assert_called_once_with(
        request_context
    )
    messages = responder.messages
    assert len(messages) == 1
    (result, target) = messages[0]
    assert result == "cred_request_message"
    assert target == {}