Repository: karen-irc/option-t
Pull request #491 (2019-10-25 17:01:16)

Remove mocha


<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/karen-irc/option-t/491)
<!-- Reviewable:end -->



Patch:
diff --git a/.eslintignore b/.eslintignore
index d425287f..2ffbb9d2 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -8,5 +8,5 @@ node_modules/
 !.eslintrc.js
 
 # FIXME: remove these from here
-__tests__/Option/type_definition.test.ts
-__tests__/Result/type_definition_es6.test.ts
+__tests__/ClassOption/type_definition.test.ts
+__tests__/ClassResult/type_definition_es6.test.ts
diff --git a/Makefile b/Makefile
index 831c646e..1f322e84 100644
--- a/Makefile
+++ b/Makefile
@@ -18,9 +18,7 @@ TMP_MJS_DIR := $(CURDIR)/__tmp_mjs
 
 ## In CI environment, we should change some configuration
 ifeq ($(CI),true)
-	MOCHA_REPORTER = spec
 else
-	MOCHA_REPORTER = nyan
 endif
 
 
@@ -178,20 +176,12 @@ eslint:
 # Test
 ###########################
 .PHONY: test
-test: lint build run_ava mocha tscheck test_distribution_contain_all ## Run all tests
+test: lint build run_ava tscheck test_distribution_contain_all ## Run all tests
 
 .PHONY: tscheck
 tscheck: clean_type_test build ## Test check typing consistency.
 	$(NPM_BIN)/tsc --project $(CURDIR)/tsconfig_test.json --noEmit
 
-.PHONY: mocha
-mocha: build
-	$(MAKE) run_mocha -C $(CURDIR)
-
-.PHONY: run_mocha
-run_mocha: ## Run mocha without any transforms.
-	$(NPM_BIN)/mocha --recursive '$(SRC_TEST_DIR)/**/*.test.js' --reporter $(MOCHA_REPORTER)
-
 .PHONY: run_ava
 run_ava: build
 	$(MAKE) run_ava_only -C $(CURDIR)
diff --git a/package.json b/package.json
index 86b08637..89e6a701 100644
--- a/package.json
+++ b/package.json
@@ -56,7 +56,6 @@
     "cpx": "^1.5.0",
     "del-cli": "^3.0.0",
     "eslint": "^6.5.1",
-    "mocha": "^6.2.2",
     "rename-cli": "^6.0.0",
     "typescript": "~3.7.1-rc"
   },
