Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Feature Branch] Analysis Discussion Section - Phase 1 (#161)
* [Frontend] Create a new discussion component to be displayed in an Analysis view (#139) * Updating the paper to include the country for each affiliation which is required for publication. * Updated the system tests workflow to use electron (#140) * Added a DiscussionsSection.vue in AnalysisView components, updated the analysis model to return an injected discussion object, and updating the styling of the buttons to match figma more closely * The discussion collapse works * Looks ready for a pull request * Tests should be working now * Left out the node test * Updating CSS in a few places * Updating the DiscussionSection values --------- Co-authored-by: Angelina Uno-Antonison <[email protected]> * Created a discussions property in each of the analyses with several posts within them. Removed the temp fixture used in the frontend (#141) * Fixed frontend unit test with AnalysisView * fixed line too long * Missed the updated json * Changed formatting on the /etc/fixtures/analyses.json * removed the etc/.certificate files * Displaying discussion posts (#150) * New Discussions post button, text field, and save/publish buttons * Creating temporary discussion API mock api endpoints to test integrating them into the frontend * Displaying posts from an analysis * Hooked up the discussion post to the backend and return a mock discussions post. Added styling to the discussion posts * Updated CSS to alternate discussion post colors * Added more unit test coverage on the frontend and linted * Added system tests and data-test attributes to go along with it --------- Co-authored-by: Angelina Uno-Antonison <[email protected]> * [Frontend] Clicking the "New Discussion" button opens a field below the header line divider to enter an opinion (#151) * New Discussions post button, text field, and save/publish buttons * Displaying posts from an analysis * Added more unit test coverage on the frontend and linted * Toggles New Discussion Field * added system and unit tests for the discussion section * forgot to add the system test * Minor CSS fixes * [Backend] Add a new route and repository to handle an incoming post and save it in Mongo (#153) * Added a new collection to update a new post along with a test and linting * Fixing python unit test * Integration test and linting * Updated the analysis_collection add_discussion_post function to use pymongo find_one_and_update function to simplify how posts are added to discussions in analyses * linting * New migration script to ensure both supporting_evidence_files and discussions keys are added to each analysis object in the analyses collection (#154) * Updated phenotips importer to include supporting_evidence_files and discussions field. Updated the analyses fixture to include these fields as well (#155) * Adding context menu to discussion posts (#156) * added actions to the discussion post context menus * Changed the backend user object to send back the clientId in the basic user object, this is used to check if the user made a post and present a context menu * new ContextMenu.vue duplicates the DropDownMenu.vue functionality and turns it from hover to click. This is not quite right * lots of changes: swapped dropdown and contextmenu icons, contextmenu will now open on click and close when unfocused or an action is taken on the menu. ContextMenu styling changes * Fixed frontend test * Lots of fixes, trying to figure out how to test this * Frontend linting * Removed a .only in front end test * [Backend] Remove and edit post route and methods to update and delete a post from the discussion section (#157) * Added a delete route and delete post analysis collection function * Added a new route for editing a post and matching collection function, also added error checking for different situations in modifying discussion posts in an analysis * Change responsibilities of routes and put helper function to find discussion post in analysis model * proper error handling for discussion posts in progress * Removed the discussion fixtures and properly gets the discussion posts from the analysis * Finished integration and unit tests for updating and deleting a discussion post * Formatting/linting * Fixed integration test * Added unit and integration tests for analysis model and routers * Update backend/src/routers/analysis_discussion_router.py Co-authored-by: Angelina Uno-Antonison <[email protected]> Signed-off-by: James Scherer <[email protected]> * Update backend/tests/integration/test_analysis_routers.py Co-authored-by: Angelina Uno-Antonison <[email protected]> Signed-off-by: James Scherer <[email protected]> * linting --------- Signed-off-by: James Scherer <[email protected]> Co-authored-by: Angelina Uno-Antonison <[email protected]> * [Frontend] The vertical '...' context menu functions to delete posts (#158) * Frontend discussion post deletion working, complete with notification dialog * Adding a system test for successfully deleting a new discussion post * fixing frontend unit tests and adding an extra system test * Linting * Changed the delete action in the context menu to have an emit key and chain the emits down the section to be called in the view to delete a post * Linting and changing var names * Lots of frontend unit tests, but not yet finished * Added more tests and linting * Fixed issue with contextId being renamed * Removed console log * [Frontend] The vertical '...' context menu functions to edit posts (#160) * Frontend discussion post deletion working, complete with notification dialog * Adding a system test for successfully deleting a new discussion post * fixing frontend unit tests and adding an extra system test * Linting * Changed the delete action in the context menu to have an emit key and chain the emits down the section to be called in the view to delete a post * Linting and changing var names * Lots of frontend unit tests, but not yet finished * Added more tests and linting * Fixed issue with contextId being renamed * Removed console log * Edit post emit chain working and backend is saving properly, it's just the discussion content is the same as what's posted * Now editing a post works, it edits the post in place * More styling for the post editing * Frontend linting * Frontend tests and linting * Added system tests for post editing * Update .github/workflows/system-tests.yml Co-authored-by: Angelina Uno-Antonison <[email protected]> Signed-off-by: James Scherer <[email protected]> * Update backend/src/routers/analysis_router.py Co-authored-by: Angelina Uno-Antonison <[email protected]> Signed-off-by: James Scherer <[email protected]> * skipping the a test in rosalution_analysis to match main, will come back later --------- Signed-off-by: James Scherer <[email protected]> Co-authored-by: Angelina Uno-Antonison <[email protected]>
- Loading branch information