Code Review Report - SOEN390-ConUNav/SOEN390-Mini-Cap-Project GitHub Wiki

Release 1 - Top 5 Pull Requests

PR 1. Search View Implementation

This PR discussed the reason why this PR was failing a test due to dependencies issues followed by another comment offering advice on places in which further refactoring could be done to improve the quality of the code.

PR 2. Google Directions Implementation

This PR discussed the local set up required for testing this PR. It was then followed by a question as to why the Expo version which previously worked as modified. It was a measure taken to satisfy the tests. Finally, the discussion ended with everyone being able to test this PR through Swagger.

PR 3. Places of Interest Google API

This PR discusses the correct functionality and logic behind this PR. It tests whether it can successfully perform and return the points of interests. This was tested through Swagger and once completed, approved.

PR 4. Import Google Calendar Schedule

This PR discusses about the inconsistency of the current UI with the designed one along with the comment of changing the placement of the log out button. Additionally, another comment brought out the issue of having too many .md files in different places and proposed to put all of them together in CONTRIBUTING.md. Further actions concerning this PR will be taken at a later date.

PR 5. Bug Report - Modified the Freeze on Markers

This PR discusses the bug where previously markers did not load without reloading, reviewers tested this fix thoroughly and also exposed a small typo that happened to be part of the PR.

Release 2 - Top 5 Pull Requests

PR 1. Implement Directions HUD

This PR discusses many comments, the first comment suggested to add a grammar correction case for the number of steps in the Navigation HUD. Another comment talked about an unnecessary line in the code which was later removed. Another change was the refactoring of a test. A better test was suggested. Finally a redundant statement was centralized.

PR 2. Implementation of Nagivation

This PR discusses some changes made to the code, such as the change of the db port to avoid any future issues. Furthermore, a comment was about list of nearby points of interest which caused further review on behalf of the author. Further comments reminded the author to add unit tests and comply with the SonarQube merging requirements which were later addressed.

PR 3. Next Class UI Route

This PR discusses how the author could add some tests and how he could refactor redundant/over bloated code. Finally, a comment was made to rename a variable.

PR 4. Search View Clickable

This PR discusses the lack of tests pointed out by SonarQube percentage coverage. Furthermore, some refactoring was pointed out and applied. It was mentioned that the tests coverage would be addressed at a later date.

PR 5. Added Shuttle API and Refactored Frontend

This PR discusses some questions on the code and some refactoring suggestions as to keep things clear and easy to read.

Release 3 - Top 5 Pull Requests

PR 1. Added Test Coverage Documentation Generation and Deployments

This PR concerned the implementation of test coverage for ConUNav. With it, came a new challenge, should we open source the results for the sake of viewing things easily by having the possibility to link them in the wiki at the expense of having these results be public to everyone? One could argue, external users besides the professor need to have access to this information. In the end, for the sake of simplifying things for the teacher, the results were open sourced.

PR 2. Dynamic Search

This PR discusses how a section of the code was suboptimal. A reviewer suggested the use of fake timers as to smooth things out when using the app. Furthermore, there is a refactor change after another reviewer pointed out that there was duplicate code thus having the author fix that. Otherwise SonarQube judged to PR to be up with the set standards

PR 3. POI Map

This PR discuses the possibility of a race condition when the user wants to view parking, restaurants but clicks on the filters in succession to quickly which leads to an improper display of POIS (points of interest), ex: showing parking when you are on restaurants. The author however thoroughly tested this possibility and explained that whilst it could in theory happen (the race condition), it had never shown itself in while testing. Thus, no change was made. Following this, another refactoring comment was made suggesting to remove duplicate code and instead extracting it to make another file from which the ordinal files can import from. Finally, some tests were added after a reviewer's reminder.

PR 4. Implemented Composite Design Pattern to Settings

This PR discusses how some code could be better written with the help of an export, then the author implemented that comment into the code. Furthermore, some code was duplicated as pointed out by a reviewer which then got merged into one by the author. Finally, SonarQube made sure the PR was up to standards before the merge.

PR 5. Dark Mode Fix

This PR discusses the fact that no core feature was modified, only the styling thus after further analysis and checks, the PR was approved without any issues.