Skip to content

Commit 7ae9d0f

Browse files
Released co-pairing update
1 parent 57eba2c commit 7ae9d0f

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

changelog.md

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
11
# Changelog
22

3-
End 'copair' branch.
3+
* Set hard edge distance limit of one billion (1000000000)
4+
* Implemented unit testing modes:
5+
* Input
6+
* Parse
7+
* Exact
8+
* Shortest
9+
* Possible
10+
* Submission
11+
* Route criteria types:
12+
* Start node(s)
13+
* End node(s)
14+
* Number of stops (Pre-existing)
15+
* Total distance (Pre-existing)
16+
* One-way (No backtracking)
17+
* Template pattern
18+
* Route criteria can consider any number of start or end nodes.
19+
* Route template patterns use Regular Expressions with two key differences:
20+
* `\s` and `\S` represent any start node.
21+
* `\e` and `\E` represent any end node.
22+
* Custom error messages for invalid route criteria.
23+
* Precompiled 'pathfinding' unit tests example graph.
24+
* Moved unit test parse output JSON file to its own script.
25+
* For 'possible routes' pathfinding, consider an Infinite number of routes, skipping loop if necessary.

readme.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ Assessment instructions were sent as a MS Word document which I interpreted into
66

77
This attempt was developed across 12-15 October 2021 and immediately shared to the general public. An updated version with unit tests was released on 27 October 2021. A final version was released on 12 December 2021 based on suggestions from the hiring managers.
88

9+
910
## Running
1011

1112
**Submission**
@@ -22,6 +23,7 @@ Execute `npm install` to download the unit testing suite, and then execute any o
2223
* `npm run test-possible` - Possible routes pathfinding.
2324
* `npm run test-submission` - Assessment submission.
2425

26+
2527
## References
2628

2729
* [Computerphile - Dijkstra's Algorithm](https://www.youtube.com/watch?v=GazC3A4OQTE)
@@ -32,6 +34,7 @@ Execute `npm install` to download the unit testing suite, and then execute any o
3234
* [Suburb Names](https://www.fantasynamegenerators.com/city-district-names.php)
3335
* [Mocha](https://mochajs.org/) and [Chai](https://www.chaijs.com/) - Unit testing suite.
3436

37+
3538
## Disclaimer
3639

3740
This submission is licensed under CC-BY 4.0. You can do whatever you want with it as long as attribution is given. I have been granted express permission by the hiring manager to share my submission. As I am completing this assessment as part of a recruitment program involving multiple companies, I have chosen to disclose the name of this particular company for clarification. I have taken care to reference any 3rd-party assets used in this project and they remain property of their respective owners.

0 commit comments

Comments
 (0)