Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Take out HintHandler from StatePlayerRecyclerViewAssembler #3312

Closed
yashraj-01 opened this issue Jun 11, 2021 · 0 comments · Fixed by #3659
Closed

Take out HintHandler from StatePlayerRecyclerViewAssembler #3312

yashraj-01 opened this issue Jun 11, 2021 · 0 comments · Fixed by #3659
Assignees
Labels
Priority: Essential This work item must be completed for its milestone. Type: Task A single task of work corresponding to a greater milestone. Generally corresponds to a single PR. Z-ibt Temporary label for Ben to keep track of issues he's triaged.

Comments

@yashraj-01
Copy link
Contributor

yashraj-01 commented Jun 11, 2021

Take out HintHandler from StatePlayerRecyclerViewAssembler and use the interface approach to use it as a prod implementation of Hint Handler.

Target PR date: 2021-07-28
Target completion date: 2021-08-04

@yashraj-01 yashraj-01 added Priority: Essential This work item must be completed for its milestone. Type: Task A single task of work corresponding to a greater milestone. Generally corresponds to a single PR. labels Jun 11, 2021
@yashraj-01 yashraj-01 added this to the GSoC 2021.1: Milestone 2 milestone Jun 11, 2021
@yashraj-01 yashraj-01 self-assigned this Jun 11, 2021
@yashraj-01 yashraj-01 changed the title Implement logic to show all hints and solution Take out HintHandler from StatePlayerRecyclerViewAssembler Jul 1, 2021
@yashraj-01 yashraj-01 moved this from To do to In progress in GSoC 2021.1: Developer Options Menu Jul 31, 2021
@yashraj-01 yashraj-01 moved this from In progress to To do in GSoC 2021.1: Developer Options Menu Jul 31, 2021
@yashraj-01 yashraj-01 moved this from To do to In progress in GSoC 2021.1: Developer Options Menu Aug 19, 2021
BenHenning added a commit that referenced this issue Aug 19, 2021
* moved hint handler to domain layer

* fixed app layer espresso tests

* fix app layer robolectric tests

* fixed domain layer tests

* Added annotations to test exemptions

* proto lint fix

* fixed hint handler for training sessions

* nit and removed test excemptions

* added hint tests for config change

* fixed test file exemptions

* fixed failing test

* made HintHandler injectable

* fixed ktlint error

* Added tests for hint handler

* nits

* fixed failing build

* fixed failing build

* fix build

* fixed imports

* nits and improved testing

* updated exploration.proto

* removed progress controller from kdoc exemptions

* fix failing test

* moved timer to domain

* fixed build and nits

* nit

* added listener back to test exemptions

* nit fixes and added more tests

* lint fix

* First round: make HintHandler independent.

This also brings HintHandler into an interface + factory pattern. This
isn't the final design since I think we can largely simplify the way
hints work; that'll be my next pass.

This breaks questions & HintHandlerTest; those will require further work
later.

* Simplify HelpIndex in proto.

Move HelpIndex to PendingState to avoid the entire domain case of
handling CompletedState.

* Simplify hints & solutions.

This removes the per-Hint/Solution tracking & completely leans on
HelpIndex for proper hints & solution tracking both in the domain & UI
layers.

Fixes a bunch of other stuff, too, including
QuestionAssessmentProgressController tests.

* Clean up dead code paths & improve handler API.

* fixed test modules and lint

* renamed HintHandlerTest to HintHandlerImplTest

* Add tests for HintHandler.

This introduces some new explorations for making testing HintHandlerImpl
easier.

* Add remaining tests/exemptions for new files.

* Lint fixes.

* Post-merge fixes (including lint fixes).

* Post-merge maven_install fix.

* Revert "Merge branch 'develop' into move-hint-handler-to-domain"

This reverts commit e2fea90, reversing
changes made to 6659858.

* Post-merge Gradle-discovered fixes.

* Revert "Revert "Merge branch 'develop' into move-hint-handler-to-domain""

This reverts commit b1622c0.

* Additional post-merge fixes.

* Address first batch of review comments.

(Clarified some proto fields & remove trailing comma).

* Fix testing module tests & remove unnecessary changes.

* Simplify & fix more reviewer comments.

This simplifies some data pipelining in the UI, and improves HintHandler
documentation in addition to fixing some more reviewer comments.

* Improve documentation to address review comment.

* Rename new module to prod module.

This simplifies the changes & approvals needed in #3705.

* Rename proto field (to address review comment).

Also, fix broken reference error accidentally introduced in an earlier
commit.

* Kotlin lint fixes.

Co-authored-by: yashraj-01 <[email protected]>
Co-authored-by: Ben Henning <[email protected]>
@yashraj-01 yashraj-01 moved this from In progress to Done in GSoC 2021.1: Developer Options Menu Aug 19, 2021
@BenHenning BenHenning added the Z-ibt Temporary label for Ben to keep track of issues he's triaged. label Sep 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority: Essential This work item must be completed for its milestone. Type: Task A single task of work corresponding to a greater milestone. Generally corresponds to a single PR. Z-ibt Temporary label for Ben to keep track of issues he's triaged.
2 participants