Releases: tjohnston-softdev/aurion-assessment-2110
Releases · tjohnston-softdev/aurion-assessment-2110
NPM Update (2023-09-29)
NPM Update (2023-08-25)
- Updated
mocha
andchai
NPM packages. - Corrected unit test command instructions.
Coding style update
Re-wrote the existing code in a cleaner, more professional style.
Security Update (2022-11-21)
Security Update (2022-01-27)
Updated mocha to 9.2.0, fixing security vulnerability.
Co-Pairing Update
Changes from Unit Tests update
- Set hard edge distance limit of one billion (1000000000)
- Implemented unit testing modes:
- Input
- Parse
- Exact
- Shortest
- Possible
- Submission
- Route criteria types:
- Start node(s)
- End node(s)
- Number of stops (Pre-existing)
- Total distance (Pre-existing)
- One-way (No backtracking)
- Template pattern
- Route criteria can consider any number of start or end nodes.
- Route template patterns use Regular Expressions with two key differences:
\s
and\S
represent any start node.\e
and\E
represent any end node.
- Custom error messages for invalid route criteria.
- Precompiled 'pathfinding' unit tests example graph.
- Moved unit test parse output JSON file to its own script.
- For 'possible routes' pathfinding, consider an Infinite number of routes, skipping loop if necessary.
Unit Tests Update
Changes from original submission
- Implemented unit tests for:
- Input file validation.
- Graph parsing.
- Pathfinding algorithms.
- Submission example cases.
- Revised implementation details:
- Removed stray horizontal rule under implementation details
- Described output for different pathfinding functions.
- Described project dependencies.
- Various formatting changes throughout.
- Revised submission code.
- Merged "NO SUCH ROUTE" text into common function.
- Parsed graph must have multiple nodes/edges
- Revised 'possible routes' algorithm to avoid impossible sequences
- Split submission test cases to their own file.
- Dependencies.
Submission
My submission for the Aurion assessment (15 October 2021)