@@ -304,4 +304,38 @@ public void testLoadSecretsManagerRotationEvent() {
304304 .returns ("arn:aws:secretsmanager:eu-central-1:123456789012:secret:/powertools/secretparam-xBPaJ5" , from (SecretsManagerRotationEvent ::getSecretId ))
305305 .returns ("CreateSecret" , from (SecretsManagerRotationEvent ::getStep ));
306306 }
307+
308+ @ Test
309+ public void testLoadRabbitMQEvent () {
310+ RabbitMQEvent event = EventLoader .loadRabbitMQEvent ("rabbitmq_event.json" );
311+ assertThat (event ).isNotNull ();
312+ assertThat (event )
313+ .returns ("aws:rmq" , from (RabbitMQEvent ::getEventSource ))
314+ .returns ("arn:aws:mq:us-west-2:112556298976:broker:test:b-9bcfa592-423a-4942-879d-eb284b418fc8" , from (RabbitMQEvent ::getEventSourceArn ));
315+
316+ Map <String , List <RabbitMQEvent .RabbitMessage >> messagesByQueue = event .getRmqMessagesByQueue ();
317+ assertThat (messagesByQueue ).isNotEmpty ();
318+ List <RabbitMQEvent .RabbitMessage > messages = messagesByQueue .get ("test::/" );
319+ assertThat (messages ).hasSize (1 );
320+ RabbitMQEvent .RabbitMessage firstMessage = messages .get (0 );
321+ assertThat (firstMessage )
322+ .returns (false , RabbitMQEvent .RabbitMessage ::getRedelivered )
323+ .returns ("eyJ0aW1lb3V0IjowLCJkYXRhIjoiQ1pybWYwR3c4T3Y0YnFMUXhENEUifQ==" , RabbitMQEvent .RabbitMessage ::getData );
324+
325+ RabbitMQEvent .BasicProperties basicProperties = firstMessage .getBasicProperties ();
326+ assertThat (basicProperties )
327+ .returns ("text/plain" , from (RabbitMQEvent .BasicProperties ::getContentType ))
328+ .returns (1 , from (RabbitMQEvent .BasicProperties ::getDeliveryMode ))
329+ .returns (34 , from (RabbitMQEvent .BasicProperties ::getPriority ))
330+ .returns (60000 , from (RabbitMQEvent .BasicProperties ::getExpiration ))
331+ .returns ("AIDACKCEVSQ6C2EXAMPLE" , from (RabbitMQEvent .BasicProperties ::getUserId ))
332+ .returns (80 , from (RabbitMQEvent .BasicProperties ::getBodySize ))
333+ .returns ("Jan 1, 1970, 12:33:41 AM" , from (RabbitMQEvent .BasicProperties ::getTimestamp ));
334+
335+ Map <String , Object > headers = basicProperties .getHeaders ();
336+ assertThat (headers ).hasSize (3 );
337+ Map <String , List <Integer >> header1 = (Map <String , List <Integer >>) headers .get ("header1" );
338+ assertThat (header1 .get ("bytes" )).contains (118 , 97 , 108 , 117 , 101 , 49 );
339+ assertThat ((Integer ) headers .get ("numberInHeader" )).isEqualTo (10 );
340+ }
307341}
0 commit comments