This repository was archived by the owner on Dec 4, 2020. It is now read-only.
This repository was archived by the owner on Dec 4, 2020. It is now read-only.
Write tests for config integration #21
Open
Description
We recently implemented some complex behavior with our config integration. As a result, we should write tests to prevent breaking it in the future. Unfortunately, we are out of time for today (and need to catch up on sleep) so we are documenting the test skeletons for later:
- A config for GME
- can load all items via
getAll
- has no
setAll
(as desired due to override confusion) - can load an item via
get
- can write an item via
set
- can remove an item via
del
- can remove all items via
clear
- can load all items via
- A config for GME with overrides
getAll
dumps all items and overloaded with overrides (unless undefined)get
loads the overridden property- running
getAll
afterclear
resolves the overrides
- An unconfigured config window
- has default values for playback shortcuts
- A config window when there are no CLI overrides present
- has all options enabled
- when an option is ticked
- it updates the corresponding config setting
- A config window when a CLI override is present
- disables the corresponding config setting
- A mutually exclusive checkbox when checked
- checks the checkbox
- when clicking its mutually exclusive counterpart
- checks the new checkbox
- unchecks the old checkbox
- updates the settings for both old and new checkbox
- TODO: Need to build out when one of these is disabled (then both must be disabled)