Module testing

Module testing 

Source
Expand description

§Módulo de Utilitários de Teste

Este módulo fornece ferramentas para auxiliar no teste de componentes que dependem de HTTP, permitindo o mock de chamadas HTTP para isolamento de testes.

§Exemplo de Uso

use mcprs::testing::{HttpClient, MockHttpClient};
use mockall::predicate;
use serde_json::json;

// Criar um cliente HTTP mockado
let mut mock_client = MockHttpClient::new();

// Configurar expectativas do mock
mock_client
    .expect_post()
    .with(
        predicate::eq("https://api.example.com/endpoint".to_string()),
        predicate::always(),
        predicate::always(),
    )
    .times(1)
    .returning(|_, _, _| {
        // Retornar uma resposta simulada
        // ...
    });

// Usar o mock em um componente que depende de HTTP
// ...

Modules§

__mock_MockHttpClient
__mock_MockHttpClientFactory
__mock_MockHttpClientFactory_HttpClientFactory
__mock_MockHttpClient_HttpClient

Structs§

MockHttpClient
Define uma interface abstrata para clientes HTTP.
MockHttpClientFactory
Factory trait para criar instâncias de HttpClient.
ReqwestClient
Implementação concreta de HttpClient usando o crate reqwest.
ReqwestClientFactory
Implementação padrão de HttpClientFactory que cria ReqwestClient.

Traits§

HttpClient
Define uma interface abstrata para clientes HTTP.
HttpClientFactory
Factory trait para criar instâncias de HttpClient.