Repository: infinitered/solidarity (ts)

Issue:
Docs test
A test that makes sure that any non-underscored MD file in the `Docs/` folder, has a corresponding link in the [sidebar](https://github.com/infinitered/solidarity/blob/master/docs/_sidebar.md)

This will do nothing for coverage but will help ensure CI will fail if someone makes the mistake of updating docs and not the site navigation.

> ^ Good reusable test for all projects with docsify

Pull request:
testing docs are linked

closes #115 

Patch:
diff --git a/.all-contributorsrc b/.all-contributorsrc
index 61d7c87..26c310b 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -29,7 +29,8 @@
       "contributions": [
         "code",
         "test",
-        "review"
+        "review",
+        "infra"
       ]
     },
     {
diff --git a/.gitignore b/.gitignore
index eebacce..24d727d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@ coverage
 dist/
 .vscode/
 !.vscode/cSpell.json
+npm-debug.log
diff --git a/docs/existingContributors.md b/docs/existingContributors.md
index 6e6e149..798a632 100644
--- a/docs/existingContributors.md
+++ b/docs/existingContributors.md
@@ -4,7 +4,7 @@
 Thanks goes to these wonderful people ([emoji key](https://github.com/kentcdodds/all-contributors#emoji-key)):
 
 <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
-| [<img src="https://avatars0.githubusercontent.com/u/997157?v=4" width="150px;"/><br /><sub><b>Gant Laborde</b></sub>](http://gantlaborde.com/)<br />[📝](#blog-GantMan "Blogposts") [💻](https://github.com/infinitered/solidarity/commits?author=GantMan "Code") [🤔](#ideas-GantMan "Ideas, Planning, & Feedback") [🔌](#plugin-GantMan "Plugin/utility libraries") [⚠️](https://github.com/infinitered/solidarity/commits?author=GantMan "Tests") [📖](https://github.com/infinitered/solidarity/commits?author=GantMan "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/1771152?v=4" width="150px;"/><br /><sub><b>Kevin VanGelder</b></sub>](https://www.infinite.red)<br />[💻](https://github.com/infinitered/solidarity/commits?author=kevinvangelder "Code") [⚠️](https://github.com/infinitered/solidarity/commits?author=kevinvangelder "Tests") [👀](#review-kevinvangelder "Reviewed Pull Requests") | [<img src="https://avatars3.githubusercontent.com/u/6240043?v=4" width="150px;"/><br /><sub><b>Matt Thompson</b></sub>](http://thompsonportfolio.herokuapp.com/)<br />[💻](https://github.com/infinitered/solidarity/commits?author=mattathompson "Code") [⚠️](https://github.com/infinitered/solidarity/commits?author=mattathompson "Tests") [📖](https://github.com/infinitered/solidarity/commits?author=mattathompson "Documentation") | [<img src="https://avatars0.githubusercontent.com/u/68273?v=4" width="150px;"/><br /><sub><b>Steve Kellock</b></sub>](https://github.com/skellock)<br />[🤔](#ideas-skellock "Ideas, Planning, & Feedback") [💻](https://github.com/infinitered/solidarity/commits?author=skellock "Code") | [<img src="https://avatars0.githubusercontent.com/u/27202?v=4" width="150px;"/><br /><sub><b>Timo Sand</b></sub>](http://timosand.com)<br />[🚇](#infra-deiga "Infrastructure (Hosting, Build-Tools, etc)") | [<img src="https://avatars3.githubusercontent.com/u/3494509?v=4" width="150px;"/><br /><sub><b>AJ Robertson</b></sub>](http://codeithuman.com)<br />[📖](https://github.com/infinitered/solidarity/commits?author=codeithuman "Documentation") | [<img src="https://avatars1.githubusercontent.com/u/7246784?v=4" width="150px;"/><br /><sub><b>Joko Susilo</b></sub>](https://github.com/jokosu10)<br />[📖](https://github.com/infinitered/solidarity/commits?author=jokosu10 "Documentation") |
+| [<img src="https://avatars0.githubusercontent.com/u/997157?v=4" width="150px;"/><br /><sub><b>Gant Laborde</b></sub>](http://gantlaborde.com/)<br />[📝](#blog-GantMan "Blogposts") [💻](https://github.com/infinitered/solidarity/commits?author=GantMan "Code") [🤔](#ideas-GantMan "Ideas, Planning, & Feedback") [🔌](#plugin-GantMan "Plugin/utility libraries") [⚠️](https://github.com/infinitered/solidarity/commits?author=GantMan "Tests") [📖](https://github.com/infinitered/solidarity/commits?author=GantMan "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/1771152?v=4" width="150px;"/><br /><sub><b>Kevin VanGelder</b></sub>](https://www.infinite.red)<br />[💻](https://github.com/infinitered/solidarity/commits?author=kevinvangelder "Code") [⚠️](https://github.com/infinitered/solidarity/commits?author=kevinvangelder "Tests") [👀](#review-kevinvangelder "Reviewed Pull Requests") [🚇](#infra-kevinvangelder "Infrastructure (Hosting, Build-Tools, etc)") | [<img src="https://avatars3.githubusercontent.com/u/6240043?v=4" width="150px;"/><br /><sub><b>Matt Thompson</b></sub>](http://thompsonportfolio.herokuapp.com/)<br />[💻](https://github.com/infinitered/solidarity/commits?author=mattathompson "Code") [⚠️](https://github.com/infinitered/solidarity/commits?author=mattathompson "Tests") [📖](https://github.com/infinitered/solidarity/commits?author=mattathompson "Documentation") | [<img src="https://avatars0.githubusercontent.com/u/68273?v=4" width="150px;"/><br /><sub><b>Steve Kellock</b></sub>](https://github.com/skellock)<br />[🤔](#ideas-skellock "Ideas, Planning, & Feedback") [💻](https://github.com/infinitered/solidarity/commits?author=skellock "Code") | [<img src="https://avatars0.githubusercontent.com/u/27202?v=4" width="150px;"/><br /><sub><b>Timo Sand</b></sub>](http://timosand.com)<br />[🚇](#infra-deiga "Infrastructure (Hosting, Build-Tools, etc)") | [<img src="https://avatars3.githubusercontent.com/u/3494509?v=4" width="150px;"/><br /><sub><b>AJ Robertson</b></sub>](http://codeithuman.com)<br />[📖](https://github.com/infinitered/solidarity/commits?author=codeithuman "Documentation") | [<img src="https://avatars1.githubusercontent.com/u/7246784?v=4" width="150px;"/><br /><sub><b>Joko Susilo</b></sub>](https://github.com/jokosu10)<br />[📖](https://github.com/infinitered/solidarity/commits?author=jokosu10 "Documentation") |
 | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
 | [<img src="https://avatars3.githubusercontent.com/u/11984923?v=4" width="150px;"/><br /><sub><b>Campion Fellin</b></sub>](https://github.com/campionfellin)<br />[📖](https://github.com/infinitered/solidarity/commits?author=campionfellin "Documentation") | [<img src="https://avatars1.githubusercontent.com/u/4777393?v=4" width="150px;"/><br /><sub><b>Sia</b></sub>](http://www.clioandcalliope.com/)<br />[💻](https://github.com/infinitered/solidarity/commits?author=siakaramalegos "Code") | [<img src="https://avatars2.githubusercontent.com/u/14152125?v=4" width="150px;"/><br /><sub><b>dduncan</b></sub>](https://github.com/ddncn)<br />[📖](https://github.com/infinitered/solidarity/commits?author=ddncn "Documentation") | [<img src="https://avatars1.githubusercontent.com/u/4968754?v=4" width="150px;"/><br /><sub><b>Brandon Dean</b></sub>](https://github.com/thedeany)<br />[📖](https://github.com/infinitered/solidarity/commits?author=thedeany "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/25131978?v=4" width="150px;"/><br /><sub><b>Grigori</b></sub>](https://github.com/grigori-gru)<br />[📖](https://github.com/infinitered/solidarity/commits?author=grigori-gru "Documentation") | [<img src="https://avatars0.githubusercontent.com/u/3335740?v=4" width="150px;"/><br /><sub><b>Imran Brown</b></sub>](http://www.imranbrown.com)<br />[📖](https://github.com/infinitered/solidarity/commits?author=rmnegatives "Documentation") | [<img src="https://avatars2.githubusercontent.com/u/7189823?v=4" width="150px;"/><br /><sub><b>Nicolas Charpentier</b></sub>](https://github.com/charpeni)<br />[🚇](#infra-charpeni "Infrastructure (Hosting, Build-Tools, etc)") |
 | [<img src="https://avatars1.githubusercontent.com/u/94960?v=4" width="150px;"/><br /><sub><b>Will Raxworthy</b></sub>](https://github.com/willrax)<br />[🔌](#plugin-willrax "Plugin/utility libraries") | [<img src="https://avatars2.githubusercontent.com/u/5314500?v=4" width="150px;"/><br /><sub><b>Markus Mikonsaari</b></sub>](https://github.com/Mknsri)<br />[💻](https://github.com/infinitered/solidarity/commits?author=Mknsri "Code") | [<img src="https://avatars2.githubusercontent.com/u/1304862?v=4" width="150px;"/><br /><sub><b>Bnaya Peretz</b></sub>](https://github.com/Bnaya)<br />[⚠️](https://github.com/infinitered/solidarity/commits?author=Bnaya "Tests") | [<img src="https://avatars2.githubusercontent.com/u/713658?v=4" width="150px;"/><br /><sub><b>Christian Johannessen</b></sub>](https://github.com/ceejtron)<br />[💻](https://github.com/infinitered/solidarity/commits?author=ceejtron "Code") [⚠️](https://github.com/infinitered/solidarity/commits?author=ceejtron "Tests") | [<img src="https://avatars3.githubusercontent.com/u/17892823?v=4" width="150px;"/><br /><sub><b>Jenna Fucci</b></sub>](https://github.com/JenFucci)<br />[🎨](#design-JenFucci "Design") |


Test patch:
diff --git a/__tests__/docs/testDocs.ts b/__tests__/docs/testDocs.ts
new file mode 100644
index 0000000..d00e303
--- /dev/null
+++ b/__tests__/docs/testDocs.ts
@@ -0,0 +1,10 @@
+import jetpack from 'fs-jetpack'
+import path from 'path'
+
+test('Verify each markdown file has a link in sidebar', () => {
+  const markdownFiles = jetpack.find('docs', { matching: ['*.md', '!_*.md'] })
+  const sidebarContents = jetpack.read(`docs${path.sep}_sidebar.md`)
+  markdownFiles.map((fileName) => {
+    expect(sidebarContents.includes(fileName.split(path.sep).join('/'))).toBe(true)
+  })
+})