@@ -64,7 +63,7 @@
   "typings": "./cjs/index.d.ts",
   "ava": {
     "files": [
-      "ava_test/**/*.test.js"
+      "__tests__/**/*.test.js"
     ],
     "babel": {
       "testOptions": {
diff --git a/yarn.lock b/yarn.lock
index d1d954ca..e8f355da 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -833,11 +833,6 @@ ansi-align@^3.0.0:
   dependencies:
     string-width "^3.0.0"
 
-ansi-colors@3.2.3:
-  version "3.2.3"
-  resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813"
-  integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==
-
 ansi-escapes@^3.0.0, ansi-escapes@^3.2.0:
   version "3.2.0"
   resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
@@ -1226,11 +1221,6 @@ braces@^3.0.1, braces@~3.0.2:
   dependencies:
     fill-range "^7.0.1"
 
-browser-stdout@1.3.1:
-  version "1.3.1"
-  resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60"
-  integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==
-
 browserslist@^4.6.0, browserslist@^4.7.1:
   version "4.7.2"
   resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.2.tgz#1bb984531a476b5d389cedecb195b2cd69fb1348"
@@ -1307,7 +1297,7 @@ camelcase@^4.1.0:
   resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
   integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=
 
-camelcase@^5.0.0, camelcase@^5.3.1:
+camelcase@^5.3.1:
   version "5.3.1"
   resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
   integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
@@ -1510,15 +1500,6 @@ cliui@^3.2.0:
     strip-ansi "^3.0.1"
     wrap-ansi "^2.0.0"
 
-cliui@^5.0.0:
-  version "5.0.0"
-  resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5"
-  integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==
-  dependencies:
-    string-width "^3.1.0"
-    strip-ansi "^5.2.0"
-    wrap-ansi "^5.1.0"
-
 clone-response@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
@@ -1730,13 +1711,6 @@ dateformat@^2.2.0:
   resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.2.0.tgz#4065e2013cf9fb916ddfd82efb506ad4c6769062"
   integrity sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=
 
-debug@3.2.6, debug@^3.2.6:
-  version "3.2.6"
-  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
-  integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
-  dependencies:
-    ms "^2.1.1"
-
 debug@^2.2.0, debug@^2.3.3:
   version "2.6.9"
   resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
@@ -1744,6 +1718,13 @@ debug@^2.2.0, debug@^2.3.3:
   dependencies:
     ms "2.0.0"
 
+debug@^3.2.6:
+  version "3.2.6"
+  resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
+  integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
+  dependencies:
+    ms "^2.1.1"
+
 debug@^4.0.1, debug@^4.1.0, debug@^4.1.1:
   version "4.1.1"
   resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
@@ -1759,7 +1740,7 @@ decamelize-keys@^1.0.0:
     decamelize "^1.1.0"
     map-obj "^1.0.0"
 
-decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0:
+decamelize@^1.1.0, decamelize@^1.1.1:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
   integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
@@ -1810,7 +1791,7 @@ defer-to-connect@^1.0.1:
   resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.0.2.tgz#4bae758a314b034ae33902b5aac25a8dd6a8633e"
   integrity sha512-k09hcQcTDY+cwgiwa6PYKLm3jlagNzQ+RSvhjzESOGOx+MNOuXkxTfEvPrO1IOQ81tArCFYQgi631clB70RpQw==
 
-define-properties@^1.1.2, define-properties@^1.1.3:
+define-properties@^1.1.2:
   version "1.1.3"
   resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
   integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
@@ -1884,11 +1865,6 @@ detect-libc@^1.0.2:
   resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
   integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
 
-diff@3.5.0:
-  version "3.5.0"
-  resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12"
-  integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==
-
 dir-glob@^3.0.1:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
@@ -1974,37 +1950,12 @@ error-ex@^1.2.0, error-ex@^1.3.1:
   dependencies:
     is-arrayish "^0.2.1"
 
-es-abstract@^1.5.1:
-  version "1.16.0"
-  resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d"
-  integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==
-  dependencies:
-    es-to-primitive "^1.2.0"
-    function-bind "^1.1.1"
-    has "^1.0.3"
-    has-symbols "^1.0.0"
-    is-callable "^1.1.4"
-    is-regex "^1.0.4"
-    object-inspect "^1.6.0"
-    object-keys "^1.1.1"
-    string.prototype.trimleft "^2.1.0"
-    string.prototype.trimright "^2.1.0"
-
-es-to-primitive@^1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
-  integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
-  dependencies:
-    is-callable "^1.1.4"
-    is-date-object "^1.0.1"
-    is-symbol "^1.0.2"
-
 es6-error@^4.0.1:
   version "4.1.1"
   resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d"
   integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
 
-escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5:
+escape-string-regexp@^1.0.5:
   version "1.0.5"
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
   integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
@@ -2346,13 +2297,6 @@ find-index@^0.1.1:
   resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4"
   integrity sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=
 
-find-up@3.0.0, find-up@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"
-  integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
-  dependencies:
-    locate-path "^3.0.0"
-
 find-up@^2.0.0:
   version "2.1.0"
   resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
@@ -2360,6 +2304,13 @@ find-up@^2.0.0:
   dependencies:
     locate-path "^2.0.0"
 
+find-up@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"
+  integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
+  dependencies:
+    locate-path "^3.0.0"
+
 find-up@^4.0.0, find-up@^4.1.0:
   version "4.1.0"
   resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
@@ -2377,13 +2328,6 @@ flat-cache@^2.0.1:
     rimraf "2.6.3"
     write "1.0.3"
 
-flat@^4.1.0:
-  version "4.1.0"
-  resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2"
-  integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==
-  dependencies:
-    is-buffer "~2.0.3"
-
 flatted@^2.0.0:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08"
@@ -2476,11 +2420,6 @@ get-caller-file@^1.0.1:
   resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
   integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==
 
-get-caller-file@^2.0.1:
-  version "2.0.5"
-  resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
-  integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-
 get-port@^5.0.0:
   version "5.0.0"
   resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.0.0.tgz#aa22b6b86fd926dd7884de3e23332c9f70c031a6"
@@ -2549,18 +2488,6 @@ glob2base@^0.0.12:
   dependencies:
     find-index "^0.1.1"
 
-glob@7.1.3:
-  version "7.1.3"
-  resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
-  integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
-  dependencies:
-    fs.realpath "^1.0.0"
-    inflight "^1.0.4"
-    inherits "2"
-    minimatch "^3.0.4"
-    once "^1.3.0"
-    path-is-absolute "^1.0.0"
-
 glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.3, glob@^7.1.4:
   version "7.1.5"
   resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.5.tgz#6714c69bee20f3c3e64c4dd905553e532b40cdc0"
@@ -2632,11 +2559,6 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6
   resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
   integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
 
-growl@1.10.5:
-  version "1.10.5"
-  resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e"
-  integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==
-
 has-flag@^3.0.0:
   version "3.0.0"
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
@@ -2693,7 +2615,7 @@ has-yarn@^2.1.0:
   resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77"
   integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==
 
-has@^1.0.1, has@^1.0.3:
+has@^1.0.1:
   version "1.0.3"
   resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
   integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
@@ -2708,11 +2630,6 @@ hasha@^5.0.0:
     is-stream "^2.0.0"
     type-fest "^0.8.0"
 
-he@1.2.0:
-  version "1.2.0"
-  resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
-  integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
-
 hosted-git-info@^2.1.4:
   version "2.8.5"
   resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c"
@@ -2923,16 +2840,6 @@ is-buffer@^1.1.4, is-buffer@^1.1.5:
   resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
   integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
 
-is-buffer@~2.0.3:
-  version "2.0.4"
-  resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623"
-  integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==
-
-is-callable@^1.1.4:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
-  integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
-
 is-ci@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
@@ -3198,13 +3105,6 @@ is-stream@^2.0.0:
   resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
   integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
 
-is-symbol@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
-  integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
-  dependencies:
-    has-symbols "^1.0.0"
-
 is-typedarray@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -3292,7 +3192,7 @@ js-string-escape@^1.0.1:
   resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
   integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
 
-js-yaml@3.13.1, js-yaml@^3.10.0, js-yaml@^3.13.1:
+js-yaml@^3.10.0, js-yaml@^3.13.1:
   version "3.13.1"
   resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
   integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
@@ -3481,7 +3381,7 @@ lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.3.
   resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
   integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==
 
-log-symbols@2.2.0, log-symbols@^2.2.0:
+log-symbols@^2.2.0:
   version "2.2.0"
   resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a"
   integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==
@@ -3706,7 +3606,7 @@ mimic-response@^1.0.0, mimic-response@^1.0.1:
   resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
   integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
 
-minimatch@3.0.4, minimatch@^3.0.2, minimatch@^3.0.4:
+minimatch@^3.0.2, minimatch@^3.0.4:
   version "3.0.4"
   resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
   integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
@@ -3754,52 +3654,18 @@ mixin-deep@^1.2.0:
     for-in "^1.0.2"
     is-extendable "^1.0.1"
 
-mkdirp@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1:
+mkdirp@^0.5.0, mkdirp@^0.5.1:
   version "0.5.1"
   resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
   integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
   dependencies:
     minimist "0.0.8"
 
-mocha@^6.2.2:
-  version "6.2.2"
-  resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.2.2.tgz#5d8987e28940caf8957a7d7664b910dc5b2fea20"
-  integrity sha512-FgDS9Re79yU1xz5d+C4rv1G7QagNGHZ+iXF81hO8zY35YZZcLEsJVfFolfsqKFWunATEvNzMK0r/CwWd/szO9A==
-  dependencies:
-    ansi-colors "3.2.3"
-    browser-stdout "1.3.1"
-    debug "3.2.6"
-    diff "3.5.0"
-    escape-string-regexp "1.0.5"
-    find-up "3.0.0"
-    glob "7.1.3"
-    growl "1.10.5"
-    he "1.2.0"
-    js-yaml "3.13.1"
-    log-symbols "2.2.0"
-    minimatch "3.0.4"
-    mkdirp "0.5.1"
-    ms "2.1.1"
-    node-environment-flags "1.0.5"
-    object.assign "4.1.0"
-    strip-json-comments "2.0.1"
-    supports-color "6.0.0"
-    which "1.3.1"
-    wide-align "1.1.3"
-    yargs "13.3.0"
-    yargs-parser "13.1.1"
-    yargs-unparser "1.6.0"
-
 ms@2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
   integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
 
-ms@2.1.1:
-  version "2.1.1"
-  resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
-  integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
-
 ms@^2.1.1, ms@^2.1.2:
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
@@ -3856,14 +3722,6 @@ nice-try@^1.0.4:
   resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
   integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
 
-node-environment-flags@1.0.5:
-  version "1.0.5"
-  resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.5.tgz#fa930275f5bf5dae188d6192b24b4c8bbac3d76a"
-  integrity sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==
-  dependencies:
-    object.getownpropertydescriptors "^2.0.3"
-    semver "^5.7.0"
-
 node-pre-gyp@^0.12.0:
   version "0.12.0"
   resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz#39ba4bb1439da030295f899e3b520b7785766149"
@@ -3976,11 +3834,6 @@ object-copy@^0.1.0:
     define-property "^0.2.5"
     kind-of "^3.0.3"
 
-object-inspect@^1.6.0:
-  version "1.6.0"
-  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b"
-  integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==
-
 object-is@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6"
@@ -3998,7 +3851,7 @@ object-visit@^1.0.0:
   dependencies:
     isobject "^3.0.0"
 
-object.assign@4.1.0, object.assign@^4.1.0:
+object.assign@^4.1.0:
   version "4.1.0"
   resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
   integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
@@ -4008,14 +3861,6 @@ object.assign@4.1.0, object.assign@^4.1.0:
     has-symbols "^1.0.0"
     object-keys "^1.0.11"
 
-object.getownpropertydescriptors@^2.0.3:
-  version "2.0.3"
-  resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
-  integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=
-  dependencies:
-    define-properties "^1.1.2"
-    es-abstract "^1.5.1"
-
 object.omit@^2.0.0:
   version "2.0.1"
   resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
@@ -4737,11 +4582,6 @@ require-main-filename@^1.0.1:
   resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1"
   integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=
 
-require-main-filename@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
-  integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
-
 require-precompiled@^0.1.0:
   version "0.1.0"
   resolved "https://registry.yarnpkg.com/require-precompiled/-/require-precompiled-0.1.0.tgz#5a1b52eb70ebed43eb982e974c85ab59571e56fa"
@@ -4895,7 +4735,7 @@ semver-diff@^2.0.0:
   dependencies:
     semver "^5.0.3"
 
-"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.7.0:
+"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1:
   version "5.7.1"
   resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
   integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
@@ -5103,7 +4943,7 @@ string-width@^1.0.1:
     is-fullwidth-code-point "^2.0.0"
     strip-ansi "^4.0.0"
 
-string-width@^3.0.0, string-width@^3.1.0:
+string-width@^3.0.0:
   version "3.1.0"
   resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961"
   integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==
@@ -5121,22 +4961,6 @@ string-width@^4.1.0:
     is-fullwidth-code-point "^3.0.0"
     strip-ansi "^5.2.0"
 
-string.prototype.trimleft@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
-  integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==
-  dependencies:
-    define-properties "^1.1.3"
-    function-bind "^1.1.1"
-
-string.prototype.trimright@^2.1.0:
-  version "2.1.0"
-  resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58"
-  integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==
-  dependencies:
-    define-properties "^1.1.3"
-    function-bind "^1.1.1"
-
 string_decoder@~1.1.1:
   version "1.1.1"
   resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
@@ -5197,16 +5021,16 @@ strip-indent@^2.0.0:
   resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68"
   integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=
 
-strip-json-comments@2.0.1, strip-json-comments@~2.0.1:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
-  integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
-
 strip-json-comments@^3.0.1:
   version "3.0.1"
   resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7"
   integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==
 
+strip-json-comments@~2.0.1:
+  version "2.0.1"
+  resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
+  integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
+
 subarg@^1.0.0:
   version "1.0.0"
   resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2"
@@ -5225,13 +5049,6 @@ supertap@^1.0.0:
     serialize-error "^2.1.0"
     strip-ansi "^4.0.0"
 
-supports-color@6.0.0:
-  version "6.0.0"
-  resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a"
-  integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==
-  dependencies:
-    has-flag "^3.0.0"
-
 supports-color@^5.3.0:
   version "5.5.0"
   resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
@@ -5643,14 +5460,14 @@ which-module@^2.0.0:
   resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
   integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
 
-which@1.3.1, which@^1.2.9:
+which@^1.2.9:
   version "1.3.1"
   resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
   integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
   dependencies:
     isexe "^2.0.0"
 
-wide-align@1.1.3, wide-align@^1.1.0:
+wide-align@^1.1.0:
   version "1.1.3"
   resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
   integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
@@ -5677,15 +5494,6 @@ wrap-ansi@^2.0.0:
     string-width "^1.0.1"
     strip-ansi "^3.0.1"
 
-wrap-ansi@^5.1.0:
-  version "5.1.0"
-  resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
-  integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==
-  dependencies:
-    ansi-styles "^3.2.0"
-    string-width "^3.0.0"
-    strip-ansi "^5.0.0"
-
 wrappy@1:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
@@ -5737,11 +5545,6 @@ y18n@^3.2.1:
   resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41"
   integrity sha1-bRX7qITAhnnA136I53WegR4H+kE=
 
-y18n@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b"
-  integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==
-
 yallist@^2.1.2:
   version "2.1.2"
   resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
@@ -5752,14 +5555,6 @@ yallist@^3.0.0, yallist@^3.0.3:
   resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
   integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
 
-yargs-parser@13.1.1, yargs-parser@^13.1.1:
-  version "13.1.1"
-  resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0"
-  integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==
-  dependencies:
-    camelcase "^5.0.0"
-    decamelize "^1.2.0"
-
 yargs-parser@^10.0.0:
   version "10.1.0"
   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8"
@@ -5774,31 +5569,6 @@ yargs-parser@^7.0.0:
   dependencies:
     camelcase "^4.1.0"
 
-yargs-unparser@1.6.0:
-  version "1.6.0"
-  resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f"
-  integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==
-  dependencies:
-    flat "^4.1.0"
-    lodash "^4.17.15"
-    yargs "^13.3.0"
-
-yargs@13.3.0, yargs@^13.3.0:
-  version "13.3.0"
-  resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83"
-  integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==
-  dependencies:
-    cliui "^5.0.0"
-    find-up "^3.0.0"
-    get-caller-file "^2.0.1"
-    require-directory "^2.1.1"
-    require-main-filename "^2.0.0"
-    set-blocking "^2.0.0"
-    string-width "^3.0.0"
-    which-module "^2.0.0"
-    y18n "^4.0.0"
-    yargs-parser "^13.1.1"
-
 yargs@^8.0.2:
   version "8.0.2"
   resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360"


Test patch:
diff --git a/__tests__/.eslintrc.js b/__tests__/.eslintrc.js
index dde9f262..0dea86ff 100644
--- a/__tests__/.eslintrc.js
+++ b/__tests__/.eslintrc.js
@@ -1,10 +1,12 @@
-'use strict';
+/* eslint-env commonjs */
+/*eslint quote-props: [2, "always"] */
+
+'use strict'; // eslint-disable-line strict
 
 // ESLint Configuration Files enables to include comments.
 // http://eslint.org/docs/configuring/#comments-in-configuration-files
 module.exports = {
-    'env': {
-        'node': true,
-        'mocha': true
-    }
+    'parserOptions': {
+        'sourceType': 'module',
+    },
 };
diff --git a/ava_test/ClassOption/and.test.js b/__tests__/ClassOption/and.test.js
similarity index 100%
rename from ava_test/ClassOption/and.test.js
rename to __tests__/ClassOption/and.test.js
diff --git a/ava_test/ClassOption/create.test.js b/__tests__/ClassOption/create.test.js
similarity index 100%
rename from ava_test/ClassOption/create.test.js
rename to __tests__/ClassOption/create.test.js
diff --git a/ava_test/ClassOption/drop.test.js b/__tests__/ClassOption/drop.test.js
similarity index 100%
rename from ava_test/ClassOption/drop.test.js
rename to __tests__/ClassOption/drop.test.js
diff --git a/ava_test/ClassOption/drop_with_destructor.test.js b/__tests__/ClassOption/drop_with_destructor.test.js
similarity index 100%
rename from ava_test/ClassOption/drop_with_destructor.test.js
rename to __tests__/ClassOption/drop_with_destructor.test.js
diff --git a/ava_test/ClassOption/expect.test.js b/__tests__/ClassOption/expect.test.js
similarity index 100%
rename from ava_test/ClassOption/expect.test.js
rename to __tests__/ClassOption/expect.test.js
diff --git a/ava_test/ClassOption/flatmap.test.js b/__tests__/ClassOption/flatmap.test.js
similarity index 100%
rename from ava_test/ClassOption/flatmap.test.js
rename to __tests__/ClassOption/flatmap.test.js
diff --git a/ava_test/ClassOption/inheritance.test.js b/__tests__/ClassOption/inheritance.test.js
similarity index 100%
rename from ava_test/ClassOption/inheritance.test.js
rename to __tests__/ClassOption/inheritance.test.js
diff --git a/ava_test/ClassOption/initialize.test.js b/__tests__/ClassOption/initialize.test.js
similarity index 100%
rename from ava_test/ClassOption/initialize.test.js
rename to __tests__/ClassOption/initialize.test.js
diff --git a/ava_test/ClassOption/json.test.js b/__tests__/ClassOption/json.test.js
similarity index 100%
rename from ava_test/ClassOption/json.test.js
rename to __tests__/ClassOption/json.test.js
diff --git a/ava_test/ClassOption/map.test.js b/__tests__/ClassOption/map.test.js
similarity index 100%
rename from ava_test/ClassOption/map.test.js
rename to __tests__/ClassOption/map.test.js
diff --git a/ava_test/ClassOption/map_or.test.js b/__tests__/ClassOption/map_or.test.js
similarity index 100%
rename from ava_test/ClassOption/map_or.test.js
rename to __tests__/ClassOption/map_or.test.js
diff --git a/ava_test/ClassOption/map_or_else.test.js b/__tests__/ClassOption/map_or_else.test.js
similarity index 100%
rename from ava_test/ClassOption/map_or_else.test.js
rename to __tests__/ClassOption/map_or_else.test.js
diff --git a/ava_test/ClassOption/or.test.js b/__tests__/ClassOption/or.test.js
similarity index 100%
rename from ava_test/ClassOption/or.test.js
rename to __tests__/ClassOption/or.test.js
diff --git a/ava_test/ClassOption/or_else.test.js b/__tests__/ClassOption/or_else.test.js
similarity index 100%
rename from ava_test/ClassOption/or_else.test.js
rename to __tests__/ClassOption/or_else.test.js
diff --git a/__tests__/Option/type_definition.test.ts b/__tests__/ClassOption/type_definition.test.ts
similarity index 100%
rename from __tests__/Option/type_definition.test.ts
rename to __tests__/ClassOption/type_definition.test.ts
diff --git a/ava_test/ClassOption/unwrap.test.js b/__tests__/ClassOption/unwrap.test.js
similarity index 100%
rename from ava_test/ClassOption/unwrap.test.js
rename to __tests__/ClassOption/unwrap.test.js
diff --git a/ava_test/ClassOption/unwrap_or.test.js b/__tests__/ClassOption/unwrap_or.test.js
similarity index 100%
rename from ava_test/ClassOption/unwrap_or.test.js
rename to __tests__/ClassOption/unwrap_or.test.js
diff --git a/ava_test/ClassOption/unwrap_or_else.test.js b/__tests__/ClassOption/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/ClassOption/unwrap_or_else.test.js
rename to __tests__/ClassOption/unwrap_or_else.test.js
diff --git a/ava_test/ClassResult/and.test.js b/__tests__/ClassResult/and.test.js
similarity index 100%
rename from ava_test/ClassResult/and.test.js
rename to __tests__/ClassResult/and.test.js
diff --git a/ava_test/ClassResult/and_then.test.js b/__tests__/ClassResult/and_then.test.js
similarity index 100%
rename from ava_test/ClassResult/and_then.test.js
rename to __tests__/ClassResult/and_then.test.js
diff --git a/ava_test/ClassResult/drop.test.js b/__tests__/ClassResult/drop.test.js
similarity index 100%
rename from ava_test/ClassResult/drop.test.js
rename to __tests__/ClassResult/drop.test.js
diff --git a/ava_test/ClassResult/drop_with_destructor.test.js b/__tests__/ClassResult/drop_with_destructor.test.js
similarity index 100%
rename from ava_test/ClassResult/drop_with_destructor.test.js
rename to __tests__/ClassResult/drop_with_destructor.test.js
diff --git a/ava_test/ClassResult/err.test.js b/__tests__/ClassResult/err.test.js
similarity index 100%
rename from ava_test/ClassResult/err.test.js
rename to __tests__/ClassResult/err.test.js
diff --git a/ava_test/ClassResult/expect.test.js b/__tests__/ClassResult/expect.test.js
similarity index 100%
rename from ava_test/ClassResult/expect.test.js
rename to __tests__/ClassResult/expect.test.js
diff --git a/ava_test/ClassResult/inheritance.test.js b/__tests__/ClassResult/inheritance.test.js
similarity index 100%
rename from ava_test/ClassResult/inheritance.test.js
rename to __tests__/ClassResult/inheritance.test.js
diff --git a/ava_test/ClassResult/initialize.test.js b/__tests__/ClassResult/initialize.test.js
similarity index 100%
rename from ava_test/ClassResult/initialize.test.js
rename to __tests__/ClassResult/initialize.test.js
diff --git a/ava_test/ClassResult/map.test.js b/__tests__/ClassResult/map.test.js
similarity index 100%
rename from ava_test/ClassResult/map.test.js
rename to __tests__/ClassResult/map.test.js
diff --git a/ava_test/ClassResult/map_err.test.js b/__tests__/ClassResult/map_err.test.js
similarity index 100%
rename from ava_test/ClassResult/map_err.test.js
rename to __tests__/ClassResult/map_err.test.js
diff --git a/ava_test/ClassResult/map_or_else.test.js b/__tests__/ClassResult/map_or_else.test.js
similarity index 100%
rename from ava_test/ClassResult/map_or_else.test.js
rename to __tests__/ClassResult/map_or_else.test.js
diff --git a/ava_test/ClassResult/ok.test.js b/__tests__/ClassResult/ok.test.js
similarity index 100%
rename from ava_test/ClassResult/ok.test.js
rename to __tests__/ClassResult/ok.test.js
diff --git a/ava_test/ClassResult/or.test.js b/__tests__/ClassResult/or.test.js
similarity index 100%
rename from ava_test/ClassResult/or.test.js
rename to __tests__/ClassResult/or.test.js
diff --git a/ava_test/ClassResult/or_else.test.js b/__tests__/ClassResult/or_else.test.js
similarity index 100%
rename from ava_test/ClassResult/or_else.test.js
rename to __tests__/ClassResult/or_else.test.js
diff --git a/__tests__/Result/type_definition_es6.test.ts b/__tests__/ClassResult/type_definition_es6.test.ts
similarity index 100%
rename from __tests__/Result/type_definition_es6.test.ts
rename to __tests__/ClassResult/type_definition_es6.test.ts
diff --git a/ava_test/ClassResult/unwrap.test.js b/__tests__/ClassResult/unwrap.test.js
similarity index 100%
rename from ava_test/ClassResult/unwrap.test.js
rename to __tests__/ClassResult/unwrap.test.js
diff --git a/ava_test/ClassResult/unwrap_err.test.js b/__tests__/ClassResult/unwrap_err.test.js
similarity index 100%
rename from ava_test/ClassResult/unwrap_err.test.js
rename to __tests__/ClassResult/unwrap_err.test.js
diff --git a/ava_test/ClassResult/unwrap_or.test.js b/__tests__/ClassResult/unwrap_or.test.js
similarity index 100%
rename from ava_test/ClassResult/unwrap_or.test.js
rename to __tests__/ClassResult/unwrap_or.test.js
diff --git a/ava_test/ClassResult/unwrap_or_else.test.js b/__tests__/ClassResult/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/ClassResult/unwrap_or_else.test.js
rename to __tests__/ClassResult/unwrap_or_else.test.js
diff --git a/ava_test/Maybe/and.test.js b/__tests__/Maybe/and.test.js
similarity index 100%
rename from ava_test/Maybe/and.test.js
rename to __tests__/Maybe/and.test.js
diff --git a/ava_test/Maybe/and_then.test.js b/__tests__/Maybe/and_then.test.js
similarity index 100%
rename from ava_test/Maybe/and_then.test.js
rename to __tests__/Maybe/and_then.test.js
diff --git a/ava_test/Maybe/expect.test.js b/__tests__/Maybe/expect.test.js
similarity index 100%
rename from ava_test/Maybe/expect.test.js
rename to __tests__/Maybe/expect.test.js
diff --git a/ava_test/Maybe/map.test.js b/__tests__/Maybe/map.test.js
similarity index 100%
rename from ava_test/Maybe/map.test.js
rename to __tests__/Maybe/map.test.js
diff --git a/ava_test/Maybe/map_or.test.js b/__tests__/Maybe/map_or.test.js
similarity index 100%
rename from ava_test/Maybe/map_or.test.js
rename to __tests__/Maybe/map_or.test.js
diff --git a/ava_test/Maybe/map_or_else.test.js b/__tests__/Maybe/map_or_else.test.js
similarity index 100%
rename from ava_test/Maybe/map_or_else.test.js
rename to __tests__/Maybe/map_or_else.test.js
diff --git a/ava_test/Maybe/or.test.js b/__tests__/Maybe/or.test.js
similarity index 100%
rename from ava_test/Maybe/or.test.js
rename to __tests__/Maybe/or.test.js
diff --git a/ava_test/Maybe/or_else.test.js b/__tests__/Maybe/or_else.test.js
similarity index 100%
rename from ava_test/Maybe/or_else.test.js
rename to __tests__/Maybe/or_else.test.js
diff --git a/ava_test/Maybe/tap.test.js b/__tests__/Maybe/tap.test.js
similarity index 100%
rename from ava_test/Maybe/tap.test.js
rename to __tests__/Maybe/tap.test.js
diff --git a/ava_test/Maybe/type_guard.test.js b/__tests__/Maybe/type_guard.test.js
similarity index 100%
rename from ava_test/Maybe/type_guard.test.js
rename to __tests__/Maybe/type_guard.test.js
diff --git a/ava_test/Maybe/unwrap.test.js b/__tests__/Maybe/unwrap.test.js
similarity index 100%
rename from ava_test/Maybe/unwrap.test.js
rename to __tests__/Maybe/unwrap.test.js
diff --git a/ava_test/Maybe/unwrap_or.test.js b/__tests__/Maybe/unwrap_or.test.js
similarity index 100%
rename from ava_test/Maybe/unwrap_or.test.js
rename to __tests__/Maybe/unwrap_or.test.js
diff --git a/ava_test/Maybe/unwrap_or_else.test.js b/__tests__/Maybe/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/Maybe/unwrap_or_else.test.js
rename to __tests__/Maybe/unwrap_or_else.test.js
diff --git a/ava_test/Maybe/xor.test.js b/__tests__/Maybe/xor.test.js
similarity index 100%
rename from ava_test/Maybe/xor.test.js
rename to __tests__/Maybe/xor.test.js
diff --git a/ava_test/Nullable/and.test.js b/__tests__/Nullable/and.test.js
similarity index 100%
rename from ava_test/Nullable/and.test.js
rename to __tests__/Nullable/and.test.js
diff --git a/ava_test/Nullable/and_then.test.js b/__tests__/Nullable/and_then.test.js
similarity index 100%
rename from ava_test/Nullable/and_then.test.js
rename to __tests__/Nullable/and_then.test.js
diff --git a/ava_test/Nullable/expect.test.js b/__tests__/Nullable/expect.test.js
similarity index 100%
rename from ava_test/Nullable/expect.test.js
rename to __tests__/Nullable/expect.test.js
diff --git a/ava_test/Nullable/map.test.js b/__tests__/Nullable/map.test.js
similarity index 100%
rename from ava_test/Nullable/map.test.js
rename to __tests__/Nullable/map.test.js
diff --git a/ava_test/Nullable/map_or.test.js b/__tests__/Nullable/map_or.test.js
similarity index 100%
rename from ava_test/Nullable/map_or.test.js
rename to __tests__/Nullable/map_or.test.js
diff --git a/ava_test/Nullable/map_or_else.test.js b/__tests__/Nullable/map_or_else.test.js
similarity index 100%
rename from ava_test/Nullable/map_or_else.test.js
rename to __tests__/Nullable/map_or_else.test.js
diff --git a/ava_test/Nullable/or.test.js b/__tests__/Nullable/or.test.js
similarity index 100%
rename from ava_test/Nullable/or.test.js
rename to __tests__/Nullable/or.test.js
diff --git a/ava_test/Nullable/or_else.test.js b/__tests__/Nullable/or_else.test.js
similarity index 100%
rename from ava_test/Nullable/or_else.test.js
rename to __tests__/Nullable/or_else.test.js
diff --git a/ava_test/Nullable/tap.test.js b/__tests__/Nullable/tap.test.js
similarity index 100%
rename from ava_test/Nullable/tap.test.js
rename to __tests__/Nullable/tap.test.js
diff --git a/ava_test/Nullable/type_guard.test.js b/__tests__/Nullable/type_guard.test.js
similarity index 100%
rename from ava_test/Nullable/type_guard.test.js
rename to __tests__/Nullable/type_guard.test.js
diff --git a/ava_test/Nullable/unwrap.test.js b/__tests__/Nullable/unwrap.test.js
similarity index 100%
rename from ava_test/Nullable/unwrap.test.js
rename to __tests__/Nullable/unwrap.test.js
diff --git a/ava_test/Nullable/unwrap_or.test.js b/__tests__/Nullable/unwrap_or.test.js
similarity index 100%
rename from ava_test/Nullable/unwrap_or.test.js
rename to __tests__/Nullable/unwrap_or.test.js
diff --git a/ava_test/Nullable/unwrap_or_else.test.js b/__tests__/Nullable/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/Nullable/unwrap_or_else.test.js
rename to __tests__/Nullable/unwrap_or_else.test.js
diff --git a/ava_test/Nullable/xor.test.js b/__tests__/Nullable/xor.test.js
similarity index 100%
rename from ava_test/Nullable/xor.test.js
rename to __tests__/Nullable/xor.test.js
diff --git a/ava_test/PlainOption/and.test.js b/__tests__/PlainOption/and.test.js
similarity index 100%
rename from ava_test/PlainOption/and.test.js
rename to __tests__/PlainOption/and.test.js
diff --git a/ava_test/PlainOption/and_then.test.js b/__tests__/PlainOption/and_then.test.js
similarity index 100%
rename from ava_test/PlainOption/and_then.test.js
rename to __tests__/PlainOption/and_then.test.js
diff --git a/ava_test/PlainOption/as_mut.test.js b/__tests__/PlainOption/as_mut.test.js
similarity index 100%
rename from ava_test/PlainOption/as_mut.test.js
rename to __tests__/PlainOption/as_mut.test.js
diff --git a/ava_test/PlainOption/create.test.js b/__tests__/PlainOption/create.test.js
similarity index 100%
rename from ava_test/PlainOption/create.test.js
rename to __tests__/PlainOption/create.test.js
diff --git a/ava_test/PlainOption/drop.test.js b/__tests__/PlainOption/drop.test.js
similarity index 100%
rename from ava_test/PlainOption/drop.test.js
rename to __tests__/PlainOption/drop.test.js
diff --git a/ava_test/PlainOption/expect.test.js b/__tests__/PlainOption/expect.test.js
similarity index 100%
rename from ava_test/PlainOption/expect.test.js
rename to __tests__/PlainOption/expect.test.js
diff --git a/ava_test/PlainOption/filter.test.js b/__tests__/PlainOption/filter.test.js
similarity index 100%
rename from ava_test/PlainOption/filter.test.js
rename to __tests__/PlainOption/filter.test.js
diff --git a/ava_test/PlainOption/flatten.test.js b/__tests__/PlainOption/flatten.test.js
similarity index 100%
rename from ava_test/PlainOption/flatten.test.js
rename to __tests__/PlainOption/flatten.test.js
diff --git a/ava_test/PlainOption/map.test.js b/__tests__/PlainOption/map.test.js
similarity index 100%
rename from ava_test/PlainOption/map.test.js
rename to __tests__/PlainOption/map.test.js
diff --git a/ava_test/PlainOption/map_or.test.js b/__tests__/PlainOption/map_or.test.js
similarity index 100%
rename from ava_test/PlainOption/map_or.test.js
rename to __tests__/PlainOption/map_or.test.js
diff --git a/ava_test/PlainOption/map_or_else.test.js b/__tests__/PlainOption/map_or_else.test.js
similarity index 100%
rename from ava_test/PlainOption/map_or_else.test.js
rename to __tests__/PlainOption/map_or_else.test.js
diff --git a/ava_test/PlainOption/object_shape.test.js b/__tests__/PlainOption/object_shape.test.js
similarity index 100%
rename from ava_test/PlainOption/object_shape.test.js
rename to __tests__/PlainOption/object_shape.test.js
diff --git a/ava_test/PlainOption/ok_or.test.js b/__tests__/PlainOption/ok_or.test.js
similarity index 100%
rename from ava_test/PlainOption/ok_or.test.js
rename to __tests__/PlainOption/ok_or.test.js
diff --git a/ava_test/PlainOption/ok_or_else.test.js b/__tests__/PlainOption/ok_or_else.test.js
similarity index 100%
rename from ava_test/PlainOption/ok_or_else.test.js
rename to __tests__/PlainOption/ok_or_else.test.js
diff --git a/ava_test/PlainOption/or.test.js b/__tests__/PlainOption/or.test.js
similarity index 100%
rename from ava_test/PlainOption/or.test.js
rename to __tests__/PlainOption/or.test.js
diff --git a/ava_test/PlainOption/or_else.test.js b/__tests__/PlainOption/or_else.test.js
similarity index 100%
rename from ava_test/PlainOption/or_else.test.js
rename to __tests__/PlainOption/or_else.test.js
diff --git a/ava_test/PlainOption/tap.test.js b/__tests__/PlainOption/tap.test.js
similarity index 100%
rename from ava_test/PlainOption/tap.test.js
rename to __tests__/PlainOption/tap.test.js
diff --git a/ava_test/PlainOption/transpose.test.js b/__tests__/PlainOption/transpose.test.js
similarity index 100%
rename from ava_test/PlainOption/transpose.test.js
rename to __tests__/PlainOption/transpose.test.js
diff --git a/ava_test/PlainOption/type_guard/test_none.test.js b/__tests__/PlainOption/type_guard/test_none.test.js
similarity index 100%
rename from ava_test/PlainOption/type_guard/test_none.test.js
rename to __tests__/PlainOption/type_guard/test_none.test.js
diff --git a/ava_test/PlainOption/type_guard/test_some.test.js b/__tests__/PlainOption/type_guard/test_some.test.js
similarity index 100%
rename from ava_test/PlainOption/type_guard/test_some.test.js
rename to __tests__/PlainOption/type_guard/test_some.test.js
diff --git a/ava_test/PlainOption/unwrap.test.js b/__tests__/PlainOption/unwrap.test.js
similarity index 100%
rename from ava_test/PlainOption/unwrap.test.js
rename to __tests__/PlainOption/unwrap.test.js
diff --git a/ava_test/PlainOption/unwrap_or.test.js b/__tests__/PlainOption/unwrap_or.test.js
similarity index 100%
rename from ava_test/PlainOption/unwrap_or.test.js
rename to __tests__/PlainOption/unwrap_or.test.js
diff --git a/ava_test/PlainOption/unwrap_or_else.test.js b/__tests__/PlainOption/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/PlainOption/unwrap_or_else.test.js
rename to __tests__/PlainOption/unwrap_or_else.test.js
diff --git a/ava_test/PlainOption/xor.test.js b/__tests__/PlainOption/xor.test.js
similarity index 100%
rename from ava_test/PlainOption/xor.test.js
rename to __tests__/PlainOption/xor.test.js
diff --git a/ava_test/PlainResult/and.test.js b/__tests__/PlainResult/and.test.js
similarity index 100%
rename from ava_test/PlainResult/and.test.js
rename to __tests__/PlainResult/and.test.js
diff --git a/ava_test/PlainResult/and_then.test.js b/__tests__/PlainResult/and_then.test.js
similarity index 100%
rename from ava_test/PlainResult/and_then.test.js
rename to __tests__/PlainResult/and_then.test.js
diff --git a/ava_test/PlainResult/as_mut.test.js b/__tests__/PlainResult/as_mut.test.js
similarity index 100%
rename from ava_test/PlainResult/as_mut.test.js
rename to __tests__/PlainResult/as_mut.test.js
diff --git a/ava_test/PlainResult/create.test.js b/__tests__/PlainResult/create.test.js
similarity index 100%
rename from ava_test/PlainResult/create.test.js
rename to __tests__/PlainResult/create.test.js
diff --git a/ava_test/PlainResult/drop/test_drop_both.test.js b/__tests__/PlainResult/drop/test_drop_both.test.js
similarity index 100%
rename from ava_test/PlainResult/drop/test_drop_both.test.js
rename to __tests__/PlainResult/drop/test_drop_both.test.js
diff --git a/ava_test/PlainResult/drop/test_drop_err.test.js b/__tests__/PlainResult/drop/test_drop_err.test.js
similarity index 100%
rename from ava_test/PlainResult/drop/test_drop_err.test.js
rename to __tests__/PlainResult/drop/test_drop_err.test.js
diff --git a/ava_test/PlainResult/drop/test_drop_ok.test.js b/__tests__/PlainResult/drop/test_drop_ok.test.js
similarity index 100%
rename from ava_test/PlainResult/drop/test_drop_ok.test.js
rename to __tests__/PlainResult/drop/test_drop_ok.test.js
diff --git a/ava_test/PlainResult/expect/test_expect_err.test.js b/__tests__/PlainResult/expect/test_expect_err.test.js
similarity index 100%
rename from ava_test/PlainResult/expect/test_expect_err.test.js
rename to __tests__/PlainResult/expect/test_expect_err.test.js
diff --git a/ava_test/PlainResult/expect/test_expect_ok.test.js b/__tests__/PlainResult/expect/test_expect_ok.test.js
similarity index 100%
rename from ava_test/PlainResult/expect/test_expect_ok.test.js
rename to __tests__/PlainResult/expect/test_expect_ok.test.js
diff --git a/ava_test/PlainResult/map.test.js b/__tests__/PlainResult/map.test.js
similarity index 100%
rename from ava_test/PlainResult/map.test.js
rename to __tests__/PlainResult/map.test.js
diff --git a/ava_test/PlainResult/map_err.test.js b/__tests__/PlainResult/map_err.test.js
similarity index 100%
rename from ava_test/PlainResult/map_err.test.js
rename to __tests__/PlainResult/map_err.test.js
diff --git a/ava_test/PlainResult/map_or_else.test.js b/__tests__/PlainResult/map_or_else.test.js
similarity index 100%
rename from ava_test/PlainResult/map_or_else.test.js
rename to __tests__/PlainResult/map_or_else.test.js
diff --git a/ava_test/PlainResult/object_shape.test.js b/__tests__/PlainResult/object_shape.test.js
similarity index 100%
rename from ava_test/PlainResult/object_shape.test.js
rename to __tests__/PlainResult/object_shape.test.js
diff --git a/ava_test/PlainResult/or.test.js b/__tests__/PlainResult/or.test.js
similarity index 100%
rename from ava_test/PlainResult/or.test.js
rename to __tests__/PlainResult/or.test.js
diff --git a/ava_test/PlainResult/or_else.test.js b/__tests__/PlainResult/or_else.test.js
similarity index 100%
rename from ava_test/PlainResult/or_else.test.js
rename to __tests__/PlainResult/or_else.test.js
diff --git a/ava_test/PlainResult/tap/test_tap_both.test.js b/__tests__/PlainResult/tap/test_tap_both.test.js
similarity index 100%
rename from ava_test/PlainResult/tap/test_tap_both.test.js
rename to __tests__/PlainResult/tap/test_tap_both.test.js
diff --git a/ava_test/PlainResult/tap/test_tap_err.test.js b/__tests__/PlainResult/tap/test_tap_err.test.js
similarity index 100%
rename from ava_test/PlainResult/tap/test_tap_err.test.js
rename to __tests__/PlainResult/tap/test_tap_err.test.js
diff --git a/ava_test/PlainResult/tap/test_tap_ok.test.js b/__tests__/PlainResult/tap/test_tap_ok.test.js
similarity index 100%
rename from ava_test/PlainResult/tap/test_tap_ok.test.js
rename to __tests__/PlainResult/tap/test_tap_ok.test.js
diff --git a/ava_test/PlainResult/to_option.test.js b/__tests__/PlainResult/to_option.test.js
similarity index 100%
rename from ava_test/PlainResult/to_option.test.js
rename to __tests__/PlainResult/to_option.test.js
diff --git a/ava_test/PlainResult/transpose.test.js b/__tests__/PlainResult/transpose.test.js
similarity index 100%
rename from ava_test/PlainResult/transpose.test.js
rename to __tests__/PlainResult/transpose.test.js
diff --git a/ava_test/PlainResult/type_compat_with_plain_option.test.js b/__tests__/PlainResult/type_compat_with_plain_option.test.js
similarity index 100%
rename from ava_test/PlainResult/type_compat_with_plain_option.test.js
rename to __tests__/PlainResult/type_compat_with_plain_option.test.js
diff --git a/ava_test/PlainResult/type_guard/test_err.test.js b/__tests__/PlainResult/type_guard/test_err.test.js
similarity index 100%
rename from ava_test/PlainResult/type_guard/test_err.test.js
rename to __tests__/PlainResult/type_guard/test_err.test.js
diff --git a/ava_test/PlainResult/type_guard/test_ok.test.js b/__tests__/PlainResult/type_guard/test_ok.test.js
similarity index 100%
rename from ava_test/PlainResult/type_guard/test_ok.test.js
rename to __tests__/PlainResult/type_guard/test_ok.test.js
diff --git a/ava_test/PlainResult/unwrap.test.js b/__tests__/PlainResult/unwrap.test.js
similarity index 100%
rename from ava_test/PlainResult/unwrap.test.js
rename to __tests__/PlainResult/unwrap.test.js
diff --git a/ava_test/PlainResult/unwrap_or.test.js b/__tests__/PlainResult/unwrap_or.test.js
similarity index 100%
rename from ava_test/PlainResult/unwrap_or.test.js
rename to __tests__/PlainResult/unwrap_or.test.js
diff --git a/ava_test/PlainResult/unwrap_or_else.test.js b/__tests__/PlainResult/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/PlainResult/unwrap_or_else.test.js
rename to __tests__/PlainResult/unwrap_or_else.test.js
diff --git a/ava_test/Undefinable/and.test.js b/__tests__/Undefinable/and.test.js
similarity index 100%
rename from ava_test/Undefinable/and.test.js
rename to __tests__/Undefinable/and.test.js
diff --git a/ava_test/Undefinable/and_then.test.js b/__tests__/Undefinable/and_then.test.js
similarity index 100%
rename from ava_test/Undefinable/and_then.test.js
rename to __tests__/Undefinable/and_then.test.js
diff --git a/ava_test/Undefinable/expect.test.js b/__tests__/Undefinable/expect.test.js
similarity index 100%
rename from ava_test/Undefinable/expect.test.js
rename to __tests__/Undefinable/expect.test.js
diff --git a/ava_test/Undefinable/map.test.js b/__tests__/Undefinable/map.test.js
similarity index 100%
rename from ava_test/Undefinable/map.test.js
rename to __tests__/Undefinable/map.test.js
diff --git a/ava_test/Undefinable/map_or.test.js b/__tests__/Undefinable/map_or.test.js
similarity index 100%
rename from ava_test/Undefinable/map_or.test.js
rename to __tests__/Undefinable/map_or.test.js
diff --git a/ava_test/Undefinable/map_or_else.test.js b/__tests__/Undefinable/map_or_else.test.js
similarity index 100%
rename from ava_test/Undefinable/map_or_else.test.js
rename to __tests__/Undefinable/map_or_else.test.js
diff --git a/ava_test/Undefinable/or.test.js b/__tests__/Undefinable/or.test.js
similarity index 100%
rename from ava_test/Undefinable/or.test.js
rename to __tests__/Undefinable/or.test.js
diff --git a/ava_test/Undefinable/or_else.test.js b/__tests__/Undefinable/or_else.test.js
similarity index 100%
rename from ava_test/Undefinable/or_else.test.js
rename to __tests__/Undefinable/or_else.test.js
diff --git a/ava_test/Undefinable/tap.test.js b/__tests__/Undefinable/tap.test.js
similarity index 100%
rename from ava_test/Undefinable/tap.test.js
rename to __tests__/Undefinable/tap.test.js
diff --git a/ava_test/Undefinable/type_guard/test_isNotUndefined.test.js b/__tests__/Undefinable/type_guard/test_isNotUndefined.test.js
similarity index 100%
rename from ava_test/Undefinable/type_guard/test_isNotUndefined.test.js
rename to __tests__/Undefinable/type_guard/test_isNotUndefined.test.js
diff --git a/ava_test/Undefinable/type_guard/test_isUndefined.test.js b/__tests__/Undefinable/type_guard/test_isUndefined.test.js
similarity index 100%
rename from ava_test/Undefinable/type_guard/test_isUndefined.test.js
rename to __tests__/Undefinable/type_guard/test_isUndefined.test.js
diff --git a/ava_test/Undefinable/unwrap.test.js b/__tests__/Undefinable/unwrap.test.js
similarity index 100%
rename from ava_test/Undefinable/unwrap.test.js
rename to __tests__/Undefinable/unwrap.test.js
diff --git a/ava_test/Undefinable/unwrap_or.test.js b/__tests__/Undefinable/unwrap_or.test.js
similarity index 100%
rename from ava_test/Undefinable/unwrap_or.test.js
rename to __tests__/Undefinable/unwrap_or.test.js
diff --git a/ava_test/Undefinable/unwrap_or_else.test.js b/__tests__/Undefinable/unwrap_or_else.test.js
similarity index 100%
rename from ava_test/Undefinable/unwrap_or_else.test.js
rename to __tests__/Undefinable/unwrap_or_else.test.js
diff --git a/ava_test/Undefinable/xor.test.js b/__tests__/Undefinable/xor.test.js
similarity index 100%
rename from ava_test/Undefinable/xor.test.js
rename to __tests__/Undefinable/xor.test.js
diff --git a/__tests__/example.test.js b/__tests__/example.test.js
deleted file mode 100644
index 51a77ce9..00000000
--- a/__tests__/example.test.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-describe('test', () => {
-    it('', () => {
-
-    });
-});
diff --git a/ava_test/utils.js b/__tests__/utils.js
similarity index 100%
rename from ava_test/utils.js
rename to __tests__/utils.js
diff --git a/ava_test/.eslintrc.js b/ava_test/.eslintrc.js
deleted file mode 100644
index 0dea86ff..00000000
--- a/ava_test/.eslintrc.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/* eslint-env commonjs */
-/*eslint quote-props: [2, "always"] */
-
-'use strict'; // eslint-disable-line strict
-
-// ESLint Configuration Files enables to include comments.
-// http://eslint.org/docs/configuring/#comments-in-configuration-files
-module.exports = {
-    'parserOptions': {
-        'sourceType': 'module',
-    },
-};