comment se moquer de printemps amqp/lapin au printemps de démarrage de test

La façon de se moquer de printemps rabbitmq/amqp, de sorte qu'il ne manquera pas au cours d'un Printemps de Démarrage de Test, tout en essayant de créer automatiquement des échanges/les files d'attente?

Donné que j'ai un simple RabbitListener qui sera la cause de la file d'attente et l'échange automatique créé comme ceci:

@Component
@RabbitListener(bindings = {
        @QueueBinding(
                value = @Queue(value = "myqueue", autoDelete = "true"), 
                exchange = @Exchange(value = "myexchange", autoDelete = "true", type = "direct"), 
                key = "mykey")}
)
@RabbitListenerCondition
public class EventHandler {
    @RabbitHandler
    public void onEvent(Event event) {
      ...
    }   
}

Au cours d'un Printemps simple Test au Démarrage, comme ceci:

@ActiveProfiles("test")
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = { Application.class })

    @Autowired
    private ApplicationContext applicationContext;

    @Test
    public void test() {
        assertNotNull(applicationContext);
    }

}

il échouera avec:

16:22:16.527 [SimpleAsyncTaskExecutor-1] ERROR o.s.a.r.l.SimpleMessageListenerContainer - Failed to check/redeclare auto-delete queue(s).
org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused
    at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:62)
    at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:309)

Dans ce test, je ne se soucient pas de Lapin/AMQP, alors comment puis-je simuler le Lapin entier/AMQP loin?

OriginalL'auteur domi | 2016-08-03