aws / aws/aws-dotnet-messaging

Feature request: AWS.Messaging.Testing package

Open
#286 1 comment 3 reactions 0 assignees View on GitHub
feature-request p2
Dominant language
C#
Stars
143
Forks
27
Avg merge
1d 18h
Merged PRs (30d)
4

Description

### Describe the feature

Introduce a package with tooling that allows for easy testing with AWS.messaging flows - from having payload enqueued all the way to consumption in handler.

### Use Case

Writing fast and simple test for flows in messaging (ie from enqueued event to consumption in your handler) is possible, but not really trivial unless you have good knowledge of event structures... and requires a bit of boilerplating. Having testing toolkit should make it easier for everyone to use.

### Proposed Solution

Introduce .Testing package that allows easy to use setup to test your AWS.messaging flows without necessity to connect to real SQS.

This could be just set of methods that will help you configure aws.messaging to local mock endpoint + `EventMock< T>` sort of wrapper for adding proper envelopes... Or go all the way including wiremock or similar to mock entire SQS and just use service collection extension method to inject it for testing scenarios.

### Other Information

This is early idea that would require proper feature list (wishlist) for desired functionality before design and implementation.

### Acknowledgements

- [x] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### AWS.Messaging (or related) package versions

AWS.Messaging 1.0.0+

### Targeted .NET Platform

NET6+

### Operating System and version

any

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the AWS.Messaging 1.0.0+ API and its .NET 6+ message-flow testing needs. The issue provides no files or tests, so first define the feature wishlist and design scope; done should include an agreed testing toolkit that exercises enqueue-to-handler flows without connecting to real SQS.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, csharp
Domain
backend, distributed-systems, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.