Enhance acio layering to make this unit-testable #40

Open
opened 2019-11-27 01:06:40 +03:00 by icex2 · 0 comments
icex2 commented 2019-11-27 01:06:40 +03:00 (Migrated from github.com)

Summary

Enhance the existing acio infrastructure by improving the existing layering.

This should be done in combination/before #38. The previously verified test code can be used to test the refactored changes.

Detailed description

Introduce a clean separation of a device, protocol and game specific layer. Avoid any direct dependencies to previous layers (if possible) to create clean de-coupling within modules.

Benefits

Make this unit-testable. The goal is to be able to write small tests to run known/dumped payloads against the different layers to verify all so far known and emulated features.

Drawbacks

Can be complex to establish and might require additional abstraction/layer.

Current blockers

None.

## Summary <!--- Provide a general summary of your changes in the Title above --> Enhance the existing acio infrastructure by improving the existing layering. This should be done in combination/before #38. The previously verified test code can be used to test the refactored changes. ## Detailed description <!--- Describe your feature in detail --> Introduce a clean separation of a device, protocol and game specific layer. Avoid any direct dependencies to previous layers (if possible) to create clean de-coupling within modules. ## Benefits <!--- Describe the value/benefits of the feature in detail --> Make this unit-testable. The goal is to be able to write small tests to run known/dumped payloads against the different layers to verify all so far known and emulated features. ## Drawbacks <!--- Describe any drawbacks that might be introduced with this feature --> Can be complex to establish and might require additional abstraction/layer. ## Current blockers <!--- Describe any blockers that need to be resolved before implementing this feature --> None.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Max/djhackersdev_bemanitools#40