Closed Carkzis closed 5 months ago
Using DataStore for storing the id of the current game, need to continue with adding deletions and edge cases, error handling.
Can add and retrieve game ID from DataStore via GameRepository. GameViewModel was also given a state field.
Need to make it so the GameRepository retrieves a full Game from the database using the ID. CurrentGame is the domain object, only ID is provided to the DataStore.
Added basic alert dialog that appears when clicking a game card.
Need to allow the game state, entered or not entered, to be available in the AnankeApp state as it is needed between different screens.
Using UseCase pattern for sharing current game state.
Still need:
When testing GameScreen, consider testing from GameRoute level for tests requiring anything dynamic, like dialogs.
Consider using the Route layer in NewGameScreenTest, by removing the setUp function.
Route and Screen can both come under ScreenTest, as Route is just a wrapper for adding default logic essentially; in tests conceptually we would be using a "TestRoute" in that we would change the injected values in the GameScreen, without calling it as such..
Because of this, keep Route as thin as possible.
Still to do:
General refactoring.
Refactored GameScreen and GameScreen Test.
Remaining:
Done:
Remaining:
General refactoring may be light now that package arrangement has been done.
PR https://github.com/Carkzis/Ananke/pull/5 merged.
Closing ticket.