api_connect_nodejs 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2746) hide show
  1. package/README.md +32 -0
  2. package/conf/settings.ini +20 -0
  3. package/index.js +3 -0
  4. package/package.json +45 -0
  5. package/src/edelconnect.js +2128 -0
  6. package/src/iniparser.js +38 -0
  7. package/src/logger.js +14 -0
  8. package/test/EdelCsvTestSuite/CSVTestClass.js +345 -0
  9. package/test/EdelCsvTestSuite/CSVTestEdelweissAPIConnect.js +628 -0
  10. package/test/EdelCsvTestSuite/InputFile.csv +39 -0
  11. package/test/EdelCsvTestSuite/conf/settings.ini +20 -0
  12. package/test/EdelCsvTestSuite/config.js +34 -0
  13. package/test/EdelCsvTestSuite/logger.js +38 -0
  14. package/test/EdelCsvTestSuite/node_modules/.bin/_mocha +15 -0
  15. package/test/EdelCsvTestSuite/node_modules/.bin/_mocha.cmd +17 -0
  16. package/test/EdelCsvTestSuite/node_modules/.bin/_mocha.ps1 +18 -0
  17. package/test/EdelCsvTestSuite/node_modules/.bin/csv-parser +15 -0
  18. package/test/EdelCsvTestSuite/node_modules/.bin/csv-parser.cmd +17 -0
  19. package/test/EdelCsvTestSuite/node_modules/.bin/csv-parser.ps1 +18 -0
  20. package/test/EdelCsvTestSuite/node_modules/.bin/flat +15 -0
  21. package/test/EdelCsvTestSuite/node_modules/.bin/flat.cmd +17 -0
  22. package/test/EdelCsvTestSuite/node_modules/.bin/flat.ps1 +18 -0
  23. package/test/EdelCsvTestSuite/node_modules/.bin/he +15 -0
  24. package/test/EdelCsvTestSuite/node_modules/.bin/he.cmd +17 -0
  25. package/test/EdelCsvTestSuite/node_modules/.bin/he.ps1 +18 -0
  26. package/test/EdelCsvTestSuite/node_modules/.bin/js-yaml +15 -0
  27. package/test/EdelCsvTestSuite/node_modules/.bin/js-yaml.cmd +17 -0
  28. package/test/EdelCsvTestSuite/node_modules/.bin/js-yaml.ps1 +18 -0
  29. package/test/EdelCsvTestSuite/node_modules/.bin/mocha +15 -0
  30. package/test/EdelCsvTestSuite/node_modules/.bin/mocha.cmd +17 -0
  31. package/test/EdelCsvTestSuite/node_modules/.bin/mocha.ps1 +18 -0
  32. package/test/EdelCsvTestSuite/node_modules/.bin/nanoid +15 -0
  33. package/test/EdelCsvTestSuite/node_modules/.bin/nanoid.cmd +17 -0
  34. package/test/EdelCsvTestSuite/node_modules/.bin/nanoid.ps1 +18 -0
  35. package/test/EdelCsvTestSuite/node_modules/.bin/node-which +15 -0
  36. package/test/EdelCsvTestSuite/node_modules/.bin/node-which.cmd +17 -0
  37. package/test/EdelCsvTestSuite/node_modules/.bin/node-which.ps1 +18 -0
  38. package/test/EdelCsvTestSuite/node_modules/@colors/colors/LICENSE +26 -0
  39. package/test/EdelCsvTestSuite/node_modules/@colors/colors/README.md +219 -0
  40. package/test/EdelCsvTestSuite/node_modules/@colors/colors/examples/normal-usage.js +83 -0
  41. package/test/EdelCsvTestSuite/node_modules/@colors/colors/examples/safe-string.js +80 -0
  42. package/test/EdelCsvTestSuite/node_modules/@colors/colors/index.d.ts +136 -0
  43. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/colors.js +211 -0
  44. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/custom/trap.js +46 -0
  45. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/custom/zalgo.js +110 -0
  46. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/extendStringPrototype.js +110 -0
  47. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/index.js +13 -0
  48. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/maps/america.js +10 -0
  49. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/maps/rainbow.js +12 -0
  50. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/maps/random.js +11 -0
  51. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/maps/zebra.js +5 -0
  52. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/styles.js +95 -0
  53. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/system/has-flag.js +35 -0
  54. package/test/EdelCsvTestSuite/node_modules/@colors/colors/lib/system/supports-colors.js +151 -0
  55. package/test/EdelCsvTestSuite/node_modules/@colors/colors/package.json +75 -0
  56. package/test/EdelCsvTestSuite/node_modules/@colors/colors/safe.d.ts +48 -0
  57. package/test/EdelCsvTestSuite/node_modules/@colors/colors/safe.js +10 -0
  58. package/test/EdelCsvTestSuite/node_modules/@colors/colors/themes/generic-logging.js +12 -0
  59. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/CHANGELOG.md +26 -0
  60. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/LICENSE +20 -0
  61. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/README.md +473 -0
  62. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/adapters/hash.js +11 -0
  63. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/adapters/index.js +18 -0
  64. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/adapters/localstorage.js +11 -0
  65. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/adapters/process.env.js +11 -0
  66. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/browser/development.js +35 -0
  67. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/browser/index.js +8 -0
  68. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/browser/override.js +6 -0
  69. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/browser/production.js +24 -0
  70. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/diagnostics.js +212 -0
  71. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/example.png +0 -0
  72. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/logger/console.js +19 -0
  73. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/modifiers/namespace-ansi.js +20 -0
  74. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/modifiers/namespace.js +32 -0
  75. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/node/development.js +36 -0
  76. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/node/index.js +8 -0
  77. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/node/override.js +21 -0
  78. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/node/production.js +24 -0
  79. package/test/EdelCsvTestSuite/node_modules/@dabh/diagnostics/package.json +105 -0
  80. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/CHANGELOG.md +73 -0
  81. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/LICENSE +21 -0
  82. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/README.md +20 -0
  83. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/CsvFormatterStream.d.ts +13 -0
  84. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/CsvFormatterStream.js +63 -0
  85. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/CsvFormatterStream.js.map +1 -0
  86. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/FormatterOptions.d.ts +39 -0
  87. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/FormatterOptions.js +38 -0
  88. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/FormatterOptions.js.map +1 -0
  89. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/FieldFormatter.d.ts +13 -0
  90. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/FieldFormatter.js +58 -0
  91. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/FieldFormatter.js.map +1 -0
  92. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.d.ts +25 -0
  93. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.js +168 -0
  94. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/RowFormatter.js.map +1 -0
  95. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/index.d.ts +2 -0
  96. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/index.js +8 -0
  97. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/formatter/index.js.map +1 -0
  98. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/index.d.ts +14 -0
  99. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/index.js +68 -0
  100. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/index.js.map +1 -0
  101. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/types.d.ts +9 -0
  102. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/types.js +6 -0
  103. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/build/src/types.js.map +1 -0
  104. package/test/EdelCsvTestSuite/node_modules/@fast-csv/format/package.json +87 -0
  105. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/CHANGELOG.md +87 -0
  106. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/LICENSE +21 -0
  107. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/README.md +20 -0
  108. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/CsvParserStream.d.ts +33 -0
  109. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/CsvParserStream.js +212 -0
  110. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/CsvParserStream.js.map +1 -0
  111. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/ParserOptions.d.ts +47 -0
  112. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/ParserOptions.js +47 -0
  113. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/ParserOptions.js.map +1 -0
  114. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/index.d.ts +11 -0
  115. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/index.js +44 -0
  116. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/index.js.map +1 -0
  117. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Parser.d.ts +15 -0
  118. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Parser.js +76 -0
  119. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Parser.js.map +1 -0
  120. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/RowParser.d.ts +12 -0
  121. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/RowParser.js +76 -0
  122. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/RowParser.js.map +1 -0
  123. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Scanner.d.ts +25 -0
  124. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Scanner.js +82 -0
  125. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Scanner.js.map +1 -0
  126. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Token.d.ts +19 -0
  127. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Token.js +31 -0
  128. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/Token.js.map +1 -0
  129. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnFormatter.d.ts +5 -0
  130. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnFormatter.js +21 -0
  131. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnFormatter.js.map +1 -0
  132. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnParser.d.ts +11 -0
  133. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnParser.js +23 -0
  134. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/ColumnParser.js.map +1 -0
  135. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/NonQuotedColumnParser.d.ts +8 -0
  136. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/NonQuotedColumnParser.js +29 -0
  137. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/NonQuotedColumnParser.js.map +1 -0
  138. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/QuotedColumnParser.d.ts +10 -0
  139. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/QuotedColumnParser.js +97 -0
  140. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/QuotedColumnParser.js.map +1 -0
  141. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/index.d.ts +4 -0
  142. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/index.js +12 -0
  143. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/column/index.js.map +1 -0
  144. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/index.d.ts +5 -0
  145. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/index.js +16 -0
  146. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/parser/index.js.map +1 -0
  147. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/HeaderTransformer.d.ts +17 -0
  148. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/HeaderTransformer.js +115 -0
  149. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/HeaderTransformer.js.map +1 -0
  150. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.d.ts +12 -0
  151. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.js +93 -0
  152. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/RowTransformerValidator.js.map +1 -0
  153. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/index.d.ts +2 -0
  154. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/index.js +8 -0
  155. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/transforms/index.js.map +1 -0
  156. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/types.d.ts +21 -0
  157. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/types.js +6 -0
  158. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/build/src/types.js.map +1 -0
  159. package/test/EdelCsvTestSuite/node_modules/@fast-csv/parse/package.json +94 -0
  160. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/LICENSE.md +12 -0
  161. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/README.md +19 -0
  162. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/applyToDefaults.js +102 -0
  163. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/assert.js +22 -0
  164. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/bench.js +29 -0
  165. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/block.js +12 -0
  166. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/clone.js +176 -0
  167. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/contain.js +307 -0
  168. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/deepEqual.js +317 -0
  169. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/error.js +26 -0
  170. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/escapeHeaderAttribute.js +16 -0
  171. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/escapeHtml.js +87 -0
  172. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/escapeJson.js +28 -0
  173. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/escapeRegex.js +11 -0
  174. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/flatten.js +20 -0
  175. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/ignore.js +6 -0
  176. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/index.d.ts +471 -0
  177. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/index.js +45 -0
  178. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/intersect.js +41 -0
  179. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/isPromise.js +9 -0
  180. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/merge.js +78 -0
  181. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/once.js +25 -0
  182. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/reach.js +76 -0
  183. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/reachTemplate.js +16 -0
  184. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/stringify.js +14 -0
  185. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/types.js +55 -0
  186. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/utils.js +9 -0
  187. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/lib/wait.js +37 -0
  188. package/test/EdelCsvTestSuite/node_modules/@hapi/hoek/package.json +66 -0
  189. package/test/EdelCsvTestSuite/node_modules/@hapi/topo/LICENSE.md +10 -0
  190. package/test/EdelCsvTestSuite/node_modules/@hapi/topo/README.md +17 -0
  191. package/test/EdelCsvTestSuite/node_modules/@hapi/topo/lib/index.d.ts +60 -0
  192. package/test/EdelCsvTestSuite/node_modules/@hapi/topo/lib/index.js +225 -0
  193. package/test/EdelCsvTestSuite/node_modules/@hapi/topo/package.json +63 -0
  194. package/test/EdelCsvTestSuite/node_modules/@joi/date/.npmignore +3 -0
  195. package/test/EdelCsvTestSuite/node_modules/@joi/date/LICENSE.md +10 -0
  196. package/test/EdelCsvTestSuite/node_modules/@joi/date/README.md +12 -0
  197. package/test/EdelCsvTestSuite/node_modules/@joi/date/lib/index.d.ts +28 -0
  198. package/test/EdelCsvTestSuite/node_modules/@joi/date/lib/index.js +65 -0
  199. package/test/EdelCsvTestSuite/node_modules/@joi/date/package.json +63 -0
  200. package/test/EdelCsvTestSuite/node_modules/@sideway/address/LICENSE.md +9 -0
  201. package/test/EdelCsvTestSuite/node_modules/@sideway/address/README.md +14 -0
  202. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/decode.js +120 -0
  203. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/domain.js +123 -0
  204. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/email.js +170 -0
  205. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/errors.js +29 -0
  206. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/index.d.ts +255 -0
  207. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/index.js +97 -0
  208. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/ip.js +63 -0
  209. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/tlds.js +1502 -0
  210. package/test/EdelCsvTestSuite/node_modules/@sideway/address/lib/uri.js +207 -0
  211. package/test/EdelCsvTestSuite/node_modules/@sideway/address/package.json +63 -0
  212. package/test/EdelCsvTestSuite/node_modules/@sideway/formula/LICENSE.md +9 -0
  213. package/test/EdelCsvTestSuite/node_modules/@sideway/formula/README.md +18 -0
  214. package/test/EdelCsvTestSuite/node_modules/@sideway/formula/lib/index.d.ts +52 -0
  215. package/test/EdelCsvTestSuite/node_modules/@sideway/formula/lib/index.js +456 -0
  216. package/test/EdelCsvTestSuite/node_modules/@sideway/formula/package.json +61 -0
  217. package/test/EdelCsvTestSuite/node_modules/@sideway/pinpoint/LICENSE.md +10 -0
  218. package/test/EdelCsvTestSuite/node_modules/@sideway/pinpoint/README.md +14 -0
  219. package/test/EdelCsvTestSuite/node_modules/@sideway/pinpoint/lib/index.d.ts +24 -0
  220. package/test/EdelCsvTestSuite/node_modules/@sideway/pinpoint/lib/index.js +21 -0
  221. package/test/EdelCsvTestSuite/node_modules/@sideway/pinpoint/package.json +58 -0
  222. package/test/EdelCsvTestSuite/node_modules/@types/node/LICENSE +21 -0
  223. package/test/EdelCsvTestSuite/node_modules/@types/node/README.md +16 -0
  224. package/test/EdelCsvTestSuite/node_modules/@types/node/assert.d.ts +124 -0
  225. package/test/EdelCsvTestSuite/node_modules/@types/node/async_hooks.d.ts +226 -0
  226. package/test/EdelCsvTestSuite/node_modules/@types/node/buffer.d.ts +22 -0
  227. package/test/EdelCsvTestSuite/node_modules/@types/node/child_process.d.ts +511 -0
  228. package/test/EdelCsvTestSuite/node_modules/@types/node/cluster.d.ts +262 -0
  229. package/test/EdelCsvTestSuite/node_modules/@types/node/console.d.ts +138 -0
  230. package/test/EdelCsvTestSuite/node_modules/@types/node/constants.d.ts +13 -0
  231. package/test/EdelCsvTestSuite/node_modules/@types/node/crypto.d.ts +1186 -0
  232. package/test/EdelCsvTestSuite/node_modules/@types/node/dgram.d.ts +141 -0
  233. package/test/EdelCsvTestSuite/node_modules/@types/node/dns.d.ts +384 -0
  234. package/test/EdelCsvTestSuite/node_modules/@types/node/domain.d.ts +24 -0
  235. package/test/EdelCsvTestSuite/node_modules/@types/node/events.d.ts +78 -0
  236. package/test/EdelCsvTestSuite/node_modules/@types/node/fs/promises.d.ts +565 -0
  237. package/test/EdelCsvTestSuite/node_modules/@types/node/fs.d.ts +2270 -0
  238. package/test/EdelCsvTestSuite/node_modules/@types/node/globals.d.ts +613 -0
  239. package/test/EdelCsvTestSuite/node_modules/@types/node/globals.global.d.ts +1 -0
  240. package/test/EdelCsvTestSuite/node_modules/@types/node/http.d.ts +487 -0
  241. package/test/EdelCsvTestSuite/node_modules/@types/node/http2.d.ts +958 -0
  242. package/test/EdelCsvTestSuite/node_modules/@types/node/https.d.ts +139 -0
  243. package/test/EdelCsvTestSuite/node_modules/@types/node/index.d.ts +98 -0
  244. package/test/EdelCsvTestSuite/node_modules/@types/node/inspector.d.ts +3047 -0
  245. package/test/EdelCsvTestSuite/node_modules/@types/node/module.d.ts +52 -0
  246. package/test/EdelCsvTestSuite/node_modules/@types/node/net.d.ts +293 -0
  247. package/test/EdelCsvTestSuite/node_modules/@types/node/os.d.ts +239 -0
  248. package/test/EdelCsvTestSuite/node_modules/@types/node/package.json +217 -0
  249. package/test/EdelCsvTestSuite/node_modules/@types/node/path.d.ts +153 -0
  250. package/test/EdelCsvTestSuite/node_modules/@types/node/perf_hooks.d.ts +271 -0
  251. package/test/EdelCsvTestSuite/node_modules/@types/node/process.d.ts +409 -0
  252. package/test/EdelCsvTestSuite/node_modules/@types/node/punycode.d.ts +75 -0
  253. package/test/EdelCsvTestSuite/node_modules/@types/node/querystring.d.ts +28 -0
  254. package/test/EdelCsvTestSuite/node_modules/@types/node/readline.d.ts +171 -0
  255. package/test/EdelCsvTestSuite/node_modules/@types/node/repl.d.ts +395 -0
  256. package/test/EdelCsvTestSuite/node_modules/@types/node/stream.d.ts +355 -0
  257. package/test/EdelCsvTestSuite/node_modules/@types/node/string_decoder.d.ts +7 -0
  258. package/test/EdelCsvTestSuite/node_modules/@types/node/timers.d.ts +16 -0
  259. package/test/EdelCsvTestSuite/node_modules/@types/node/tls.d.ts +780 -0
  260. package/test/EdelCsvTestSuite/node_modules/@types/node/trace_events.d.ts +61 -0
  261. package/test/EdelCsvTestSuite/node_modules/@types/node/tty.d.ts +66 -0
  262. package/test/EdelCsvTestSuite/node_modules/@types/node/url.d.ts +116 -0
  263. package/test/EdelCsvTestSuite/node_modules/@types/node/util.d.ts +213 -0
  264. package/test/EdelCsvTestSuite/node_modules/@types/node/v8.d.ts +187 -0
  265. package/test/EdelCsvTestSuite/node_modules/@types/node/vm.d.ts +152 -0
  266. package/test/EdelCsvTestSuite/node_modules/@types/node/wasi.d.ts +86 -0
  267. package/test/EdelCsvTestSuite/node_modules/@types/node/worker_threads.d.ts +238 -0
  268. package/test/EdelCsvTestSuite/node_modules/@types/node/zlib.d.ts +361 -0
  269. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/LICENSE +15 -0
  270. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/README.md +26 -0
  271. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/cjs/index.js +19 -0
  272. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/cjs/package.json +1 -0
  273. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/esm/index.js +19 -0
  274. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/index.js +18 -0
  275. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/min.js +1 -0
  276. package/test/EdelCsvTestSuite/node_modules/@ungap/promise-all-settled/package.json +72 -0
  277. package/test/EdelCsvTestSuite/node_modules/ansi-colors/LICENSE +21 -0
  278. package/test/EdelCsvTestSuite/node_modules/ansi-colors/README.md +315 -0
  279. package/test/EdelCsvTestSuite/node_modules/ansi-colors/index.js +177 -0
  280. package/test/EdelCsvTestSuite/node_modules/ansi-colors/package.json +152 -0
  281. package/test/EdelCsvTestSuite/node_modules/ansi-colors/symbols.js +70 -0
  282. package/test/EdelCsvTestSuite/node_modules/ansi-colors/types/index.d.ts +161 -0
  283. package/test/EdelCsvTestSuite/node_modules/ansi-regex/index.d.ts +37 -0
  284. package/test/EdelCsvTestSuite/node_modules/ansi-regex/index.js +10 -0
  285. package/test/EdelCsvTestSuite/node_modules/ansi-regex/license +9 -0
  286. package/test/EdelCsvTestSuite/node_modules/ansi-regex/package.json +87 -0
  287. package/test/EdelCsvTestSuite/node_modules/ansi-regex/readme.md +78 -0
  288. package/test/EdelCsvTestSuite/node_modules/ansi-styles/index.d.ts +345 -0
  289. package/test/EdelCsvTestSuite/node_modules/ansi-styles/index.js +163 -0
  290. package/test/EdelCsvTestSuite/node_modules/ansi-styles/license +9 -0
  291. package/test/EdelCsvTestSuite/node_modules/ansi-styles/package.json +89 -0
  292. package/test/EdelCsvTestSuite/node_modules/ansi-styles/readme.md +152 -0
  293. package/test/EdelCsvTestSuite/node_modules/anymatch/LICENSE +15 -0
  294. package/test/EdelCsvTestSuite/node_modules/anymatch/README.md +87 -0
  295. package/test/EdelCsvTestSuite/node_modules/anymatch/index.d.ts +19 -0
  296. package/test/EdelCsvTestSuite/node_modules/anymatch/index.js +104 -0
  297. package/test/EdelCsvTestSuite/node_modules/anymatch/package.json +76 -0
  298. package/test/EdelCsvTestSuite/node_modules/api_connect/README.md +32 -0
  299. package/test/EdelCsvTestSuite/node_modules/api_connect/conf/settings.ini +20 -0
  300. package/test/EdelCsvTestSuite/node_modules/api_connect/index.js +3 -0
  301. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/CHANGELOG.md +344 -0
  302. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/LICENSE +19 -0
  303. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/README.md +60 -0
  304. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/all.js +119 -0
  305. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/allLimit.js +46 -0
  306. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/allSeries.js +45 -0
  307. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/any.js +122 -0
  308. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/anyLimit.js +47 -0
  309. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/anySeries.js +46 -0
  310. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/apply.js +55 -0
  311. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/applyEach.js +57 -0
  312. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/applyEachSeries.js +37 -0
  313. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/asyncify.js +118 -0
  314. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/auto.js +333 -0
  315. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/autoInject.js +182 -0
  316. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/bower.json +17 -0
  317. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/cargo.js +63 -0
  318. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/cargoQueue.js +71 -0
  319. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/compose.js +55 -0
  320. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/concat.js +115 -0
  321. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/concatLimit.js +60 -0
  322. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/concatSeries.js +41 -0
  323. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/constant.js +55 -0
  324. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/detect.js +96 -0
  325. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/detectLimit.js +48 -0
  326. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/detectSeries.js +47 -0
  327. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/dir.js +43 -0
  328. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/dist/async.js +6057 -0
  329. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/dist/async.min.js +1 -0
  330. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/dist/async.mjs +5945 -0
  331. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/doDuring.js +68 -0
  332. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/doUntil.js +46 -0
  333. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/doWhilst.js +68 -0
  334. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/during.js +78 -0
  335. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/each.js +129 -0
  336. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/eachLimit.js +50 -0
  337. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/eachOf.js +185 -0
  338. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/eachOfLimit.js +47 -0
  339. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/eachOfSeries.js +39 -0
  340. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/eachSeries.js +44 -0
  341. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/ensureAsync.js +67 -0
  342. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/every.js +119 -0
  343. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/everyLimit.js +46 -0
  344. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/everySeries.js +45 -0
  345. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/filter.js +93 -0
  346. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/filterLimit.js +45 -0
  347. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/filterSeries.js +43 -0
  348. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/find.js +96 -0
  349. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/findLimit.js +48 -0
  350. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/findSeries.js +47 -0
  351. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/flatMap.js +115 -0
  352. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/flatMapLimit.js +60 -0
  353. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/flatMapSeries.js +41 -0
  354. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/foldl.js +153 -0
  355. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/foldr.js +41 -0
  356. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEach.js +129 -0
  357. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEachLimit.js +50 -0
  358. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEachOf.js +185 -0
  359. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEachOfLimit.js +47 -0
  360. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEachOfSeries.js +39 -0
  361. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forEachSeries.js +44 -0
  362. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/forever.js +68 -0
  363. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/groupBy.js +108 -0
  364. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/groupByLimit.js +71 -0
  365. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/groupBySeries.js +36 -0
  366. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/index.js +588 -0
  367. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/inject.js +153 -0
  368. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/DoublyLinkedList.js +92 -0
  369. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/Heap.js +120 -0
  370. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/applyEach.js +29 -0
  371. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/asyncEachOfLimit.js +75 -0
  372. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/awaitify.js +27 -0
  373. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/breakLoop.js +10 -0
  374. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/consoleFunc.js +31 -0
  375. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/createTester.js +40 -0
  376. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/eachOfLimit.js +90 -0
  377. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/filter.js +55 -0
  378. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/getIterator.js +11 -0
  379. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/initialParams.js +14 -0
  380. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/isArrayLike.js +10 -0
  381. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/iterator.js +57 -0
  382. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/map.js +30 -0
  383. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/once.js +17 -0
  384. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/onlyOnce.js +15 -0
  385. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/parallel.js +34 -0
  386. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/promiseCallback.js +23 -0
  387. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/queue.js +291 -0
  388. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/range.js +14 -0
  389. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/reject.js +26 -0
  390. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/setImmediate.js +34 -0
  391. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/withoutIndex.js +10 -0
  392. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/internal/wrapAsync.js +34 -0
  393. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/log.js +41 -0
  394. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/map.js +142 -0
  395. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/mapLimit.js +45 -0
  396. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/mapSeries.js +44 -0
  397. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/mapValues.js +152 -0
  398. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/mapValuesLimit.js +61 -0
  399. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/mapValuesSeries.js +37 -0
  400. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/memoize.js +91 -0
  401. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/nextTick.js +52 -0
  402. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/package.json +107 -0
  403. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/parallel.js +180 -0
  404. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/parallelLimit.js +41 -0
  405. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/priorityQueue.js +91 -0
  406. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/queue.js +167 -0
  407. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/race.js +67 -0
  408. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/reduce.js +153 -0
  409. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/reduceRight.js +41 -0
  410. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/reflect.js +78 -0
  411. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/reflectAll.js +93 -0
  412. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/reject.js +87 -0
  413. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/rejectLimit.js +45 -0
  414. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/rejectSeries.js +43 -0
  415. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/retry.js +159 -0
  416. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/retryable.js +77 -0
  417. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/select.js +93 -0
  418. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/selectLimit.js +45 -0
  419. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/selectSeries.js +43 -0
  420. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/seq.js +79 -0
  421. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/series.js +186 -0
  422. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/setImmediate.js +45 -0
  423. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/some.js +122 -0
  424. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/someLimit.js +47 -0
  425. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/someSeries.js +46 -0
  426. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/sortBy.js +190 -0
  427. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/timeout.js +89 -0
  428. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/times.js +50 -0
  429. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/timesLimit.js +43 -0
  430. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/timesSeries.js +32 -0
  431. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/transform.js +173 -0
  432. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/tryEach.js +78 -0
  433. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/unmemoize.js +25 -0
  434. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/until.js +61 -0
  435. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/waterfall.js +105 -0
  436. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/whilst.js +78 -0
  437. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/async/wrapSync.js +118 -0
  438. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/.babelrc +3 -0
  439. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/.eslintrc +7 -0
  440. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/.gitattributes +1 -0
  441. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/CHANGELOG.md +256 -0
  442. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/LICENSE +21 -0
  443. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/README.md +653 -0
  444. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/align.js +14 -0
  445. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/browser.js +38 -0
  446. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/cli.js +52 -0
  447. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/colorize.js +122 -0
  448. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/combine.js +66 -0
  449. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/align.js +15 -0
  450. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/browser.js +72 -0
  451. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/cli.js +73 -0
  452. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/colorize.js +144 -0
  453. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/combine.js +71 -0
  454. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/errors.js +43 -0
  455. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/format.js +91 -0
  456. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/index.js +87 -0
  457. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/json.js +34 -0
  458. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/label.js +20 -0
  459. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/levels.js +14 -0
  460. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/logstash.js +34 -0
  461. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/metadata.js +64 -0
  462. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/ms.js +21 -0
  463. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/pad-levels.js +127 -0
  464. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/pretty-print.js +34 -0
  465. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/printf.js +41 -0
  466. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/simple.js +37 -0
  467. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/splat.js +159 -0
  468. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/timestamp.js +32 -0
  469. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/dist/uncolorize.js +31 -0
  470. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/errors.js +39 -0
  471. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/combine.js +14 -0
  472. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/filter.js +30 -0
  473. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/invalid.js +6 -0
  474. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/metadata.js +78 -0
  475. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/padLevels.js +39 -0
  476. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/examples/volume.js +25 -0
  477. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/format.js +52 -0
  478. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/index.d.ts +197 -0
  479. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/index.js +52 -0
  480. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/json.js +30 -0
  481. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/label.js +19 -0
  482. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/levels.js +12 -0
  483. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/logstash.js +29 -0
  484. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/metadata.js +61 -0
  485. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/ms.js +18 -0
  486. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/package.json +78 -0
  487. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/pad-levels.js +83 -0
  488. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/pretty-print.js +29 -0
  489. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/printf.js +26 -0
  490. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/simple.js +33 -0
  491. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/splat.js +132 -0
  492. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/timestamp.js +30 -0
  493. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/tsconfig.json +22 -0
  494. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/logform/uncolorize.js +27 -0
  495. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/CHANGELOG.md +75 -0
  496. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/LICENSE +21 -0
  497. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/esm/package.json +4 -0
  498. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/esm/wrapper.js +6 -0
  499. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/index.d.ts +18 -0
  500. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/index.js +618 -0
  501. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/package.json +93 -0
  502. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/readme.md +170 -0
  503. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/safe-stable-stringify/tsconfig.json +22 -0
  504. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/LICENSE +19 -0
  505. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/README.md +1231 -0
  506. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/common.js +56 -0
  507. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/config/index.js +37 -0
  508. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/container.js +147 -0
  509. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/create-logger.js +145 -0
  510. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/exception-handler.js +288 -0
  511. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/exception-stream.js +94 -0
  512. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/logger.js +766 -0
  513. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/profiler.js +69 -0
  514. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/rejection-handler.js +288 -0
  515. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/tail-file.js +135 -0
  516. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/transports/console.js +166 -0
  517. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/transports/file.js +817 -0
  518. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/transports/http.js +342 -0
  519. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/transports/index.js +55 -0
  520. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston/transports/stream.js +117 -0
  521. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/dist/winston.js +166 -0
  522. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/index.d.ts +213 -0
  523. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/common.js +61 -0
  524. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/config/index.d.ts +99 -0
  525. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/config/index.js +35 -0
  526. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/container.js +114 -0
  527. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/create-logger.js +104 -0
  528. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/exception-handler.js +245 -0
  529. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/exception-stream.js +54 -0
  530. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/logger.js +676 -0
  531. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/profiler.js +51 -0
  532. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/rejection-handler.js +251 -0
  533. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/tail-file.js +124 -0
  534. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/console.js +117 -0
  535. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/file.js +695 -0
  536. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/http.js +267 -0
  537. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/index.d.ts +103 -0
  538. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/index.js +56 -0
  539. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston/transports/stream.js +63 -0
  540. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/lib/winston.js +176 -0
  541. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston/package.json +109 -0
  542. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.babelrc +3 -0
  543. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.eslintrc +7 -0
  544. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.gitattributes +1 -0
  545. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.nyc_output/c3d7ddb9-cc26-466b-a4f6-993ad69e86f6.json +1 -0
  546. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.nyc_output/processinfo/c3d7ddb9-cc26-466b-a4f6-993ad69e86f6.json +1 -0
  547. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/.nyc_output/processinfo/index.json +1 -0
  548. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/CHANGELOG.md +126 -0
  549. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/LICENSE +22 -0
  550. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/README.md +50 -0
  551. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/dist/index.js +215 -0
  552. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/dist/legacy.js +116 -0
  553. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/index.d.ts +39 -0
  554. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/index.js +215 -0
  555. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/legacy.js +119 -0
  556. package/test/EdelCsvTestSuite/node_modules/api_connect/node_modules/winston-transport/package.json +80 -0
  557. package/test/EdelCsvTestSuite/node_modules/api_connect/package.json +83 -0
  558. package/test/EdelCsvTestSuite/node_modules/api_connect/src/edelconnect.js +2128 -0
  559. package/test/EdelCsvTestSuite/node_modules/api_connect/src/iniparser.js +38 -0
  560. package/test/EdelCsvTestSuite/node_modules/api_connect/src/logger.js +14 -0
  561. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/CSVTestClass.js +345 -0
  562. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/CSVTestEdelweissAPIConnect.js +628 -0
  563. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/InputFile.csv +39 -0
  564. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/conf/settings.ini +20 -0
  565. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/config.js +34 -0
  566. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/logger.js +38 -0
  567. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/package-lock.json +352 -0
  568. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/package.json +18 -0
  569. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/subscribeFeed.js +154 -0
  570. package/test/EdelCsvTestSuite/node_modules/api_connect/test/EdelCsvTestSuite/testMethod.js +719 -0
  571. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityLimitsApiTest.test.js +40 -0
  572. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityOrderBookApiTest.test.js +40 -0
  573. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityOrderDetailsApiTest.test.js +45 -0
  574. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityOrderHistoryApiTest.test.js +47 -0
  575. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityPositionBookApiTest.test.js +40 -0
  576. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityReportsApiTest.test.js +41 -0
  577. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityTradeApiTest.test.js +378 -0
  578. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommodityTradeBookApiTest.test.js +40 -0
  579. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/commodity/CommonLoginApiTest.test.js +77 -0
  580. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/config.js +20 -0
  581. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityHoldingsApiTest.test.js +59 -0
  582. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityLimitsApiTest.test.js +52 -0
  583. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityOrdersApiTest.test.js +161 -0
  584. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityPositionBookApiTest.test.js +52 -0
  585. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityTradeApiTest.test.js +903 -0
  586. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/equity/EquityTradeBookApiTest.test.js +28 -0
  587. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/mf/MFOrderBookApiTest.test.js +39 -0
  588. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/mf/MFTradeApiTest.test.js +120 -0
  589. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/package-lock.json +710 -0
  590. package/test/EdelCsvTestSuite/node_modules/api_connect/test/unitTests/package.json +33 -0
  591. package/test/EdelCsvTestSuite/node_modules/argparse/CHANGELOG.md +216 -0
  592. package/test/EdelCsvTestSuite/node_modules/argparse/LICENSE +254 -0
  593. package/test/EdelCsvTestSuite/node_modules/argparse/README.md +84 -0
  594. package/test/EdelCsvTestSuite/node_modules/argparse/argparse.js +3707 -0
  595. package/test/EdelCsvTestSuite/node_modules/argparse/lib/sub.js +67 -0
  596. package/test/EdelCsvTestSuite/node_modules/argparse/lib/textwrap.js +440 -0
  597. package/test/EdelCsvTestSuite/node_modules/argparse/package.json +63 -0
  598. package/test/EdelCsvTestSuite/node_modules/assertion-error/History.md +24 -0
  599. package/test/EdelCsvTestSuite/node_modules/assertion-error/README.md +41 -0
  600. package/test/EdelCsvTestSuite/node_modules/assertion-error/index.d.ts +11 -0
  601. package/test/EdelCsvTestSuite/node_modules/assertion-error/index.js +116 -0
  602. package/test/EdelCsvTestSuite/node_modules/assertion-error/package.json +62 -0
  603. package/test/EdelCsvTestSuite/node_modules/async/CHANGELOG.md +341 -0
  604. package/test/EdelCsvTestSuite/node_modules/async/LICENSE +19 -0
  605. package/test/EdelCsvTestSuite/node_modules/async/README.md +60 -0
  606. package/test/EdelCsvTestSuite/node_modules/async/all.js +119 -0
  607. package/test/EdelCsvTestSuite/node_modules/async/allLimit.js +46 -0
  608. package/test/EdelCsvTestSuite/node_modules/async/allSeries.js +45 -0
  609. package/test/EdelCsvTestSuite/node_modules/async/any.js +122 -0
  610. package/test/EdelCsvTestSuite/node_modules/async/anyLimit.js +47 -0
  611. package/test/EdelCsvTestSuite/node_modules/async/anySeries.js +46 -0
  612. package/test/EdelCsvTestSuite/node_modules/async/apply.js +55 -0
  613. package/test/EdelCsvTestSuite/node_modules/async/applyEach.js +57 -0
  614. package/test/EdelCsvTestSuite/node_modules/async/applyEachSeries.js +37 -0
  615. package/test/EdelCsvTestSuite/node_modules/async/asyncify.js +118 -0
  616. package/test/EdelCsvTestSuite/node_modules/async/auto.js +333 -0
  617. package/test/EdelCsvTestSuite/node_modules/async/autoInject.js +156 -0
  618. package/test/EdelCsvTestSuite/node_modules/async/bower.json +17 -0
  619. package/test/EdelCsvTestSuite/node_modules/async/cargo.js +63 -0
  620. package/test/EdelCsvTestSuite/node_modules/async/cargoQueue.js +71 -0
  621. package/test/EdelCsvTestSuite/node_modules/async/compose.js +55 -0
  622. package/test/EdelCsvTestSuite/node_modules/async/concat.js +115 -0
  623. package/test/EdelCsvTestSuite/node_modules/async/concatLimit.js +60 -0
  624. package/test/EdelCsvTestSuite/node_modules/async/concatSeries.js +41 -0
  625. package/test/EdelCsvTestSuite/node_modules/async/constant.js +55 -0
  626. package/test/EdelCsvTestSuite/node_modules/async/detect.js +96 -0
  627. package/test/EdelCsvTestSuite/node_modules/async/detectLimit.js +48 -0
  628. package/test/EdelCsvTestSuite/node_modules/async/detectSeries.js +47 -0
  629. package/test/EdelCsvTestSuite/node_modules/async/dir.js +43 -0
  630. package/test/EdelCsvTestSuite/node_modules/async/dist/async.js +6029 -0
  631. package/test/EdelCsvTestSuite/node_modules/async/dist/async.min.js +1 -0
  632. package/test/EdelCsvTestSuite/node_modules/async/dist/async.mjs +5917 -0
  633. package/test/EdelCsvTestSuite/node_modules/async/doDuring.js +68 -0
  634. package/test/EdelCsvTestSuite/node_modules/async/doUntil.js +46 -0
  635. package/test/EdelCsvTestSuite/node_modules/async/doWhilst.js +68 -0
  636. package/test/EdelCsvTestSuite/node_modules/async/during.js +78 -0
  637. package/test/EdelCsvTestSuite/node_modules/async/each.js +129 -0
  638. package/test/EdelCsvTestSuite/node_modules/async/eachLimit.js +50 -0
  639. package/test/EdelCsvTestSuite/node_modules/async/eachOf.js +185 -0
  640. package/test/EdelCsvTestSuite/node_modules/async/eachOfLimit.js +47 -0
  641. package/test/EdelCsvTestSuite/node_modules/async/eachOfSeries.js +39 -0
  642. package/test/EdelCsvTestSuite/node_modules/async/eachSeries.js +44 -0
  643. package/test/EdelCsvTestSuite/node_modules/async/ensureAsync.js +67 -0
  644. package/test/EdelCsvTestSuite/node_modules/async/every.js +119 -0
  645. package/test/EdelCsvTestSuite/node_modules/async/everyLimit.js +46 -0
  646. package/test/EdelCsvTestSuite/node_modules/async/everySeries.js +45 -0
  647. package/test/EdelCsvTestSuite/node_modules/async/filter.js +93 -0
  648. package/test/EdelCsvTestSuite/node_modules/async/filterLimit.js +45 -0
  649. package/test/EdelCsvTestSuite/node_modules/async/filterSeries.js +43 -0
  650. package/test/EdelCsvTestSuite/node_modules/async/find.js +96 -0
  651. package/test/EdelCsvTestSuite/node_modules/async/findLimit.js +48 -0
  652. package/test/EdelCsvTestSuite/node_modules/async/findSeries.js +47 -0
  653. package/test/EdelCsvTestSuite/node_modules/async/flatMap.js +115 -0
  654. package/test/EdelCsvTestSuite/node_modules/async/flatMapLimit.js +60 -0
  655. package/test/EdelCsvTestSuite/node_modules/async/flatMapSeries.js +41 -0
  656. package/test/EdelCsvTestSuite/node_modules/async/foldl.js +153 -0
  657. package/test/EdelCsvTestSuite/node_modules/async/foldr.js +41 -0
  658. package/test/EdelCsvTestSuite/node_modules/async/forEach.js +129 -0
  659. package/test/EdelCsvTestSuite/node_modules/async/forEachLimit.js +50 -0
  660. package/test/EdelCsvTestSuite/node_modules/async/forEachOf.js +185 -0
  661. package/test/EdelCsvTestSuite/node_modules/async/forEachOfLimit.js +47 -0
  662. package/test/EdelCsvTestSuite/node_modules/async/forEachOfSeries.js +39 -0
  663. package/test/EdelCsvTestSuite/node_modules/async/forEachSeries.js +44 -0
  664. package/test/EdelCsvTestSuite/node_modules/async/forever.js +68 -0
  665. package/test/EdelCsvTestSuite/node_modules/async/groupBy.js +108 -0
  666. package/test/EdelCsvTestSuite/node_modules/async/groupByLimit.js +71 -0
  667. package/test/EdelCsvTestSuite/node_modules/async/groupBySeries.js +36 -0
  668. package/test/EdelCsvTestSuite/node_modules/async/index.js +588 -0
  669. package/test/EdelCsvTestSuite/node_modules/async/inject.js +153 -0
  670. package/test/EdelCsvTestSuite/node_modules/async/internal/DoublyLinkedList.js +92 -0
  671. package/test/EdelCsvTestSuite/node_modules/async/internal/Heap.js +120 -0
  672. package/test/EdelCsvTestSuite/node_modules/async/internal/applyEach.js +29 -0
  673. package/test/EdelCsvTestSuite/node_modules/async/internal/asyncEachOfLimit.js +75 -0
  674. package/test/EdelCsvTestSuite/node_modules/async/internal/awaitify.js +27 -0
  675. package/test/EdelCsvTestSuite/node_modules/async/internal/breakLoop.js +10 -0
  676. package/test/EdelCsvTestSuite/node_modules/async/internal/consoleFunc.js +31 -0
  677. package/test/EdelCsvTestSuite/node_modules/async/internal/createTester.js +40 -0
  678. package/test/EdelCsvTestSuite/node_modules/async/internal/eachOfLimit.js +90 -0
  679. package/test/EdelCsvTestSuite/node_modules/async/internal/filter.js +55 -0
  680. package/test/EdelCsvTestSuite/node_modules/async/internal/getIterator.js +11 -0
  681. package/test/EdelCsvTestSuite/node_modules/async/internal/initialParams.js +14 -0
  682. package/test/EdelCsvTestSuite/node_modules/async/internal/isArrayLike.js +10 -0
  683. package/test/EdelCsvTestSuite/node_modules/async/internal/iterator.js +57 -0
  684. package/test/EdelCsvTestSuite/node_modules/async/internal/map.js +30 -0
  685. package/test/EdelCsvTestSuite/node_modules/async/internal/once.js +17 -0
  686. package/test/EdelCsvTestSuite/node_modules/async/internal/onlyOnce.js +15 -0
  687. package/test/EdelCsvTestSuite/node_modules/async/internal/parallel.js +34 -0
  688. package/test/EdelCsvTestSuite/node_modules/async/internal/promiseCallback.js +23 -0
  689. package/test/EdelCsvTestSuite/node_modules/async/internal/queue.js +291 -0
  690. package/test/EdelCsvTestSuite/node_modules/async/internal/range.js +14 -0
  691. package/test/EdelCsvTestSuite/node_modules/async/internal/reject.js +26 -0
  692. package/test/EdelCsvTestSuite/node_modules/async/internal/setImmediate.js +33 -0
  693. package/test/EdelCsvTestSuite/node_modules/async/internal/withoutIndex.js +10 -0
  694. package/test/EdelCsvTestSuite/node_modules/async/internal/wrapAsync.js +34 -0
  695. package/test/EdelCsvTestSuite/node_modules/async/log.js +41 -0
  696. package/test/EdelCsvTestSuite/node_modules/async/map.js +142 -0
  697. package/test/EdelCsvTestSuite/node_modules/async/mapLimit.js +45 -0
  698. package/test/EdelCsvTestSuite/node_modules/async/mapSeries.js +44 -0
  699. package/test/EdelCsvTestSuite/node_modules/async/mapValues.js +152 -0
  700. package/test/EdelCsvTestSuite/node_modules/async/mapValuesLimit.js +61 -0
  701. package/test/EdelCsvTestSuite/node_modules/async/mapValuesSeries.js +37 -0
  702. package/test/EdelCsvTestSuite/node_modules/async/memoize.js +91 -0
  703. package/test/EdelCsvTestSuite/node_modules/async/nextTick.js +52 -0
  704. package/test/EdelCsvTestSuite/node_modules/async/package.json +112 -0
  705. package/test/EdelCsvTestSuite/node_modules/async/parallel.js +180 -0
  706. package/test/EdelCsvTestSuite/node_modules/async/parallelLimit.js +41 -0
  707. package/test/EdelCsvTestSuite/node_modules/async/priorityQueue.js +91 -0
  708. package/test/EdelCsvTestSuite/node_modules/async/queue.js +167 -0
  709. package/test/EdelCsvTestSuite/node_modules/async/race.js +67 -0
  710. package/test/EdelCsvTestSuite/node_modules/async/reduce.js +153 -0
  711. package/test/EdelCsvTestSuite/node_modules/async/reduceRight.js +41 -0
  712. package/test/EdelCsvTestSuite/node_modules/async/reflect.js +78 -0
  713. package/test/EdelCsvTestSuite/node_modules/async/reflectAll.js +93 -0
  714. package/test/EdelCsvTestSuite/node_modules/async/reject.js +87 -0
  715. package/test/EdelCsvTestSuite/node_modules/async/rejectLimit.js +45 -0
  716. package/test/EdelCsvTestSuite/node_modules/async/rejectSeries.js +43 -0
  717. package/test/EdelCsvTestSuite/node_modules/async/retry.js +159 -0
  718. package/test/EdelCsvTestSuite/node_modules/async/retryable.js +77 -0
  719. package/test/EdelCsvTestSuite/node_modules/async/select.js +93 -0
  720. package/test/EdelCsvTestSuite/node_modules/async/selectLimit.js +45 -0
  721. package/test/EdelCsvTestSuite/node_modules/async/selectSeries.js +43 -0
  722. package/test/EdelCsvTestSuite/node_modules/async/seq.js +79 -0
  723. package/test/EdelCsvTestSuite/node_modules/async/series.js +186 -0
  724. package/test/EdelCsvTestSuite/node_modules/async/setImmediate.js +45 -0
  725. package/test/EdelCsvTestSuite/node_modules/async/some.js +122 -0
  726. package/test/EdelCsvTestSuite/node_modules/async/someLimit.js +47 -0
  727. package/test/EdelCsvTestSuite/node_modules/async/someSeries.js +46 -0
  728. package/test/EdelCsvTestSuite/node_modules/async/sortBy.js +190 -0
  729. package/test/EdelCsvTestSuite/node_modules/async/timeout.js +89 -0
  730. package/test/EdelCsvTestSuite/node_modules/async/times.js +50 -0
  731. package/test/EdelCsvTestSuite/node_modules/async/timesLimit.js +43 -0
  732. package/test/EdelCsvTestSuite/node_modules/async/timesSeries.js +32 -0
  733. package/test/EdelCsvTestSuite/node_modules/async/transform.js +173 -0
  734. package/test/EdelCsvTestSuite/node_modules/async/tryEach.js +78 -0
  735. package/test/EdelCsvTestSuite/node_modules/async/unmemoize.js +25 -0
  736. package/test/EdelCsvTestSuite/node_modules/async/until.js +61 -0
  737. package/test/EdelCsvTestSuite/node_modules/async/waterfall.js +105 -0
  738. package/test/EdelCsvTestSuite/node_modules/async/whilst.js +78 -0
  739. package/test/EdelCsvTestSuite/node_modules/async/wrapSync.js +118 -0
  740. package/test/EdelCsvTestSuite/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  741. package/test/EdelCsvTestSuite/node_modules/balanced-match/LICENSE.md +21 -0
  742. package/test/EdelCsvTestSuite/node_modules/balanced-match/README.md +97 -0
  743. package/test/EdelCsvTestSuite/node_modules/balanced-match/index.js +62 -0
  744. package/test/EdelCsvTestSuite/node_modules/balanced-match/package.json +76 -0
  745. package/test/EdelCsvTestSuite/node_modules/binary-extensions/binary-extensions.json +260 -0
  746. package/test/EdelCsvTestSuite/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  747. package/test/EdelCsvTestSuite/node_modules/binary-extensions/index.d.ts +14 -0
  748. package/test/EdelCsvTestSuite/node_modules/binary-extensions/index.js +1 -0
  749. package/test/EdelCsvTestSuite/node_modules/binary-extensions/license +9 -0
  750. package/test/EdelCsvTestSuite/node_modules/binary-extensions/package.json +70 -0
  751. package/test/EdelCsvTestSuite/node_modules/binary-extensions/readme.md +41 -0
  752. package/test/EdelCsvTestSuite/node_modules/brace-expansion/LICENSE +21 -0
  753. package/test/EdelCsvTestSuite/node_modules/brace-expansion/README.md +129 -0
  754. package/test/EdelCsvTestSuite/node_modules/brace-expansion/index.js +201 -0
  755. package/test/EdelCsvTestSuite/node_modules/brace-expansion/package.json +76 -0
  756. package/test/EdelCsvTestSuite/node_modules/braces/CHANGELOG.md +184 -0
  757. package/test/EdelCsvTestSuite/node_modules/braces/LICENSE +21 -0
  758. package/test/EdelCsvTestSuite/node_modules/braces/README.md +593 -0
  759. package/test/EdelCsvTestSuite/node_modules/braces/index.js +170 -0
  760. package/test/EdelCsvTestSuite/node_modules/braces/lib/compile.js +57 -0
  761. package/test/EdelCsvTestSuite/node_modules/braces/lib/constants.js +57 -0
  762. package/test/EdelCsvTestSuite/node_modules/braces/lib/expand.js +113 -0
  763. package/test/EdelCsvTestSuite/node_modules/braces/lib/parse.js +333 -0
  764. package/test/EdelCsvTestSuite/node_modules/braces/lib/stringify.js +32 -0
  765. package/test/EdelCsvTestSuite/node_modules/braces/lib/utils.js +112 -0
  766. package/test/EdelCsvTestSuite/node_modules/braces/package.json +123 -0
  767. package/test/EdelCsvTestSuite/node_modules/browser-stdout/LICENSE +5 -0
  768. package/test/EdelCsvTestSuite/node_modules/browser-stdout/README.md +40 -0
  769. package/test/EdelCsvTestSuite/node_modules/browser-stdout/index.js +25 -0
  770. package/test/EdelCsvTestSuite/node_modules/browser-stdout/package.json +46 -0
  771. package/test/EdelCsvTestSuite/node_modules/camelcase/index.d.ts +103 -0
  772. package/test/EdelCsvTestSuite/node_modules/camelcase/index.js +113 -0
  773. package/test/EdelCsvTestSuite/node_modules/camelcase/license +9 -0
  774. package/test/EdelCsvTestSuite/node_modules/camelcase/package.json +76 -0
  775. package/test/EdelCsvTestSuite/node_modules/camelcase/readme.md +144 -0
  776. package/test/EdelCsvTestSuite/node_modules/chai/CODEOWNERS +1 -0
  777. package/test/EdelCsvTestSuite/node_modules/chai/CODE_OF_CONDUCT.md +58 -0
  778. package/test/EdelCsvTestSuite/node_modules/chai/CONTRIBUTING.md +218 -0
  779. package/test/EdelCsvTestSuite/node_modules/chai/History.md +1059 -0
  780. package/test/EdelCsvTestSuite/node_modules/chai/LICENSE +21 -0
  781. package/test/EdelCsvTestSuite/node_modules/chai/README.md +212 -0
  782. package/test/EdelCsvTestSuite/node_modules/chai/ReleaseNotes.md +737 -0
  783. package/test/EdelCsvTestSuite/node_modules/chai/bower.json +26 -0
  784. package/test/EdelCsvTestSuite/node_modules/chai/chai.js +11464 -0
  785. package/test/EdelCsvTestSuite/node_modules/chai/index.js +1 -0
  786. package/test/EdelCsvTestSuite/node_modules/chai/index.mjs +14 -0
  787. package/test/EdelCsvTestSuite/node_modules/chai/karma.conf.js +34 -0
  788. package/test/EdelCsvTestSuite/node_modules/chai/karma.sauce.js +41 -0
  789. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/assertion.js +175 -0
  790. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/config.js +94 -0
  791. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/core/assertions.js +3853 -0
  792. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/interface/assert.js +3113 -0
  793. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/interface/expect.js +47 -0
  794. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/interface/should.js +219 -0
  795. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/addChainableMethod.js +152 -0
  796. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/addLengthGuard.js +60 -0
  797. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/addMethod.js +68 -0
  798. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/addProperty.js +72 -0
  799. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/compareByInspect.js +31 -0
  800. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/expectTypes.js +51 -0
  801. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/flag.js +33 -0
  802. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getActual.js +20 -0
  803. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getEnumerableProperties.js +26 -0
  804. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getMessage.js +50 -0
  805. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getOperator.js +55 -0
  806. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getOwnEnumerableProperties.js +29 -0
  807. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getOwnEnumerablePropertySymbols.js +27 -0
  808. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/getProperties.js +36 -0
  809. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/index.js +178 -0
  810. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/inspect.js +33 -0
  811. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/isNaN.js +26 -0
  812. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/isProxyEnabled.js +24 -0
  813. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/objDisplay.js +50 -0
  814. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/overwriteChainableMethod.js +69 -0
  815. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/overwriteMethod.js +92 -0
  816. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/overwriteProperty.js +92 -0
  817. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/proxify.js +147 -0
  818. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/test.js +28 -0
  819. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai/utils/transferFlags.js +45 -0
  820. package/test/EdelCsvTestSuite/node_modules/chai/lib/chai.js +92 -0
  821. package/test/EdelCsvTestSuite/node_modules/chai/package.json +104 -0
  822. package/test/EdelCsvTestSuite/node_modules/chai/register-assert.js +1 -0
  823. package/test/EdelCsvTestSuite/node_modules/chai/register-expect.js +1 -0
  824. package/test/EdelCsvTestSuite/node_modules/chai/register-should.js +1 -0
  825. package/test/EdelCsvTestSuite/node_modules/chai/sauce.browsers.js +106 -0
  826. package/test/EdelCsvTestSuite/node_modules/chalk/index.d.ts +415 -0
  827. package/test/EdelCsvTestSuite/node_modules/chalk/license +9 -0
  828. package/test/EdelCsvTestSuite/node_modules/chalk/package.json +102 -0
  829. package/test/EdelCsvTestSuite/node_modules/chalk/readme.md +341 -0
  830. package/test/EdelCsvTestSuite/node_modules/chalk/source/index.js +229 -0
  831. package/test/EdelCsvTestSuite/node_modules/chalk/source/templates.js +134 -0
  832. package/test/EdelCsvTestSuite/node_modules/chalk/source/util.js +39 -0
  833. package/test/EdelCsvTestSuite/node_modules/check-error/LICENSE +19 -0
  834. package/test/EdelCsvTestSuite/node_modules/check-error/README.md +207 -0
  835. package/test/EdelCsvTestSuite/node_modules/check-error/check-error.js +176 -0
  836. package/test/EdelCsvTestSuite/node_modules/check-error/index.js +172 -0
  837. package/test/EdelCsvTestSuite/node_modules/check-error/package.json +130 -0
  838. package/test/EdelCsvTestSuite/node_modules/chokidar/LICENSE +21 -0
  839. package/test/EdelCsvTestSuite/node_modules/chokidar/README.md +308 -0
  840. package/test/EdelCsvTestSuite/node_modules/chokidar/index.js +973 -0
  841. package/test/EdelCsvTestSuite/node_modules/chokidar/lib/constants.js +65 -0
  842. package/test/EdelCsvTestSuite/node_modules/chokidar/lib/fsevents-handler.js +524 -0
  843. package/test/EdelCsvTestSuite/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  844. package/test/EdelCsvTestSuite/node_modules/chokidar/package.json +119 -0
  845. package/test/EdelCsvTestSuite/node_modules/chokidar/types/index.d.ts +188 -0
  846. package/test/EdelCsvTestSuite/node_modules/cliui/CHANGELOG.md +121 -0
  847. package/test/EdelCsvTestSuite/node_modules/cliui/LICENSE.txt +14 -0
  848. package/test/EdelCsvTestSuite/node_modules/cliui/README.md +141 -0
  849. package/test/EdelCsvTestSuite/node_modules/cliui/build/index.cjs +302 -0
  850. package/test/EdelCsvTestSuite/node_modules/cliui/build/lib/index.js +287 -0
  851. package/test/EdelCsvTestSuite/node_modules/cliui/build/lib/string-utils.js +27 -0
  852. package/test/EdelCsvTestSuite/node_modules/cliui/index.mjs +13 -0
  853. package/test/EdelCsvTestSuite/node_modules/cliui/package.json +118 -0
  854. package/test/EdelCsvTestSuite/node_modules/color/LICENSE +21 -0
  855. package/test/EdelCsvTestSuite/node_modules/color/README.md +123 -0
  856. package/test/EdelCsvTestSuite/node_modules/color/index.js +482 -0
  857. package/test/EdelCsvTestSuite/node_modules/color/package.json +75 -0
  858. package/test/EdelCsvTestSuite/node_modules/color-convert/CHANGELOG.md +54 -0
  859. package/test/EdelCsvTestSuite/node_modules/color-convert/LICENSE +21 -0
  860. package/test/EdelCsvTestSuite/node_modules/color-convert/README.md +68 -0
  861. package/test/EdelCsvTestSuite/node_modules/color-convert/conversions.js +868 -0
  862. package/test/EdelCsvTestSuite/node_modules/color-convert/index.js +78 -0
  863. package/test/EdelCsvTestSuite/node_modules/color-convert/package.json +84 -0
  864. package/test/EdelCsvTestSuite/node_modules/color-convert/route.js +97 -0
  865. package/test/EdelCsvTestSuite/node_modules/color-name/.eslintrc.json +43 -0
  866. package/test/EdelCsvTestSuite/node_modules/color-name/LICENSE +8 -0
  867. package/test/EdelCsvTestSuite/node_modules/color-name/README.md +11 -0
  868. package/test/EdelCsvTestSuite/node_modules/color-name/index.js +152 -0
  869. package/test/EdelCsvTestSuite/node_modules/color-name/package.json +57 -0
  870. package/test/EdelCsvTestSuite/node_modules/color-name/test.js +7 -0
  871. package/test/EdelCsvTestSuite/node_modules/color-string/CHANGELOG.md +18 -0
  872. package/test/EdelCsvTestSuite/node_modules/color-string/LICENSE +21 -0
  873. package/test/EdelCsvTestSuite/node_modules/color-string/README.md +61 -0
  874. package/test/EdelCsvTestSuite/node_modules/color-string/index.js +234 -0
  875. package/test/EdelCsvTestSuite/node_modules/color-string/package.json +84 -0
  876. package/test/EdelCsvTestSuite/node_modules/colors/LICENSE +25 -0
  877. package/test/EdelCsvTestSuite/node_modules/colors/README.md +221 -0
  878. package/test/EdelCsvTestSuite/node_modules/colors/examples/normal-usage.js +82 -0
  879. package/test/EdelCsvTestSuite/node_modules/colors/examples/safe-string.js +79 -0
  880. package/test/EdelCsvTestSuite/node_modules/colors/index.d.ts +136 -0
  881. package/test/EdelCsvTestSuite/node_modules/colors/lib/colors.js +211 -0
  882. package/test/EdelCsvTestSuite/node_modules/colors/lib/custom/trap.js +46 -0
  883. package/test/EdelCsvTestSuite/node_modules/colors/lib/custom/zalgo.js +110 -0
  884. package/test/EdelCsvTestSuite/node_modules/colors/lib/extendStringPrototype.js +110 -0
  885. package/test/EdelCsvTestSuite/node_modules/colors/lib/index.js +13 -0
  886. package/test/EdelCsvTestSuite/node_modules/colors/lib/maps/america.js +10 -0
  887. package/test/EdelCsvTestSuite/node_modules/colors/lib/maps/rainbow.js +12 -0
  888. package/test/EdelCsvTestSuite/node_modules/colors/lib/maps/random.js +11 -0
  889. package/test/EdelCsvTestSuite/node_modules/colors/lib/maps/zebra.js +5 -0
  890. package/test/EdelCsvTestSuite/node_modules/colors/lib/styles.js +95 -0
  891. package/test/EdelCsvTestSuite/node_modules/colors/lib/system/has-flag.js +35 -0
  892. package/test/EdelCsvTestSuite/node_modules/colors/lib/system/supports-colors.js +151 -0
  893. package/test/EdelCsvTestSuite/node_modules/colors/package.json +77 -0
  894. package/test/EdelCsvTestSuite/node_modules/colors/safe.d.ts +48 -0
  895. package/test/EdelCsvTestSuite/node_modules/colors/safe.js +10 -0
  896. package/test/EdelCsvTestSuite/node_modules/colors/themes/generic-logging.js +12 -0
  897. package/test/EdelCsvTestSuite/node_modules/colorspace/LICENSE.md +20 -0
  898. package/test/EdelCsvTestSuite/node_modules/colorspace/README.md +43 -0
  899. package/test/EdelCsvTestSuite/node_modules/colorspace/index.js +29 -0
  900. package/test/EdelCsvTestSuite/node_modules/colorspace/package.json +67 -0
  901. package/test/EdelCsvTestSuite/node_modules/concat-map/.travis.yml +4 -0
  902. package/test/EdelCsvTestSuite/node_modules/concat-map/LICENSE +18 -0
  903. package/test/EdelCsvTestSuite/node_modules/concat-map/README.markdown +62 -0
  904. package/test/EdelCsvTestSuite/node_modules/concat-map/example/map.js +6 -0
  905. package/test/EdelCsvTestSuite/node_modules/concat-map/index.js +13 -0
  906. package/test/EdelCsvTestSuite/node_modules/concat-map/package.json +88 -0
  907. package/test/EdelCsvTestSuite/node_modules/concat-map/test/map.js +39 -0
  908. package/test/EdelCsvTestSuite/node_modules/core-util-is/LICENSE +19 -0
  909. package/test/EdelCsvTestSuite/node_modules/core-util-is/README.md +3 -0
  910. package/test/EdelCsvTestSuite/node_modules/core-util-is/lib/util.js +107 -0
  911. package/test/EdelCsvTestSuite/node_modules/core-util-is/package.json +72 -0
  912. package/test/EdelCsvTestSuite/node_modules/csv-parser/LICENSE +21 -0
  913. package/test/EdelCsvTestSuite/node_modules/csv-parser/README.md +358 -0
  914. package/test/EdelCsvTestSuite/node_modules/csv-parser/bin/csv-parser +94 -0
  915. package/test/EdelCsvTestSuite/node_modules/csv-parser/index.d.ts +146 -0
  916. package/test/EdelCsvTestSuite/node_modules/csv-parser/index.js +275 -0
  917. package/test/EdelCsvTestSuite/node_modules/csv-parser/package.json +131 -0
  918. package/test/EdelCsvTestSuite/node_modules/csv-writer/CHANGELOG.md +58 -0
  919. package/test/EdelCsvTestSuite/node_modules/csv-writer/README.md +328 -0
  920. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/index.js +19 -0
  921. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/index.js.map +1 -0
  922. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifier-factory.js +20 -0
  923. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifier-factory.js.map +1 -0
  924. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/abstract.js +38 -0
  925. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/abstract.js.map +1 -0
  926. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/array.js +33 -0
  927. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/array.js.map +1 -0
  928. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/object.js +57 -0
  929. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-stringifiers/object.js.map +1 -0
  930. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-writer-factory.js +30 -0
  931. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-writer-factory.js.map +1 -0
  932. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-writer.js +76 -0
  933. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/csv-writer.js.map +1 -0
  934. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/field-stringifier.js +69 -0
  935. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/field-stringifier.js.map +1 -0
  936. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/file-writer.js +72 -0
  937. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/file-writer.js.map +1 -0
  938. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/lang/object.js +6 -0
  939. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/lang/object.js.map +1 -0
  940. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/lang/promise.js +28 -0
  941. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/lang/promise.js.map +1 -0
  942. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/record.js +3 -0
  943. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/lib/record.js.map +1 -0
  944. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/csv-stringifiers/array.test.js +114 -0
  945. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/csv-stringifiers/array.test.js.map +1 -0
  946. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/csv-stringifiers/object.test.js +156 -0
  947. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/csv-stringifiers/object.test.js.map +1 -0
  948. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/field-stringifier.test.js +79 -0
  949. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/field-stringifier.test.js.map +1 -0
  950. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/helper/delimiter.js +10 -0
  951. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/helper/delimiter.js.map +1 -0
  952. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/helper.js +13 -0
  953. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/helper.js.map +1 -0
  954. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/lang/promise.test.js +76 -0
  955. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/lang/promise.test.js.map +1 -0
  956. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/write-array-records.test.js +209 -0
  957. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/write-array-records.test.js.map +1 -0
  958. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/write-object-records.test.js +252 -0
  959. package/test/EdelCsvTestSuite/node_modules/csv-writer/dist/test/write-object-records.test.js.map +1 -0
  960. package/test/EdelCsvTestSuite/node_modules/csv-writer/package.json +74 -0
  961. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/index.ts +21 -0
  962. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-stringifier-factory.ts +33 -0
  963. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-stringifiers/abstract.ts +43 -0
  964. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-stringifiers/array.ts +20 -0
  965. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-stringifiers/object.ts +36 -0
  966. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-writer-factory.ts +49 -0
  967. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/csv-writer.ts +27 -0
  968. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/field-stringifier.ts +47 -0
  969. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/file-writer.ts +26 -0
  970. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/lang/object.ts +6 -0
  971. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/lang/promise.ts +14 -0
  972. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/lib/record.ts +5 -0
  973. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/csv-stringifiers/array.test.ts +100 -0
  974. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/csv-stringifiers/object.test.ts +150 -0
  975. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/field-stringifier.test.ts +97 -0
  976. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/helper/delimiter.ts +6 -0
  977. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/helper.ts +16 -0
  978. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/lang/promise.test.ts +21 -0
  979. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/write-array-records.test.ts +124 -0
  980. package/test/EdelCsvTestSuite/node_modules/csv-writer/src/test/write-object-records.test.ts +158 -0
  981. package/test/EdelCsvTestSuite/node_modules/date-format/CHANGELOG.md +84 -0
  982. package/test/EdelCsvTestSuite/node_modules/date-format/LICENSE +20 -0
  983. package/test/EdelCsvTestSuite/node_modules/date-format/README.md +73 -0
  984. package/test/EdelCsvTestSuite/node_modules/date-format/lib/index.js +218 -0
  985. package/test/EdelCsvTestSuite/node_modules/date-format/package.json +78 -0
  986. package/test/EdelCsvTestSuite/node_modules/debug/LICENSE +20 -0
  987. package/test/EdelCsvTestSuite/node_modules/debug/README.md +481 -0
  988. package/test/EdelCsvTestSuite/node_modules/debug/package.json +102 -0
  989. package/test/EdelCsvTestSuite/node_modules/debug/src/browser.js +269 -0
  990. package/test/EdelCsvTestSuite/node_modules/debug/src/common.js +274 -0
  991. package/test/EdelCsvTestSuite/node_modules/debug/src/index.js +10 -0
  992. package/test/EdelCsvTestSuite/node_modules/debug/src/node.js +263 -0
  993. package/test/EdelCsvTestSuite/node_modules/decamelize/index.d.ts +20 -0
  994. package/test/EdelCsvTestSuite/node_modules/decamelize/index.js +12 -0
  995. package/test/EdelCsvTestSuite/node_modules/decamelize/license +9 -0
  996. package/test/EdelCsvTestSuite/node_modules/decamelize/package.json +72 -0
  997. package/test/EdelCsvTestSuite/node_modules/decamelize/readme.md +51 -0
  998. package/test/EdelCsvTestSuite/node_modules/deep-eql/LICENSE +19 -0
  999. package/test/EdelCsvTestSuite/node_modules/deep-eql/README.md +116 -0
  1000. package/test/EdelCsvTestSuite/node_modules/deep-eql/deep-eql.js +833 -0
  1001. package/test/EdelCsvTestSuite/node_modules/deep-eql/index.js +455 -0
  1002. package/test/EdelCsvTestSuite/node_modules/deep-eql/package.json +131 -0
  1003. package/test/EdelCsvTestSuite/node_modules/diff/CONTRIBUTING.md +39 -0
  1004. package/test/EdelCsvTestSuite/node_modules/diff/LICENSE +31 -0
  1005. package/test/EdelCsvTestSuite/node_modules/diff/README.md +208 -0
  1006. package/test/EdelCsvTestSuite/node_modules/diff/dist/diff.js +1582 -0
  1007. package/test/EdelCsvTestSuite/node_modules/diff/lib/convert/dmp.js +32 -0
  1008. package/test/EdelCsvTestSuite/node_modules/diff/lib/convert/xml.js +42 -0
  1009. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/array.js +45 -0
  1010. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/base.js +304 -0
  1011. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/character.js +37 -0
  1012. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/css.js +41 -0
  1013. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/json.js +163 -0
  1014. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/line.js +89 -0
  1015. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/sentence.js +41 -0
  1016. package/test/EdelCsvTestSuite/node_modules/diff/lib/diff/word.js +108 -0
  1017. package/test/EdelCsvTestSuite/node_modules/diff/lib/index.es6.js +1553 -0
  1018. package/test/EdelCsvTestSuite/node_modules/diff/lib/index.js +216 -0
  1019. package/test/EdelCsvTestSuite/node_modules/diff/lib/index.mjs +1553 -0
  1020. package/test/EdelCsvTestSuite/node_modules/diff/lib/patch/apply.js +238 -0
  1021. package/test/EdelCsvTestSuite/node_modules/diff/lib/patch/create.js +267 -0
  1022. package/test/EdelCsvTestSuite/node_modules/diff/lib/patch/merge.js +613 -0
  1023. package/test/EdelCsvTestSuite/node_modules/diff/lib/patch/parse.js +167 -0
  1024. package/test/EdelCsvTestSuite/node_modules/diff/lib/util/array.js +32 -0
  1025. package/test/EdelCsvTestSuite/node_modules/diff/lib/util/distance-iterator.js +57 -0
  1026. package/test/EdelCsvTestSuite/node_modules/diff/lib/util/params.js +24 -0
  1027. package/test/EdelCsvTestSuite/node_modules/diff/package.json +118 -0
  1028. package/test/EdelCsvTestSuite/node_modules/diff/release-notes.md +303 -0
  1029. package/test/EdelCsvTestSuite/node_modules/diff/runtime.js +3 -0
  1030. package/test/EdelCsvTestSuite/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  1031. package/test/EdelCsvTestSuite/node_modules/emoji-regex/README.md +73 -0
  1032. package/test/EdelCsvTestSuite/node_modules/emoji-regex/es2015/index.js +6 -0
  1033. package/test/EdelCsvTestSuite/node_modules/emoji-regex/es2015/text.js +6 -0
  1034. package/test/EdelCsvTestSuite/node_modules/emoji-regex/index.d.ts +23 -0
  1035. package/test/EdelCsvTestSuite/node_modules/emoji-regex/index.js +6 -0
  1036. package/test/EdelCsvTestSuite/node_modules/emoji-regex/package.json +77 -0
  1037. package/test/EdelCsvTestSuite/node_modules/emoji-regex/text.js +6 -0
  1038. package/test/EdelCsvTestSuite/node_modules/enabled/.travis.yml +9 -0
  1039. package/test/EdelCsvTestSuite/node_modules/enabled/LICENSE +20 -0
  1040. package/test/EdelCsvTestSuite/node_modules/enabled/README.md +68 -0
  1041. package/test/EdelCsvTestSuite/node_modules/enabled/index.js +34 -0
  1042. package/test/EdelCsvTestSuite/node_modules/enabled/package.json +67 -0
  1043. package/test/EdelCsvTestSuite/node_modules/enabled/test.js +39 -0
  1044. package/test/EdelCsvTestSuite/node_modules/escalade/dist/index.js +22 -0
  1045. package/test/EdelCsvTestSuite/node_modules/escalade/dist/index.mjs +22 -0
  1046. package/test/EdelCsvTestSuite/node_modules/escalade/index.d.ts +3 -0
  1047. package/test/EdelCsvTestSuite/node_modules/escalade/license +9 -0
  1048. package/test/EdelCsvTestSuite/node_modules/escalade/package.json +93 -0
  1049. package/test/EdelCsvTestSuite/node_modules/escalade/readme.md +211 -0
  1050. package/test/EdelCsvTestSuite/node_modules/escalade/sync/index.d.ts +2 -0
  1051. package/test/EdelCsvTestSuite/node_modules/escalade/sync/index.js +18 -0
  1052. package/test/EdelCsvTestSuite/node_modules/escalade/sync/index.mjs +18 -0
  1053. package/test/EdelCsvTestSuite/node_modules/escape-string-regexp/index.d.ts +18 -0
  1054. package/test/EdelCsvTestSuite/node_modules/escape-string-regexp/index.js +13 -0
  1055. package/test/EdelCsvTestSuite/node_modules/escape-string-regexp/license +9 -0
  1056. package/test/EdelCsvTestSuite/node_modules/escape-string-regexp/package.json +70 -0
  1057. package/test/EdelCsvTestSuite/node_modules/escape-string-regexp/readme.md +34 -0
  1058. package/test/EdelCsvTestSuite/node_modules/fast-csv/CHANGELOG.md +88 -0
  1059. package/test/EdelCsvTestSuite/node_modules/fast-csv/LICENSE +21 -0
  1060. package/test/EdelCsvTestSuite/node_modules/fast-csv/README.md +20 -0
  1061. package/test/EdelCsvTestSuite/node_modules/fast-csv/build/src/index.d.ts +2 -0
  1062. package/test/EdelCsvTestSuite/node_modules/fast-csv/build/src/index.js +20 -0
  1063. package/test/EdelCsvTestSuite/node_modules/fast-csv/build/src/index.js.map +1 -0
  1064. package/test/EdelCsvTestSuite/node_modules/fast-csv/package.json +78 -0
  1065. package/test/EdelCsvTestSuite/node_modules/fecha/CHANGELOG.md +71 -0
  1066. package/test/EdelCsvTestSuite/node_modules/fecha/LICENSE +22 -0
  1067. package/test/EdelCsvTestSuite/node_modules/fecha/README.md +320 -0
  1068. package/test/EdelCsvTestSuite/node_modules/fecha/dist/fecha.min.js +2 -0
  1069. package/test/EdelCsvTestSuite/node_modules/fecha/dist/fecha.min.js.map +1 -0
  1070. package/test/EdelCsvTestSuite/node_modules/fecha/lib/fecha.d.ts +52 -0
  1071. package/test/EdelCsvTestSuite/node_modules/fecha/lib/fecha.js +386 -0
  1072. package/test/EdelCsvTestSuite/node_modules/fecha/lib/fecha.js.map +1 -0
  1073. package/test/EdelCsvTestSuite/node_modules/fecha/lib/fecha.umd.js +401 -0
  1074. package/test/EdelCsvTestSuite/node_modules/fecha/lib/fecha.umd.js.map +1 -0
  1075. package/test/EdelCsvTestSuite/node_modules/fecha/package.json +86 -0
  1076. package/test/EdelCsvTestSuite/node_modules/fecha/src/fecha.ts +506 -0
  1077. package/test/EdelCsvTestSuite/node_modules/fill-range/LICENSE +21 -0
  1078. package/test/EdelCsvTestSuite/node_modules/fill-range/README.md +237 -0
  1079. package/test/EdelCsvTestSuite/node_modules/fill-range/index.js +249 -0
  1080. package/test/EdelCsvTestSuite/node_modules/fill-range/package.json +114 -0
  1081. package/test/EdelCsvTestSuite/node_modules/find-up/index.d.ts +138 -0
  1082. package/test/EdelCsvTestSuite/node_modules/find-up/index.js +89 -0
  1083. package/test/EdelCsvTestSuite/node_modules/find-up/license +9 -0
  1084. package/test/EdelCsvTestSuite/node_modules/find-up/package.json +86 -0
  1085. package/test/EdelCsvTestSuite/node_modules/find-up/readme.md +151 -0
  1086. package/test/EdelCsvTestSuite/node_modules/flat/.travis.yml +8 -0
  1087. package/test/EdelCsvTestSuite/node_modules/flat/LICENSE +12 -0
  1088. package/test/EdelCsvTestSuite/node_modules/flat/README.md +236 -0
  1089. package/test/EdelCsvTestSuite/node_modules/flat/cli.js +42 -0
  1090. package/test/EdelCsvTestSuite/node_modules/flat/index.js +158 -0
  1091. package/test/EdelCsvTestSuite/node_modules/flat/package.json +68 -0
  1092. package/test/EdelCsvTestSuite/node_modules/flat/test/test.js +643 -0
  1093. package/test/EdelCsvTestSuite/node_modules/flatted/.github/FUNDING.yml +8 -0
  1094. package/test/EdelCsvTestSuite/node_modules/flatted/.github/workflows/node.js.yml +31 -0
  1095. package/test/EdelCsvTestSuite/node_modules/flatted/LICENSE +15 -0
  1096. package/test/EdelCsvTestSuite/node_modules/flatted/README.md +111 -0
  1097. package/test/EdelCsvTestSuite/node_modules/flatted/SPECS.md +94 -0
  1098. package/test/EdelCsvTestSuite/node_modules/flatted/cjs/index.js +99 -0
  1099. package/test/EdelCsvTestSuite/node_modules/flatted/cjs/package.json +1 -0
  1100. package/test/EdelCsvTestSuite/node_modules/flatted/es.js +2 -0
  1101. package/test/EdelCsvTestSuite/node_modules/flatted/esm/index.js +94 -0
  1102. package/test/EdelCsvTestSuite/node_modules/flatted/flatted.jpg +0 -0
  1103. package/test/EdelCsvTestSuite/node_modules/flatted/index.js +127 -0
  1104. package/test/EdelCsvTestSuite/node_modules/flatted/min.js +2 -0
  1105. package/test/EdelCsvTestSuite/node_modules/flatted/package.json +88 -0
  1106. package/test/EdelCsvTestSuite/node_modules/flatted/php/flatted.php +156 -0
  1107. package/test/EdelCsvTestSuite/node_modules/flatted/types.d.ts +62 -0
  1108. package/test/EdelCsvTestSuite/node_modules/fn.name/.gitattributes +1 -0
  1109. package/test/EdelCsvTestSuite/node_modules/fn.name/.travis.yml +10 -0
  1110. package/test/EdelCsvTestSuite/node_modules/fn.name/LICENSE +22 -0
  1111. package/test/EdelCsvTestSuite/node_modules/fn.name/README.md +42 -0
  1112. package/test/EdelCsvTestSuite/node_modules/fn.name/index.js +42 -0
  1113. package/test/EdelCsvTestSuite/node_modules/fn.name/package.json +67 -0
  1114. package/test/EdelCsvTestSuite/node_modules/fn.name/test.js +73 -0
  1115. package/test/EdelCsvTestSuite/node_modules/fs-extra/LICENSE +15 -0
  1116. package/test/EdelCsvTestSuite/node_modules/fs-extra/README.md +262 -0
  1117. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/copy/copy-sync.js +169 -0
  1118. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/copy/copy.js +235 -0
  1119. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/copy/index.js +7 -0
  1120. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/empty/index.js +39 -0
  1121. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/file.js +69 -0
  1122. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/index.js +23 -0
  1123. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/link.js +64 -0
  1124. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/symlink-paths.js +99 -0
  1125. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/symlink-type.js +31 -0
  1126. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/ensure/symlink.js +82 -0
  1127. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/fs/index.js +128 -0
  1128. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/index.js +16 -0
  1129. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/json/index.js +16 -0
  1130. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/json/jsonfile.js +11 -0
  1131. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/json/output-json-sync.js +12 -0
  1132. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/json/output-json.js +12 -0
  1133. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/mkdirs/index.js +14 -0
  1134. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/mkdirs/make-dir.js +27 -0
  1135. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/mkdirs/utils.js +21 -0
  1136. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/move/index.js +7 -0
  1137. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/move/move-sync.js +54 -0
  1138. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/move/move.js +75 -0
  1139. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/output-file/index.js +40 -0
  1140. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/path-exists/index.js +12 -0
  1141. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/remove/index.js +22 -0
  1142. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/remove/rimraf.js +302 -0
  1143. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/util/stat.js +154 -0
  1144. package/test/EdelCsvTestSuite/node_modules/fs-extra/lib/util/utimes.js +26 -0
  1145. package/test/EdelCsvTestSuite/node_modules/fs-extra/package.json +98 -0
  1146. package/test/EdelCsvTestSuite/node_modules/fs.realpath/LICENSE +43 -0
  1147. package/test/EdelCsvTestSuite/node_modules/fs.realpath/README.md +33 -0
  1148. package/test/EdelCsvTestSuite/node_modules/fs.realpath/index.js +66 -0
  1149. package/test/EdelCsvTestSuite/node_modules/fs.realpath/old.js +303 -0
  1150. package/test/EdelCsvTestSuite/node_modules/fs.realpath/package.json +59 -0
  1151. package/test/EdelCsvTestSuite/node_modules/get-caller-file/LICENSE.md +6 -0
  1152. package/test/EdelCsvTestSuite/node_modules/get-caller-file/README.md +41 -0
  1153. package/test/EdelCsvTestSuite/node_modules/get-caller-file/index.d.ts +2 -0
  1154. package/test/EdelCsvTestSuite/node_modules/get-caller-file/index.js +22 -0
  1155. package/test/EdelCsvTestSuite/node_modules/get-caller-file/index.js.map +1 -0
  1156. package/test/EdelCsvTestSuite/node_modules/get-caller-file/package.json +69 -0
  1157. package/test/EdelCsvTestSuite/node_modules/get-func-name/LICENSE +19 -0
  1158. package/test/EdelCsvTestSuite/node_modules/get-func-name/README.md +123 -0
  1159. package/test/EdelCsvTestSuite/node_modules/get-func-name/get-func-name.js +48 -0
  1160. package/test/EdelCsvTestSuite/node_modules/get-func-name/index.js +44 -0
  1161. package/test/EdelCsvTestSuite/node_modules/get-func-name/package.json +134 -0
  1162. package/test/EdelCsvTestSuite/node_modules/glob/LICENSE +21 -0
  1163. package/test/EdelCsvTestSuite/node_modules/glob/README.md +378 -0
  1164. package/test/EdelCsvTestSuite/node_modules/glob/common.js +236 -0
  1165. package/test/EdelCsvTestSuite/node_modules/glob/glob.js +787 -0
  1166. package/test/EdelCsvTestSuite/node_modules/glob/package.json +87 -0
  1167. package/test/EdelCsvTestSuite/node_modules/glob/sync.js +483 -0
  1168. package/test/EdelCsvTestSuite/node_modules/glob-parent/CHANGELOG.md +110 -0
  1169. package/test/EdelCsvTestSuite/node_modules/glob-parent/LICENSE +15 -0
  1170. package/test/EdelCsvTestSuite/node_modules/glob-parent/README.md +137 -0
  1171. package/test/EdelCsvTestSuite/node_modules/glob-parent/index.js +42 -0
  1172. package/test/EdelCsvTestSuite/node_modules/glob-parent/package.json +90 -0
  1173. package/test/EdelCsvTestSuite/node_modules/graceful-fs/LICENSE +15 -0
  1174. package/test/EdelCsvTestSuite/node_modules/graceful-fs/README.md +143 -0
  1175. package/test/EdelCsvTestSuite/node_modules/graceful-fs/clone.js +23 -0
  1176. package/test/EdelCsvTestSuite/node_modules/graceful-fs/graceful-fs.js +448 -0
  1177. package/test/EdelCsvTestSuite/node_modules/graceful-fs/legacy-streams.js +118 -0
  1178. package/test/EdelCsvTestSuite/node_modules/graceful-fs/package.json +80 -0
  1179. package/test/EdelCsvTestSuite/node_modules/graceful-fs/polyfills.js +355 -0
  1180. package/test/EdelCsvTestSuite/node_modules/growl/.eslintrc.json +14 -0
  1181. package/test/EdelCsvTestSuite/node_modules/growl/.tags +195 -0
  1182. package/test/EdelCsvTestSuite/node_modules/growl/.tags1 +166 -0
  1183. package/test/EdelCsvTestSuite/node_modules/growl/.travis.yml +21 -0
  1184. package/test/EdelCsvTestSuite/node_modules/growl/History.md +77 -0
  1185. package/test/EdelCsvTestSuite/node_modules/growl/Readme.md +109 -0
  1186. package/test/EdelCsvTestSuite/node_modules/growl/lib/growl.js +340 -0
  1187. package/test/EdelCsvTestSuite/node_modules/growl/package.json +67 -0
  1188. package/test/EdelCsvTestSuite/node_modules/growl/test.js +31 -0
  1189. package/test/EdelCsvTestSuite/node_modules/has-flag/index.d.ts +39 -0
  1190. package/test/EdelCsvTestSuite/node_modules/has-flag/index.js +8 -0
  1191. package/test/EdelCsvTestSuite/node_modules/has-flag/license +9 -0
  1192. package/test/EdelCsvTestSuite/node_modules/has-flag/package.json +79 -0
  1193. package/test/EdelCsvTestSuite/node_modules/has-flag/readme.md +89 -0
  1194. package/test/EdelCsvTestSuite/node_modules/he/LICENSE-MIT.txt +20 -0
  1195. package/test/EdelCsvTestSuite/node_modules/he/README.md +379 -0
  1196. package/test/EdelCsvTestSuite/node_modules/he/bin/he +148 -0
  1197. package/test/EdelCsvTestSuite/node_modules/he/he.js +345 -0
  1198. package/test/EdelCsvTestSuite/node_modules/he/man/he.1 +78 -0
  1199. package/test/EdelCsvTestSuite/node_modules/he/package.json +90 -0
  1200. package/test/EdelCsvTestSuite/node_modules/immediate/LICENSE.txt +20 -0
  1201. package/test/EdelCsvTestSuite/node_modules/immediate/README.md +93 -0
  1202. package/test/EdelCsvTestSuite/node_modules/immediate/dist/immediate.js +75 -0
  1203. package/test/EdelCsvTestSuite/node_modules/immediate/dist/immediate.min.js +1 -0
  1204. package/test/EdelCsvTestSuite/node_modules/immediate/lib/browser.js +69 -0
  1205. package/test/EdelCsvTestSuite/node_modules/immediate/lib/index.js +73 -0
  1206. package/test/EdelCsvTestSuite/node_modules/immediate/package.json +83 -0
  1207. package/test/EdelCsvTestSuite/node_modules/inflight/LICENSE +15 -0
  1208. package/test/EdelCsvTestSuite/node_modules/inflight/README.md +37 -0
  1209. package/test/EdelCsvTestSuite/node_modules/inflight/inflight.js +54 -0
  1210. package/test/EdelCsvTestSuite/node_modules/inflight/package.json +58 -0
  1211. package/test/EdelCsvTestSuite/node_modules/inherits/LICENSE +16 -0
  1212. package/test/EdelCsvTestSuite/node_modules/inherits/README.md +42 -0
  1213. package/test/EdelCsvTestSuite/node_modules/inherits/inherits.js +9 -0
  1214. package/test/EdelCsvTestSuite/node_modules/inherits/inherits_browser.js +27 -0
  1215. package/test/EdelCsvTestSuite/node_modules/inherits/package.json +67 -0
  1216. package/test/EdelCsvTestSuite/node_modules/ini/LICENSE +15 -0
  1217. package/test/EdelCsvTestSuite/node_modules/ini/README.md +102 -0
  1218. package/test/EdelCsvTestSuite/node_modules/ini/ini.js +206 -0
  1219. package/test/EdelCsvTestSuite/node_modules/ini/package.json +69 -0
  1220. package/test/EdelCsvTestSuite/node_modules/is-arrayish/LICENSE +21 -0
  1221. package/test/EdelCsvTestSuite/node_modules/is-arrayish/README.md +16 -0
  1222. package/test/EdelCsvTestSuite/node_modules/is-arrayish/index.js +9 -0
  1223. package/test/EdelCsvTestSuite/node_modules/is-arrayish/package.json +80 -0
  1224. package/test/EdelCsvTestSuite/node_modules/is-arrayish/yarn-error.log +1443 -0
  1225. package/test/EdelCsvTestSuite/node_modules/is-binary-path/index.d.ts +17 -0
  1226. package/test/EdelCsvTestSuite/node_modules/is-binary-path/index.js +7 -0
  1227. package/test/EdelCsvTestSuite/node_modules/is-binary-path/license +9 -0
  1228. package/test/EdelCsvTestSuite/node_modules/is-binary-path/package.json +72 -0
  1229. package/test/EdelCsvTestSuite/node_modules/is-binary-path/readme.md +34 -0
  1230. package/test/EdelCsvTestSuite/node_modules/is-extglob/LICENSE +21 -0
  1231. package/test/EdelCsvTestSuite/node_modules/is-extglob/README.md +107 -0
  1232. package/test/EdelCsvTestSuite/node_modules/is-extglob/index.js +20 -0
  1233. package/test/EdelCsvTestSuite/node_modules/is-extglob/package.json +100 -0
  1234. package/test/EdelCsvTestSuite/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  1235. package/test/EdelCsvTestSuite/node_modules/is-fullwidth-code-point/index.js +50 -0
  1236. package/test/EdelCsvTestSuite/node_modules/is-fullwidth-code-point/license +9 -0
  1237. package/test/EdelCsvTestSuite/node_modules/is-fullwidth-code-point/package.json +74 -0
  1238. package/test/EdelCsvTestSuite/node_modules/is-fullwidth-code-point/readme.md +39 -0
  1239. package/test/EdelCsvTestSuite/node_modules/is-glob/LICENSE +21 -0
  1240. package/test/EdelCsvTestSuite/node_modules/is-glob/README.md +206 -0
  1241. package/test/EdelCsvTestSuite/node_modules/is-glob/index.js +150 -0
  1242. package/test/EdelCsvTestSuite/node_modules/is-glob/package.json +122 -0
  1243. package/test/EdelCsvTestSuite/node_modules/is-number/LICENSE +21 -0
  1244. package/test/EdelCsvTestSuite/node_modules/is-number/README.md +187 -0
  1245. package/test/EdelCsvTestSuite/node_modules/is-number/index.js +18 -0
  1246. package/test/EdelCsvTestSuite/node_modules/is-number/package.json +122 -0
  1247. package/test/EdelCsvTestSuite/node_modules/is-plain-obj/index.d.ts +29 -0
  1248. package/test/EdelCsvTestSuite/node_modules/is-plain-obj/index.js +10 -0
  1249. package/test/EdelCsvTestSuite/node_modules/is-plain-obj/license +9 -0
  1250. package/test/EdelCsvTestSuite/node_modules/is-plain-obj/package.json +70 -0
  1251. package/test/EdelCsvTestSuite/node_modules/is-plain-obj/readme.md +54 -0
  1252. package/test/EdelCsvTestSuite/node_modules/is-stream/index.d.ts +79 -0
  1253. package/test/EdelCsvTestSuite/node_modules/is-stream/index.js +28 -0
  1254. package/test/EdelCsvTestSuite/node_modules/is-stream/license +9 -0
  1255. package/test/EdelCsvTestSuite/node_modules/is-stream/package.json +78 -0
  1256. package/test/EdelCsvTestSuite/node_modules/is-stream/readme.md +60 -0
  1257. package/test/EdelCsvTestSuite/node_modules/is-unicode-supported/index.d.ts +14 -0
  1258. package/test/EdelCsvTestSuite/node_modules/is-unicode-supported/index.js +13 -0
  1259. package/test/EdelCsvTestSuite/node_modules/is-unicode-supported/license +9 -0
  1260. package/test/EdelCsvTestSuite/node_modules/is-unicode-supported/package.json +73 -0
  1261. package/test/EdelCsvTestSuite/node_modules/is-unicode-supported/readme.md +35 -0
  1262. package/test/EdelCsvTestSuite/node_modules/isarray/.travis.yml +4 -0
  1263. package/test/EdelCsvTestSuite/node_modules/isarray/Makefile +6 -0
  1264. package/test/EdelCsvTestSuite/node_modules/isarray/README.md +60 -0
  1265. package/test/EdelCsvTestSuite/node_modules/isarray/component.json +19 -0
  1266. package/test/EdelCsvTestSuite/node_modules/isarray/index.js +5 -0
  1267. package/test/EdelCsvTestSuite/node_modules/isarray/package.json +77 -0
  1268. package/test/EdelCsvTestSuite/node_modules/isarray/test.js +20 -0
  1269. package/test/EdelCsvTestSuite/node_modules/isexe/LICENSE +15 -0
  1270. package/test/EdelCsvTestSuite/node_modules/isexe/README.md +51 -0
  1271. package/test/EdelCsvTestSuite/node_modules/isexe/index.js +57 -0
  1272. package/test/EdelCsvTestSuite/node_modules/isexe/mode.js +41 -0
  1273. package/test/EdelCsvTestSuite/node_modules/isexe/package.json +60 -0
  1274. package/test/EdelCsvTestSuite/node_modules/isexe/test/basic.js +221 -0
  1275. package/test/EdelCsvTestSuite/node_modules/isexe/windows.js +42 -0
  1276. package/test/EdelCsvTestSuite/node_modules/joi/LICENSE.md +10 -0
  1277. package/test/EdelCsvTestSuite/node_modules/joi/README.md +15 -0
  1278. package/test/EdelCsvTestSuite/node_modules/joi/dist/joi-browser.min.js +1 -0
  1279. package/test/EdelCsvTestSuite/node_modules/joi/lib/annotate.js +175 -0
  1280. package/test/EdelCsvTestSuite/node_modules/joi/lib/base.js +1068 -0
  1281. package/test/EdelCsvTestSuite/node_modules/joi/lib/cache.js +143 -0
  1282. package/test/EdelCsvTestSuite/node_modules/joi/lib/common.js +216 -0
  1283. package/test/EdelCsvTestSuite/node_modules/joi/lib/compile.js +283 -0
  1284. package/test/EdelCsvTestSuite/node_modules/joi/lib/errors.js +271 -0
  1285. package/test/EdelCsvTestSuite/node_modules/joi/lib/extend.js +312 -0
  1286. package/test/EdelCsvTestSuite/node_modules/joi/lib/index.d.ts +2259 -0
  1287. package/test/EdelCsvTestSuite/node_modules/joi/lib/index.js +283 -0
  1288. package/test/EdelCsvTestSuite/node_modules/joi/lib/manifest.js +476 -0
  1289. package/test/EdelCsvTestSuite/node_modules/joi/lib/messages.js +178 -0
  1290. package/test/EdelCsvTestSuite/node_modules/joi/lib/modify.js +267 -0
  1291. package/test/EdelCsvTestSuite/node_modules/joi/lib/ref.js +414 -0
  1292. package/test/EdelCsvTestSuite/node_modules/joi/lib/schemas.js +302 -0
  1293. package/test/EdelCsvTestSuite/node_modules/joi/lib/state.js +152 -0
  1294. package/test/EdelCsvTestSuite/node_modules/joi/lib/template.js +441 -0
  1295. package/test/EdelCsvTestSuite/node_modules/joi/lib/trace.js +346 -0
  1296. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/alternatives.js +355 -0
  1297. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/any.js +174 -0
  1298. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/array.js +806 -0
  1299. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/binary.js +98 -0
  1300. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/boolean.js +150 -0
  1301. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/date.js +233 -0
  1302. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/function.js +93 -0
  1303. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/keys.js +1047 -0
  1304. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/link.js +168 -0
  1305. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/number.js +335 -0
  1306. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/object.js +22 -0
  1307. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/string.js +828 -0
  1308. package/test/EdelCsvTestSuite/node_modules/joi/lib/types/symbol.js +102 -0
  1309. package/test/EdelCsvTestSuite/node_modules/joi/lib/validator.js +653 -0
  1310. package/test/EdelCsvTestSuite/node_modules/joi/lib/values.js +263 -0
  1311. package/test/EdelCsvTestSuite/node_modules/joi/package.json +69 -0
  1312. package/test/EdelCsvTestSuite/node_modules/js-yaml/CHANGELOG.md +616 -0
  1313. package/test/EdelCsvTestSuite/node_modules/js-yaml/LICENSE +21 -0
  1314. package/test/EdelCsvTestSuite/node_modules/js-yaml/README.md +246 -0
  1315. package/test/EdelCsvTestSuite/node_modules/js-yaml/bin/js-yaml.js +126 -0
  1316. package/test/EdelCsvTestSuite/node_modules/js-yaml/dist/js-yaml.js +3874 -0
  1317. package/test/EdelCsvTestSuite/node_modules/js-yaml/dist/js-yaml.min.js +2 -0
  1318. package/test/EdelCsvTestSuite/node_modules/js-yaml/dist/js-yaml.mjs +3851 -0
  1319. package/test/EdelCsvTestSuite/node_modules/js-yaml/index.js +47 -0
  1320. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/common.js +59 -0
  1321. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/dumper.js +965 -0
  1322. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/exception.js +55 -0
  1323. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/loader.js +1727 -0
  1324. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/schema/core.js +11 -0
  1325. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/schema/default.js +22 -0
  1326. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/schema/failsafe.js +17 -0
  1327. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/schema/json.js +19 -0
  1328. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/schema.js +121 -0
  1329. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/snippet.js +101 -0
  1330. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/binary.js +125 -0
  1331. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/bool.js +35 -0
  1332. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/float.js +97 -0
  1333. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/int.js +156 -0
  1334. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/map.js +8 -0
  1335. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/merge.js +12 -0
  1336. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/null.js +35 -0
  1337. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/omap.js +44 -0
  1338. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/pairs.js +53 -0
  1339. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/seq.js +8 -0
  1340. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/set.js +29 -0
  1341. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/str.js +8 -0
  1342. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type/timestamp.js +88 -0
  1343. package/test/EdelCsvTestSuite/node_modules/js-yaml/lib/type.js +66 -0
  1344. package/test/EdelCsvTestSuite/node_modules/js-yaml/package.json +113 -0
  1345. package/test/EdelCsvTestSuite/node_modules/jsonfile/CHANGELOG.md +171 -0
  1346. package/test/EdelCsvTestSuite/node_modules/jsonfile/LICENSE +15 -0
  1347. package/test/EdelCsvTestSuite/node_modules/jsonfile/README.md +230 -0
  1348. package/test/EdelCsvTestSuite/node_modules/jsonfile/index.js +88 -0
  1349. package/test/EdelCsvTestSuite/node_modules/jsonfile/package.json +73 -0
  1350. package/test/EdelCsvTestSuite/node_modules/jsonfile/utils.js +14 -0
  1351. package/test/EdelCsvTestSuite/node_modules/jszip/.codeclimate.yml +16 -0
  1352. package/test/EdelCsvTestSuite/node_modules/jszip/.editorconfig +8 -0
  1353. package/test/EdelCsvTestSuite/node_modules/jszip/.github/workflows/pr.yaml +42 -0
  1354. package/test/EdelCsvTestSuite/node_modules/jszip/.jshintignore +1 -0
  1355. package/test/EdelCsvTestSuite/node_modules/jszip/.jshintrc +21 -0
  1356. package/test/EdelCsvTestSuite/node_modules/jszip/.travis.yml +17 -0
  1357. package/test/EdelCsvTestSuite/node_modules/jszip/CHANGES.md +187 -0
  1358. package/test/EdelCsvTestSuite/node_modules/jszip/LICENSE.markdown +651 -0
  1359. package/test/EdelCsvTestSuite/node_modules/jszip/README.markdown +35 -0
  1360. package/test/EdelCsvTestSuite/node_modules/jszip/dist/jszip.js +11402 -0
  1361. package/test/EdelCsvTestSuite/node_modules/jszip/dist/jszip.min.js +13 -0
  1362. package/test/EdelCsvTestSuite/node_modules/jszip/index.d.ts +335 -0
  1363. package/test/EdelCsvTestSuite/node_modules/jszip/lib/base64.js +106 -0
  1364. package/test/EdelCsvTestSuite/node_modules/jszip/lib/compressedObject.js +74 -0
  1365. package/test/EdelCsvTestSuite/node_modules/jszip/lib/compressions.js +14 -0
  1366. package/test/EdelCsvTestSuite/node_modules/jszip/lib/crc32.js +77 -0
  1367. package/test/EdelCsvTestSuite/node_modules/jszip/lib/defaults.js +11 -0
  1368. package/test/EdelCsvTestSuite/node_modules/jszip/lib/external.js +19 -0
  1369. package/test/EdelCsvTestSuite/node_modules/jszip/lib/flate.js +85 -0
  1370. package/test/EdelCsvTestSuite/node_modules/jszip/lib/generate/ZipFileWorker.js +540 -0
  1371. package/test/EdelCsvTestSuite/node_modules/jszip/lib/generate/index.js +57 -0
  1372. package/test/EdelCsvTestSuite/node_modules/jszip/lib/index.js +55 -0
  1373. package/test/EdelCsvTestSuite/node_modules/jszip/lib/license_header.js +11 -0
  1374. package/test/EdelCsvTestSuite/node_modules/jszip/lib/load.js +88 -0
  1375. package/test/EdelCsvTestSuite/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +74 -0
  1376. package/test/EdelCsvTestSuite/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +42 -0
  1377. package/test/EdelCsvTestSuite/node_modules/jszip/lib/nodejsUtils.js +57 -0
  1378. package/test/EdelCsvTestSuite/node_modules/jszip/lib/object.js +389 -0
  1379. package/test/EdelCsvTestSuite/node_modules/jszip/lib/readable-stream-browser.js +9 -0
  1380. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/ArrayReader.js +57 -0
  1381. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/DataReader.js +116 -0
  1382. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/NodeBufferReader.js +19 -0
  1383. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/StringReader.js +38 -0
  1384. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/Uint8ArrayReader.js +22 -0
  1385. package/test/EdelCsvTestSuite/node_modules/jszip/lib/reader/readerFor.js +28 -0
  1386. package/test/EdelCsvTestSuite/node_modules/jszip/lib/signature.js +7 -0
  1387. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/ConvertWorker.js +26 -0
  1388. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/Crc32Probe.js +24 -0
  1389. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/DataLengthProbe.js +29 -0
  1390. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/DataWorker.js +116 -0
  1391. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/GenericWorker.js +263 -0
  1392. package/test/EdelCsvTestSuite/node_modules/jszip/lib/stream/StreamHelper.js +212 -0
  1393. package/test/EdelCsvTestSuite/node_modules/jszip/lib/support.js +38 -0
  1394. package/test/EdelCsvTestSuite/node_modules/jszip/lib/utf8.js +275 -0
  1395. package/test/EdelCsvTestSuite/node_modules/jszip/lib/utils.js +501 -0
  1396. package/test/EdelCsvTestSuite/node_modules/jszip/lib/zipEntries.js +262 -0
  1397. package/test/EdelCsvTestSuite/node_modules/jszip/lib/zipEntry.js +294 -0
  1398. package/test/EdelCsvTestSuite/node_modules/jszip/lib/zipObject.js +133 -0
  1399. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/.travis.yml +34 -0
  1400. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  1401. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/GOVERNANCE.md +136 -0
  1402. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/LICENSE +47 -0
  1403. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/README.md +58 -0
  1404. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  1405. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/duplex-browser.js +1 -0
  1406. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/duplex.js +1 -0
  1407. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  1408. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  1409. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  1410. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  1411. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/_stream_writable.js +687 -0
  1412. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
  1413. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  1414. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  1415. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  1416. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/package.json +81 -0
  1417. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/passthrough.js +1 -0
  1418. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/readable-browser.js +7 -0
  1419. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/readable.js +19 -0
  1420. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/transform.js +1 -0
  1421. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/writable-browser.js +1 -0
  1422. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/readable-stream/writable.js +8 -0
  1423. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/safe-buffer/LICENSE +21 -0
  1424. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/safe-buffer/README.md +584 -0
  1425. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/safe-buffer/index.d.ts +187 -0
  1426. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/safe-buffer/index.js +62 -0
  1427. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/safe-buffer/package.json +63 -0
  1428. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/string_decoder/.travis.yml +50 -0
  1429. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/string_decoder/LICENSE +48 -0
  1430. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/string_decoder/README.md +47 -0
  1431. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/string_decoder/lib/string_decoder.js +296 -0
  1432. package/test/EdelCsvTestSuite/node_modules/jszip/node_modules/string_decoder/package.json +59 -0
  1433. package/test/EdelCsvTestSuite/node_modules/jszip/package.json +102 -0
  1434. package/test/EdelCsvTestSuite/node_modules/jszip/tsconfig.json +101 -0
  1435. package/test/EdelCsvTestSuite/node_modules/jszip/vendor/FileSaver.js +247 -0
  1436. package/test/EdelCsvTestSuite/node_modules/kuler/.travis.yml +5 -0
  1437. package/test/EdelCsvTestSuite/node_modules/kuler/LICENSE +7 -0
  1438. package/test/EdelCsvTestSuite/node_modules/kuler/README.md +40 -0
  1439. package/test/EdelCsvTestSuite/node_modules/kuler/index.js +118 -0
  1440. package/test/EdelCsvTestSuite/node_modules/kuler/package.json +64 -0
  1441. package/test/EdelCsvTestSuite/node_modules/kuler/test.js +23 -0
  1442. package/test/EdelCsvTestSuite/node_modules/lie/README.md +62 -0
  1443. package/test/EdelCsvTestSuite/node_modules/lie/dist/lie.js +350 -0
  1444. package/test/EdelCsvTestSuite/node_modules/lie/dist/lie.min.js +1 -0
  1445. package/test/EdelCsvTestSuite/node_modules/lie/dist/lie.polyfill.js +358 -0
  1446. package/test/EdelCsvTestSuite/node_modules/lie/dist/lie.polyfill.min.js +1 -0
  1447. package/test/EdelCsvTestSuite/node_modules/lie/lib/browser.js +273 -0
  1448. package/test/EdelCsvTestSuite/node_modules/lie/lib/index.js +298 -0
  1449. package/test/EdelCsvTestSuite/node_modules/lie/license.md +7 -0
  1450. package/test/EdelCsvTestSuite/node_modules/lie/lie.d.ts +244 -0
  1451. package/test/EdelCsvTestSuite/node_modules/lie/package.json +95 -0
  1452. package/test/EdelCsvTestSuite/node_modules/lie/polyfill.js +4 -0
  1453. package/test/EdelCsvTestSuite/node_modules/locate-path/index.d.ts +83 -0
  1454. package/test/EdelCsvTestSuite/node_modules/locate-path/index.js +68 -0
  1455. package/test/EdelCsvTestSuite/node_modules/locate-path/license +9 -0
  1456. package/test/EdelCsvTestSuite/node_modules/locate-path/package.json +78 -0
  1457. package/test/EdelCsvTestSuite/node_modules/locate-path/readme.md +125 -0
  1458. package/test/EdelCsvTestSuite/node_modules/lodash.escaperegexp/LICENSE +47 -0
  1459. package/test/EdelCsvTestSuite/node_modules/lodash.escaperegexp/README.md +18 -0
  1460. package/test/EdelCsvTestSuite/node_modules/lodash.escaperegexp/index.js +166 -0
  1461. package/test/EdelCsvTestSuite/node_modules/lodash.escaperegexp/package.json +73 -0
  1462. package/test/EdelCsvTestSuite/node_modules/lodash.groupby/LICENSE +47 -0
  1463. package/test/EdelCsvTestSuite/node_modules/lodash.groupby/README.md +18 -0
  1464. package/test/EdelCsvTestSuite/node_modules/lodash.groupby/index.js +2369 -0
  1465. package/test/EdelCsvTestSuite/node_modules/lodash.groupby/package.json +72 -0
  1466. package/test/EdelCsvTestSuite/node_modules/lodash.isboolean/LICENSE +22 -0
  1467. package/test/EdelCsvTestSuite/node_modules/lodash.isboolean/README.md +18 -0
  1468. package/test/EdelCsvTestSuite/node_modules/lodash.isboolean/index.js +70 -0
  1469. package/test/EdelCsvTestSuite/node_modules/lodash.isboolean/package.json +72 -0
  1470. package/test/EdelCsvTestSuite/node_modules/lodash.isequal/LICENSE +47 -0
  1471. package/test/EdelCsvTestSuite/node_modules/lodash.isequal/README.md +18 -0
  1472. package/test/EdelCsvTestSuite/node_modules/lodash.isequal/index.js +1848 -0
  1473. package/test/EdelCsvTestSuite/node_modules/lodash.isequal/package.json +67 -0
  1474. package/test/EdelCsvTestSuite/node_modules/lodash.isfunction/LICENSE +47 -0
  1475. package/test/EdelCsvTestSuite/node_modules/lodash.isfunction/README.md +18 -0
  1476. package/test/EdelCsvTestSuite/node_modules/lodash.isfunction/index.js +155 -0
  1477. package/test/EdelCsvTestSuite/node_modules/lodash.isfunction/package.json +68 -0
  1478. package/test/EdelCsvTestSuite/node_modules/lodash.isnil/LICENSE +22 -0
  1479. package/test/EdelCsvTestSuite/node_modules/lodash.isnil/README.md +18 -0
  1480. package/test/EdelCsvTestSuite/node_modules/lodash.isnil/index.js +33 -0
  1481. package/test/EdelCsvTestSuite/node_modules/lodash.isnil/package.json +76 -0
  1482. package/test/EdelCsvTestSuite/node_modules/lodash.isundefined/LICENSE.txt +22 -0
  1483. package/test/EdelCsvTestSuite/node_modules/lodash.isundefined/README.md +20 -0
  1484. package/test/EdelCsvTestSuite/node_modules/lodash.isundefined/index.js +30 -0
  1485. package/test/EdelCsvTestSuite/node_modules/lodash.isundefined/package.json +84 -0
  1486. package/test/EdelCsvTestSuite/node_modules/lodash.uniq/LICENSE +47 -0
  1487. package/test/EdelCsvTestSuite/node_modules/lodash.uniq/README.md +18 -0
  1488. package/test/EdelCsvTestSuite/node_modules/lodash.uniq/index.js +896 -0
  1489. package/test/EdelCsvTestSuite/node_modules/lodash.uniq/package.json +72 -0
  1490. package/test/EdelCsvTestSuite/node_modules/log-symbols/browser.js +8 -0
  1491. package/test/EdelCsvTestSuite/node_modules/log-symbols/index.d.ts +25 -0
  1492. package/test/EdelCsvTestSuite/node_modules/log-symbols/index.js +19 -0
  1493. package/test/EdelCsvTestSuite/node_modules/log-symbols/license +9 -0
  1494. package/test/EdelCsvTestSuite/node_modules/log-symbols/package.json +84 -0
  1495. package/test/EdelCsvTestSuite/node_modules/log-symbols/readme.md +51 -0
  1496. package/test/EdelCsvTestSuite/node_modules/log4js/CHANGELOG.md +321 -0
  1497. package/test/EdelCsvTestSuite/node_modules/log4js/LICENSE +13 -0
  1498. package/test/EdelCsvTestSuite/node_modules/log4js/README.md +121 -0
  1499. package/test/EdelCsvTestSuite/node_modules/log4js/SECURITY.md +19 -0
  1500. package/test/EdelCsvTestSuite/node_modules/log4js/lib/LoggingEvent.js +97 -0
  1501. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/adapters.js +45 -0
  1502. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/categoryFilter.js +19 -0
  1503. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/console.js +18 -0
  1504. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/dateFile.js +82 -0
  1505. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/file.js +130 -0
  1506. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/fileSync.js +241 -0
  1507. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/index.js +152 -0
  1508. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/logLevelFilter.js +17 -0
  1509. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/multiFile.js +89 -0
  1510. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/multiprocess.js +180 -0
  1511. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/noLogFilter.js +43 -0
  1512. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/recording.js +29 -0
  1513. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/stderr.js +17 -0
  1514. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/stdout.js +17 -0
  1515. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/tcp-server.js +47 -0
  1516. package/test/EdelCsvTestSuite/node_modules/log4js/lib/appenders/tcp.js +87 -0
  1517. package/test/EdelCsvTestSuite/node_modules/log4js/lib/categories.js +216 -0
  1518. package/test/EdelCsvTestSuite/node_modules/log4js/lib/clustering.js +104 -0
  1519. package/test/EdelCsvTestSuite/node_modules/log4js/lib/configuration.js +59 -0
  1520. package/test/EdelCsvTestSuite/node_modules/log4js/lib/connect-logger.js +310 -0
  1521. package/test/EdelCsvTestSuite/node_modules/log4js/lib/layouts.js +431 -0
  1522. package/test/EdelCsvTestSuite/node_modules/log4js/lib/levels.js +150 -0
  1523. package/test/EdelCsvTestSuite/node_modules/log4js/lib/log4js.js +171 -0
  1524. package/test/EdelCsvTestSuite/node_modules/log4js/lib/logger.js +150 -0
  1525. package/test/EdelCsvTestSuite/node_modules/log4js/package.json +145 -0
  1526. package/test/EdelCsvTestSuite/node_modules/log4js/types/log4js.d.ts +396 -0
  1527. package/test/EdelCsvTestSuite/node_modules/log4js/types/test.ts +163 -0
  1528. package/test/EdelCsvTestSuite/node_modules/log4js/types/tsconfig.json +9 -0
  1529. package/test/EdelCsvTestSuite/node_modules/logform/.babelrc +3 -0
  1530. package/test/EdelCsvTestSuite/node_modules/logform/.eslintrc +7 -0
  1531. package/test/EdelCsvTestSuite/node_modules/logform/.gitattributes +1 -0
  1532. package/test/EdelCsvTestSuite/node_modules/logform/.travis.yml +17 -0
  1533. package/test/EdelCsvTestSuite/node_modules/logform/CHANGELOG.md +232 -0
  1534. package/test/EdelCsvTestSuite/node_modules/logform/LICENSE +21 -0
  1535. package/test/EdelCsvTestSuite/node_modules/logform/README.md +653 -0
  1536. package/test/EdelCsvTestSuite/node_modules/logform/align.js +14 -0
  1537. package/test/EdelCsvTestSuite/node_modules/logform/browser.js +38 -0
  1538. package/test/EdelCsvTestSuite/node_modules/logform/cli.js +52 -0
  1539. package/test/EdelCsvTestSuite/node_modules/logform/colorize.js +122 -0
  1540. package/test/EdelCsvTestSuite/node_modules/logform/combine.js +66 -0
  1541. package/test/EdelCsvTestSuite/node_modules/logform/dist/align.js +15 -0
  1542. package/test/EdelCsvTestSuite/node_modules/logform/dist/browser.js +72 -0
  1543. package/test/EdelCsvTestSuite/node_modules/logform/dist/cli.js +73 -0
  1544. package/test/EdelCsvTestSuite/node_modules/logform/dist/colorize.js +144 -0
  1545. package/test/EdelCsvTestSuite/node_modules/logform/dist/combine.js +71 -0
  1546. package/test/EdelCsvTestSuite/node_modules/logform/dist/errors.js +43 -0
  1547. package/test/EdelCsvTestSuite/node_modules/logform/dist/format.js +87 -0
  1548. package/test/EdelCsvTestSuite/node_modules/logform/dist/index.js +87 -0
  1549. package/test/EdelCsvTestSuite/node_modules/logform/dist/json.js +33 -0
  1550. package/test/EdelCsvTestSuite/node_modules/logform/dist/label.js +20 -0
  1551. package/test/EdelCsvTestSuite/node_modules/logform/dist/levels.js +14 -0
  1552. package/test/EdelCsvTestSuite/node_modules/logform/dist/logstash.js +34 -0
  1553. package/test/EdelCsvTestSuite/node_modules/logform/dist/metadata.js +64 -0
  1554. package/test/EdelCsvTestSuite/node_modules/logform/dist/ms.js +21 -0
  1555. package/test/EdelCsvTestSuite/node_modules/logform/dist/pad-levels.js +127 -0
  1556. package/test/EdelCsvTestSuite/node_modules/logform/dist/pretty-print.js +34 -0
  1557. package/test/EdelCsvTestSuite/node_modules/logform/dist/printf.js +41 -0
  1558. package/test/EdelCsvTestSuite/node_modules/logform/dist/simple.js +37 -0
  1559. package/test/EdelCsvTestSuite/node_modules/logform/dist/splat.js +159 -0
  1560. package/test/EdelCsvTestSuite/node_modules/logform/dist/timestamp.js +32 -0
  1561. package/test/EdelCsvTestSuite/node_modules/logform/dist/uncolorize.js +31 -0
  1562. package/test/EdelCsvTestSuite/node_modules/logform/errors.js +39 -0
  1563. package/test/EdelCsvTestSuite/node_modules/logform/examples/combine.js +14 -0
  1564. package/test/EdelCsvTestSuite/node_modules/logform/examples/filter.js +30 -0
  1565. package/test/EdelCsvTestSuite/node_modules/logform/examples/invalid.js +6 -0
  1566. package/test/EdelCsvTestSuite/node_modules/logform/examples/metadata.js +78 -0
  1567. package/test/EdelCsvTestSuite/node_modules/logform/examples/padLevels.js +39 -0
  1568. package/test/EdelCsvTestSuite/node_modules/logform/examples/volume.js +25 -0
  1569. package/test/EdelCsvTestSuite/node_modules/logform/format.js +52 -0
  1570. package/test/EdelCsvTestSuite/node_modules/logform/index.d.ts +161 -0
  1571. package/test/EdelCsvTestSuite/node_modules/logform/index.js +52 -0
  1572. package/test/EdelCsvTestSuite/node_modules/logform/json.js +29 -0
  1573. package/test/EdelCsvTestSuite/node_modules/logform/label.js +19 -0
  1574. package/test/EdelCsvTestSuite/node_modules/logform/levels.js +12 -0
  1575. package/test/EdelCsvTestSuite/node_modules/logform/logstash.js +29 -0
  1576. package/test/EdelCsvTestSuite/node_modules/logform/metadata.js +61 -0
  1577. package/test/EdelCsvTestSuite/node_modules/logform/ms.js +18 -0
  1578. package/test/EdelCsvTestSuite/node_modules/logform/package.json +79 -0
  1579. package/test/EdelCsvTestSuite/node_modules/logform/pad-levels.js +83 -0
  1580. package/test/EdelCsvTestSuite/node_modules/logform/pretty-print.js +29 -0
  1581. package/test/EdelCsvTestSuite/node_modules/logform/printf.js +26 -0
  1582. package/test/EdelCsvTestSuite/node_modules/logform/simple.js +33 -0
  1583. package/test/EdelCsvTestSuite/node_modules/logform/splat.js +132 -0
  1584. package/test/EdelCsvTestSuite/node_modules/logform/timestamp.js +30 -0
  1585. package/test/EdelCsvTestSuite/node_modules/logform/tsconfig.json +22 -0
  1586. package/test/EdelCsvTestSuite/node_modules/logform/uncolorize.js +27 -0
  1587. package/test/EdelCsvTestSuite/node_modules/loupe/CHANGELOG.md +5 -0
  1588. package/test/EdelCsvTestSuite/node_modules/loupe/LICENSE +9 -0
  1589. package/test/EdelCsvTestSuite/node_modules/loupe/README.md +63 -0
  1590. package/test/EdelCsvTestSuite/node_modules/loupe/index.js +195 -0
  1591. package/test/EdelCsvTestSuite/node_modules/loupe/lib/arguments.js +7 -0
  1592. package/test/EdelCsvTestSuite/node_modules/loupe/lib/array.js +20 -0
  1593. package/test/EdelCsvTestSuite/node_modules/loupe/lib/bigint.js +7 -0
  1594. package/test/EdelCsvTestSuite/node_modules/loupe/lib/class.js +18 -0
  1595. package/test/EdelCsvTestSuite/node_modules/loupe/lib/date.js +8 -0
  1596. package/test/EdelCsvTestSuite/node_modules/loupe/lib/error.js +34 -0
  1597. package/test/EdelCsvTestSuite/node_modules/loupe/lib/function.js +10 -0
  1598. package/test/EdelCsvTestSuite/node_modules/loupe/lib/helpers.js +177 -0
  1599. package/test/EdelCsvTestSuite/node_modules/loupe/lib/html.js +40 -0
  1600. package/test/EdelCsvTestSuite/node_modules/loupe/lib/map.js +27 -0
  1601. package/test/EdelCsvTestSuite/node_modules/loupe/lib/number.js +18 -0
  1602. package/test/EdelCsvTestSuite/node_modules/loupe/lib/object.js +31 -0
  1603. package/test/EdelCsvTestSuite/node_modules/loupe/lib/promise.js +16 -0
  1604. package/test/EdelCsvTestSuite/node_modules/loupe/lib/regexp.js +8 -0
  1605. package/test/EdelCsvTestSuite/node_modules/loupe/lib/set.js +16 -0
  1606. package/test/EdelCsvTestSuite/node_modules/loupe/lib/string.js +29 -0
  1607. package/test/EdelCsvTestSuite/node_modules/loupe/lib/symbol.js +6 -0
  1608. package/test/EdelCsvTestSuite/node_modules/loupe/lib/typedarray.js +45 -0
  1609. package/test/EdelCsvTestSuite/node_modules/loupe/loupe.js +852 -0
  1610. package/test/EdelCsvTestSuite/node_modules/loupe/package.json +175 -0
  1611. package/test/EdelCsvTestSuite/node_modules/minimatch/LICENSE +15 -0
  1612. package/test/EdelCsvTestSuite/node_modules/minimatch/README.md +230 -0
  1613. package/test/EdelCsvTestSuite/node_modules/minimatch/minimatch.js +908 -0
  1614. package/test/EdelCsvTestSuite/node_modules/minimatch/package.json +64 -0
  1615. package/test/EdelCsvTestSuite/node_modules/minimist/.travis.yml +8 -0
  1616. package/test/EdelCsvTestSuite/node_modules/minimist/LICENSE +18 -0
  1617. package/test/EdelCsvTestSuite/node_modules/minimist/example/parse.js +2 -0
  1618. package/test/EdelCsvTestSuite/node_modules/minimist/index.js +245 -0
  1619. package/test/EdelCsvTestSuite/node_modules/minimist/package.json +76 -0
  1620. package/test/EdelCsvTestSuite/node_modules/minimist/readme.markdown +95 -0
  1621. package/test/EdelCsvTestSuite/node_modules/minimist/test/all_bool.js +32 -0
  1622. package/test/EdelCsvTestSuite/node_modules/minimist/test/bool.js +178 -0
  1623. package/test/EdelCsvTestSuite/node_modules/minimist/test/dash.js +31 -0
  1624. package/test/EdelCsvTestSuite/node_modules/minimist/test/default_bool.js +35 -0
  1625. package/test/EdelCsvTestSuite/node_modules/minimist/test/dotted.js +22 -0
  1626. package/test/EdelCsvTestSuite/node_modules/minimist/test/kv_short.js +16 -0
  1627. package/test/EdelCsvTestSuite/node_modules/minimist/test/long.js +31 -0
  1628. package/test/EdelCsvTestSuite/node_modules/minimist/test/num.js +36 -0
  1629. package/test/EdelCsvTestSuite/node_modules/minimist/test/parse.js +197 -0
  1630. package/test/EdelCsvTestSuite/node_modules/minimist/test/parse_modified.js +9 -0
  1631. package/test/EdelCsvTestSuite/node_modules/minimist/test/proto.js +44 -0
  1632. package/test/EdelCsvTestSuite/node_modules/minimist/test/short.js +67 -0
  1633. package/test/EdelCsvTestSuite/node_modules/minimist/test/stop_early.js +15 -0
  1634. package/test/EdelCsvTestSuite/node_modules/minimist/test/unknown.js +102 -0
  1635. package/test/EdelCsvTestSuite/node_modules/minimist/test/whitespace.js +8 -0
  1636. package/test/EdelCsvTestSuite/node_modules/mocha/LICENSE +22 -0
  1637. package/test/EdelCsvTestSuite/node_modules/mocha/README.md +70 -0
  1638. package/test/EdelCsvTestSuite/node_modules/mocha/assets/growl/error.png +0 -0
  1639. package/test/EdelCsvTestSuite/node_modules/mocha/assets/growl/ok.png +0 -0
  1640. package/test/EdelCsvTestSuite/node_modules/mocha/bin/_mocha +10 -0
  1641. package/test/EdelCsvTestSuite/node_modules/mocha/bin/mocha +142 -0
  1642. package/test/EdelCsvTestSuite/node_modules/mocha/browser-entry.js +226 -0
  1643. package/test/EdelCsvTestSuite/node_modules/mocha/index.js +3 -0
  1644. package/test/EdelCsvTestSuite/node_modules/mocha/lib/browser/growl.js +169 -0
  1645. package/test/EdelCsvTestSuite/node_modules/mocha/lib/browser/highlight-tags.js +39 -0
  1646. package/test/EdelCsvTestSuite/node_modules/mocha/lib/browser/parse-query.js +24 -0
  1647. package/test/EdelCsvTestSuite/node_modules/mocha/lib/browser/progress.js +123 -0
  1648. package/test/EdelCsvTestSuite/node_modules/mocha/lib/browser/template.html +20 -0
  1649. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/cli.js +89 -0
  1650. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/collect-files.js +92 -0
  1651. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/commands.js +13 -0
  1652. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/config.js +100 -0
  1653. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/index.js +3 -0
  1654. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/init.js +36 -0
  1655. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/lookup-files.js +145 -0
  1656. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/node-flags.js +85 -0
  1657. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/one-and-dones.js +69 -0
  1658. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/options.js +261 -0
  1659. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/run-helpers.js +243 -0
  1660. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/run-option-metadata.js +117 -0
  1661. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/run.js +379 -0
  1662. package/test/EdelCsvTestSuite/node_modules/mocha/lib/cli/watch-run.js +377 -0
  1663. package/test/EdelCsvTestSuite/node_modules/mocha/lib/context.js +86 -0
  1664. package/test/EdelCsvTestSuite/node_modules/mocha/lib/errors.js +563 -0
  1665. package/test/EdelCsvTestSuite/node_modules/mocha/lib/hook.js +89 -0
  1666. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/bdd.js +114 -0
  1667. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/common.js +193 -0
  1668. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/exports.js +60 -0
  1669. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/index.js +6 -0
  1670. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/qunit.js +98 -0
  1671. package/test/EdelCsvTestSuite/node_modules/mocha/lib/interfaces/tdd.js +106 -0
  1672. package/test/EdelCsvTestSuite/node_modules/mocha/lib/mocha.js +1362 -0
  1673. package/test/EdelCsvTestSuite/node_modules/mocha/lib/mocharc.json +10 -0
  1674. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/buffered-worker-pool.js +188 -0
  1675. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/esm-utils.js +124 -0
  1676. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/file-unloader.js +15 -0
  1677. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/growl.js +137 -0
  1678. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/parallel-buffered-runner.js +433 -0
  1679. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/reporters/parallel-buffered.js +165 -0
  1680. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/serializer.js +412 -0
  1681. package/test/EdelCsvTestSuite/node_modules/mocha/lib/nodejs/worker.js +151 -0
  1682. package/test/EdelCsvTestSuite/node_modules/mocha/lib/pending.js +16 -0
  1683. package/test/EdelCsvTestSuite/node_modules/mocha/lib/plugin-loader.js +286 -0
  1684. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/base.js +550 -0
  1685. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/doc.js +95 -0
  1686. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/dot.js +81 -0
  1687. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/html.js +390 -0
  1688. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/index.js +19 -0
  1689. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/json-stream.js +92 -0
  1690. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/json.js +162 -0
  1691. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/landing.js +116 -0
  1692. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/list.js +78 -0
  1693. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/markdown.js +112 -0
  1694. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/min.js +52 -0
  1695. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/nyan.js +276 -0
  1696. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/progress.js +104 -0
  1697. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/spec.js +99 -0
  1698. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/tap.js +293 -0
  1699. package/test/EdelCsvTestSuite/node_modules/mocha/lib/reporters/xunit.js +217 -0
  1700. package/test/EdelCsvTestSuite/node_modules/mocha/lib/runnable.js +476 -0
  1701. package/test/EdelCsvTestSuite/node_modules/mocha/lib/runner.js +1266 -0
  1702. package/test/EdelCsvTestSuite/node_modules/mocha/lib/stats-collector.js +83 -0
  1703. package/test/EdelCsvTestSuite/node_modules/mocha/lib/suite.js +666 -0
  1704. package/test/EdelCsvTestSuite/node_modules/mocha/lib/test.js +113 -0
  1705. package/test/EdelCsvTestSuite/node_modules/mocha/lib/utils.js +640 -0
  1706. package/test/EdelCsvTestSuite/node_modules/mocha/mocha-es2018.js +19794 -0
  1707. package/test/EdelCsvTestSuite/node_modules/mocha/mocha.css +325 -0
  1708. package/test/EdelCsvTestSuite/node_modules/mocha/mocha.js +31253 -0
  1709. package/test/EdelCsvTestSuite/node_modules/mocha/mocha.js.map +1 -0
  1710. package/test/EdelCsvTestSuite/node_modules/mocha/package.json +229 -0
  1711. package/test/EdelCsvTestSuite/node_modules/moment/CHANGELOG.md +983 -0
  1712. package/test/EdelCsvTestSuite/node_modules/moment/LICENSE +22 -0
  1713. package/test/EdelCsvTestSuite/node_modules/moment/README.md +55 -0
  1714. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/af.js +71 -0
  1715. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-dz.js +156 -0
  1716. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-kw.js +55 -0
  1717. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-ly.js +171 -0
  1718. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-ma.js +56 -0
  1719. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-sa.js +105 -0
  1720. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar-tn.js +55 -0
  1721. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ar.js +189 -0
  1722. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/az.js +102 -0
  1723. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/be.js +142 -0
  1724. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bg.js +87 -0
  1725. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bm.js +52 -0
  1726. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bn-bd.js +129 -0
  1727. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bn.js +119 -0
  1728. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bo.js +124 -0
  1729. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/br.js +168 -0
  1730. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/bs.js +150 -0
  1731. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ca.js +100 -0
  1732. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/cs.js +180 -0
  1733. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/cv.js +63 -0
  1734. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/cy.js +98 -0
  1735. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/da.js +53 -0
  1736. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/de-at.js +79 -0
  1737. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/de-ch.js +78 -0
  1738. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/de.js +78 -0
  1739. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/dv.js +90 -0
  1740. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/el.js +106 -0
  1741. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-au.js +68 -0
  1742. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-ca.js +64 -0
  1743. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-gb.js +68 -0
  1744. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-ie.js +68 -0
  1745. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-il.js +64 -0
  1746. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-in.js +68 -0
  1747. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-nz.js +68 -0
  1748. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/en-sg.js +68 -0
  1749. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/eo.js +68 -0
  1750. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/es-do.js +108 -0
  1751. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/es-mx.js +110 -0
  1752. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/es-us.js +110 -0
  1753. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/es.js +110 -0
  1754. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/et.js +78 -0
  1755. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/eu.js +65 -0
  1756. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fa.js +113 -0
  1757. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fi.js +124 -0
  1758. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fil.js +58 -0
  1759. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fo.js +57 -0
  1760. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fr-ca.js +70 -0
  1761. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fr-ch.js +74 -0
  1762. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fr.js +108 -0
  1763. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/fy.js +75 -0
  1764. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ga.js +95 -0
  1765. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/gd.js +95 -0
  1766. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/gl.js +75 -0
  1767. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/gom-deva.js +126 -0
  1768. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/gom-latn.js +124 -0
  1769. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/gu.js +122 -0
  1770. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/he.js +94 -0
  1771. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/hi.js +168 -0
  1772. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/hr.js +156 -0
  1773. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/hu.js +118 -0
  1774. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/hy-am.js +94 -0
  1775. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/id.js +76 -0
  1776. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/is.js +140 -0
  1777. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/it-ch.js +64 -0
  1778. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/it.js +106 -0
  1779. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ja.js +148 -0
  1780. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/jv.js +76 -0
  1781. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ka.js +92 -0
  1782. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/kk.js +82 -0
  1783. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/km.js +103 -0
  1784. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/kn.js +124 -0
  1785. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ko.js +75 -0
  1786. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ku.js +118 -0
  1787. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ky.js +84 -0
  1788. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/lb.js +137 -0
  1789. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/lo.js +66 -0
  1790. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/lt.js +125 -0
  1791. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/lv.js +94 -0
  1792. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/me.js +117 -0
  1793. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/mi.js +60 -0
  1794. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/mk.js +85 -0
  1795. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ml.js +82 -0
  1796. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/mn.js +100 -0
  1797. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/mr.js +203 -0
  1798. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ms-my.js +76 -0
  1799. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ms.js +75 -0
  1800. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/mt.js +56 -0
  1801. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/my.js +91 -0
  1802. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/nb.js +60 -0
  1803. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ne.js +121 -0
  1804. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/nl-be.js +102 -0
  1805. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/nl.js +104 -0
  1806. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/nn.js +59 -0
  1807. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/oc-lnc.js +85 -0
  1808. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/pa-in.js +122 -0
  1809. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/pl.js +140 -0
  1810. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/pt-br.js +58 -0
  1811. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/pt.js +63 -0
  1812. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ro.js +76 -0
  1813. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ru.js +213 -0
  1814. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sd.js +81 -0
  1815. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/se.js +57 -0
  1816. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/si.js +69 -0
  1817. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sk.js +145 -0
  1818. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sl.js +171 -0
  1819. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sq.js +65 -0
  1820. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sr-cyrl.js +127 -0
  1821. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sr.js +129 -0
  1822. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ss.js +84 -0
  1823. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sv.js +68 -0
  1824. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/sw.js +55 -0
  1825. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ta.js +131 -0
  1826. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/te.js +88 -0
  1827. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tet.js +68 -0
  1828. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tg.js +117 -0
  1829. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/th.js +65 -0
  1830. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tk.js +91 -0
  1831. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tl-ph.js +57 -0
  1832. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tlh.js +124 -0
  1833. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tr.js +106 -0
  1834. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tzl.js +89 -0
  1835. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tzm-latn.js +54 -0
  1836. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/tzm.js +54 -0
  1837. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ug-cn.js +111 -0
  1838. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/uk.js +167 -0
  1839. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/ur.js +82 -0
  1840. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/uz-latn.js +54 -0
  1841. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/uz.js +51 -0
  1842. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/vi.js +80 -0
  1843. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/x-pseudo.js +73 -0
  1844. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/yo.js +53 -0
  1845. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/zh-cn.js +120 -0
  1846. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/zh-hk.js +101 -0
  1847. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/zh-mo.js +100 -0
  1848. package/test/EdelCsvTestSuite/node_modules/moment/dist/locale/zh-tw.js +99 -0
  1849. package/test/EdelCsvTestSuite/node_modules/moment/dist/moment.js +5677 -0
  1850. package/test/EdelCsvTestSuite/node_modules/moment/ender.js +1 -0
  1851. package/test/EdelCsvTestSuite/node_modules/moment/locale/af.js +82 -0
  1852. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-dz.js +167 -0
  1853. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-kw.js +66 -0
  1854. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-ly.js +182 -0
  1855. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-ma.js +67 -0
  1856. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-sa.js +116 -0
  1857. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar-tn.js +66 -0
  1858. package/test/EdelCsvTestSuite/node_modules/moment/locale/ar.js +200 -0
  1859. package/test/EdelCsvTestSuite/node_modules/moment/locale/az.js +113 -0
  1860. package/test/EdelCsvTestSuite/node_modules/moment/locale/be.js +153 -0
  1861. package/test/EdelCsvTestSuite/node_modules/moment/locale/bg.js +98 -0
  1862. package/test/EdelCsvTestSuite/node_modules/moment/locale/bm.js +62 -0
  1863. package/test/EdelCsvTestSuite/node_modules/moment/locale/bn-bd.js +140 -0
  1864. package/test/EdelCsvTestSuite/node_modules/moment/locale/bn.js +130 -0
  1865. package/test/EdelCsvTestSuite/node_modules/moment/locale/bo.js +135 -0
  1866. package/test/EdelCsvTestSuite/node_modules/moment/locale/br.js +179 -0
  1867. package/test/EdelCsvTestSuite/node_modules/moment/locale/bs.js +161 -0
  1868. package/test/EdelCsvTestSuite/node_modules/moment/locale/ca.js +111 -0
  1869. package/test/EdelCsvTestSuite/node_modules/moment/locale/cs.js +191 -0
  1870. package/test/EdelCsvTestSuite/node_modules/moment/locale/cv.js +74 -0
  1871. package/test/EdelCsvTestSuite/node_modules/moment/locale/cy.js +109 -0
  1872. package/test/EdelCsvTestSuite/node_modules/moment/locale/da.js +64 -0
  1873. package/test/EdelCsvTestSuite/node_modules/moment/locale/de-at.js +90 -0
  1874. package/test/EdelCsvTestSuite/node_modules/moment/locale/de-ch.js +87 -0
  1875. package/test/EdelCsvTestSuite/node_modules/moment/locale/de.js +89 -0
  1876. package/test/EdelCsvTestSuite/node_modules/moment/locale/dv.js +101 -0
  1877. package/test/EdelCsvTestSuite/node_modules/moment/locale/el.js +117 -0
  1878. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-au.js +79 -0
  1879. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-ca.js +75 -0
  1880. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-gb.js +79 -0
  1881. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-ie.js +79 -0
  1882. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-il.js +75 -0
  1883. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-in.js +79 -0
  1884. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-nz.js +79 -0
  1885. package/test/EdelCsvTestSuite/node_modules/moment/locale/en-sg.js +79 -0
  1886. package/test/EdelCsvTestSuite/node_modules/moment/locale/eo.js +79 -0
  1887. package/test/EdelCsvTestSuite/node_modules/moment/locale/es-do.js +119 -0
  1888. package/test/EdelCsvTestSuite/node_modules/moment/locale/es-mx.js +121 -0
  1889. package/test/EdelCsvTestSuite/node_modules/moment/locale/es-us.js +121 -0
  1890. package/test/EdelCsvTestSuite/node_modules/moment/locale/es.js +121 -0
  1891. package/test/EdelCsvTestSuite/node_modules/moment/locale/et.js +89 -0
  1892. package/test/EdelCsvTestSuite/node_modules/moment/locale/eu.js +76 -0
  1893. package/test/EdelCsvTestSuite/node_modules/moment/locale/fa.js +124 -0
  1894. package/test/EdelCsvTestSuite/node_modules/moment/locale/fi.js +135 -0
  1895. package/test/EdelCsvTestSuite/node_modules/moment/locale/fil.js +69 -0
  1896. package/test/EdelCsvTestSuite/node_modules/moment/locale/fo.js +68 -0
  1897. package/test/EdelCsvTestSuite/node_modules/moment/locale/fr-ca.js +81 -0
  1898. package/test/EdelCsvTestSuite/node_modules/moment/locale/fr-ch.js +85 -0
  1899. package/test/EdelCsvTestSuite/node_modules/moment/locale/fr.js +119 -0
  1900. package/test/EdelCsvTestSuite/node_modules/moment/locale/fy.js +86 -0
  1901. package/test/EdelCsvTestSuite/node_modules/moment/locale/ga.js +106 -0
  1902. package/test/EdelCsvTestSuite/node_modules/moment/locale/gd.js +106 -0
  1903. package/test/EdelCsvTestSuite/node_modules/moment/locale/gl.js +86 -0
  1904. package/test/EdelCsvTestSuite/node_modules/moment/locale/gom-deva.js +137 -0
  1905. package/test/EdelCsvTestSuite/node_modules/moment/locale/gom-latn.js +135 -0
  1906. package/test/EdelCsvTestSuite/node_modules/moment/locale/gu.js +133 -0
  1907. package/test/EdelCsvTestSuite/node_modules/moment/locale/he.js +105 -0
  1908. package/test/EdelCsvTestSuite/node_modules/moment/locale/hi.js +179 -0
  1909. package/test/EdelCsvTestSuite/node_modules/moment/locale/hr.js +167 -0
  1910. package/test/EdelCsvTestSuite/node_modules/moment/locale/hu.js +129 -0
  1911. package/test/EdelCsvTestSuite/node_modules/moment/locale/hy-am.js +105 -0
  1912. package/test/EdelCsvTestSuite/node_modules/moment/locale/id.js +87 -0
  1913. package/test/EdelCsvTestSuite/node_modules/moment/locale/is.js +151 -0
  1914. package/test/EdelCsvTestSuite/node_modules/moment/locale/it-ch.js +75 -0
  1915. package/test/EdelCsvTestSuite/node_modules/moment/locale/it.js +117 -0
  1916. package/test/EdelCsvTestSuite/node_modules/moment/locale/ja.js +159 -0
  1917. package/test/EdelCsvTestSuite/node_modules/moment/locale/jv.js +87 -0
  1918. package/test/EdelCsvTestSuite/node_modules/moment/locale/ka.js +103 -0
  1919. package/test/EdelCsvTestSuite/node_modules/moment/locale/kk.js +93 -0
  1920. package/test/EdelCsvTestSuite/node_modules/moment/locale/km.js +114 -0
  1921. package/test/EdelCsvTestSuite/node_modules/moment/locale/kn.js +135 -0
  1922. package/test/EdelCsvTestSuite/node_modules/moment/locale/ko.js +86 -0
  1923. package/test/EdelCsvTestSuite/node_modules/moment/locale/ku.js +129 -0
  1924. package/test/EdelCsvTestSuite/node_modules/moment/locale/ky.js +95 -0
  1925. package/test/EdelCsvTestSuite/node_modules/moment/locale/lb.js +148 -0
  1926. package/test/EdelCsvTestSuite/node_modules/moment/locale/lo.js +77 -0
  1927. package/test/EdelCsvTestSuite/node_modules/moment/locale/lt.js +136 -0
  1928. package/test/EdelCsvTestSuite/node_modules/moment/locale/lv.js +105 -0
  1929. package/test/EdelCsvTestSuite/node_modules/moment/locale/me.js +128 -0
  1930. package/test/EdelCsvTestSuite/node_modules/moment/locale/mi.js +71 -0
  1931. package/test/EdelCsvTestSuite/node_modules/moment/locale/mk.js +97 -0
  1932. package/test/EdelCsvTestSuite/node_modules/moment/locale/ml.js +93 -0
  1933. package/test/EdelCsvTestSuite/node_modules/moment/locale/mn.js +111 -0
  1934. package/test/EdelCsvTestSuite/node_modules/moment/locale/mr.js +214 -0
  1935. package/test/EdelCsvTestSuite/node_modules/moment/locale/ms-my.js +87 -0
  1936. package/test/EdelCsvTestSuite/node_modules/moment/locale/ms.js +86 -0
  1937. package/test/EdelCsvTestSuite/node_modules/moment/locale/mt.js +67 -0
  1938. package/test/EdelCsvTestSuite/node_modules/moment/locale/my.js +102 -0
  1939. package/test/EdelCsvTestSuite/node_modules/moment/locale/nb.js +71 -0
  1940. package/test/EdelCsvTestSuite/node_modules/moment/locale/ne.js +132 -0
  1941. package/test/EdelCsvTestSuite/node_modules/moment/locale/nl-be.js +113 -0
  1942. package/test/EdelCsvTestSuite/node_modules/moment/locale/nl.js +115 -0
  1943. package/test/EdelCsvTestSuite/node_modules/moment/locale/nn.js +70 -0
  1944. package/test/EdelCsvTestSuite/node_modules/moment/locale/oc-lnc.js +96 -0
  1945. package/test/EdelCsvTestSuite/node_modules/moment/locale/pa-in.js +133 -0
  1946. package/test/EdelCsvTestSuite/node_modules/moment/locale/pl.js +151 -0
  1947. package/test/EdelCsvTestSuite/node_modules/moment/locale/pt-br.js +69 -0
  1948. package/test/EdelCsvTestSuite/node_modules/moment/locale/pt.js +74 -0
  1949. package/test/EdelCsvTestSuite/node_modules/moment/locale/ro.js +87 -0
  1950. package/test/EdelCsvTestSuite/node_modules/moment/locale/ru.js +224 -0
  1951. package/test/EdelCsvTestSuite/node_modules/moment/locale/sd.js +92 -0
  1952. package/test/EdelCsvTestSuite/node_modules/moment/locale/se.js +68 -0
  1953. package/test/EdelCsvTestSuite/node_modules/moment/locale/si.js +80 -0
  1954. package/test/EdelCsvTestSuite/node_modules/moment/locale/sk.js +156 -0
  1955. package/test/EdelCsvTestSuite/node_modules/moment/locale/sl.js +182 -0
  1956. package/test/EdelCsvTestSuite/node_modules/moment/locale/sq.js +76 -0
  1957. package/test/EdelCsvTestSuite/node_modules/moment/locale/sr-cyrl.js +138 -0
  1958. package/test/EdelCsvTestSuite/node_modules/moment/locale/sr.js +140 -0
  1959. package/test/EdelCsvTestSuite/node_modules/moment/locale/ss.js +95 -0
  1960. package/test/EdelCsvTestSuite/node_modules/moment/locale/sv.js +79 -0
  1961. package/test/EdelCsvTestSuite/node_modules/moment/locale/sw.js +66 -0
  1962. package/test/EdelCsvTestSuite/node_modules/moment/locale/ta.js +142 -0
  1963. package/test/EdelCsvTestSuite/node_modules/moment/locale/te.js +99 -0
  1964. package/test/EdelCsvTestSuite/node_modules/moment/locale/tet.js +79 -0
  1965. package/test/EdelCsvTestSuite/node_modules/moment/locale/tg.js +128 -0
  1966. package/test/EdelCsvTestSuite/node_modules/moment/locale/th.js +76 -0
  1967. package/test/EdelCsvTestSuite/node_modules/moment/locale/tk.js +102 -0
  1968. package/test/EdelCsvTestSuite/node_modules/moment/locale/tl-ph.js +68 -0
  1969. package/test/EdelCsvTestSuite/node_modules/moment/locale/tlh.js +135 -0
  1970. package/test/EdelCsvTestSuite/node_modules/moment/locale/tr.js +117 -0
  1971. package/test/EdelCsvTestSuite/node_modules/moment/locale/tzl.js +100 -0
  1972. package/test/EdelCsvTestSuite/node_modules/moment/locale/tzm-latn.js +65 -0
  1973. package/test/EdelCsvTestSuite/node_modules/moment/locale/tzm.js +65 -0
  1974. package/test/EdelCsvTestSuite/node_modules/moment/locale/ug-cn.js +122 -0
  1975. package/test/EdelCsvTestSuite/node_modules/moment/locale/uk.js +178 -0
  1976. package/test/EdelCsvTestSuite/node_modules/moment/locale/ur.js +93 -0
  1977. package/test/EdelCsvTestSuite/node_modules/moment/locale/uz-latn.js +65 -0
  1978. package/test/EdelCsvTestSuite/node_modules/moment/locale/uz.js +62 -0
  1979. package/test/EdelCsvTestSuite/node_modules/moment/locale/vi.js +91 -0
  1980. package/test/EdelCsvTestSuite/node_modules/moment/locale/x-pseudo.js +84 -0
  1981. package/test/EdelCsvTestSuite/node_modules/moment/locale/yo.js +64 -0
  1982. package/test/EdelCsvTestSuite/node_modules/moment/locale/zh-cn.js +131 -0
  1983. package/test/EdelCsvTestSuite/node_modules/moment/locale/zh-hk.js +112 -0
  1984. package/test/EdelCsvTestSuite/node_modules/moment/locale/zh-mo.js +111 -0
  1985. package/test/EdelCsvTestSuite/node_modules/moment/locale/zh-tw.js +110 -0
  1986. package/test/EdelCsvTestSuite/node_modules/moment/min/locales.js +12570 -0
  1987. package/test/EdelCsvTestSuite/node_modules/moment/min/locales.min.js +2 -0
  1988. package/test/EdelCsvTestSuite/node_modules/moment/min/locales.min.js.map +1 -0
  1989. package/test/EdelCsvTestSuite/node_modules/moment/min/moment-with-locales.js +18239 -0
  1990. package/test/EdelCsvTestSuite/node_modules/moment/min/moment-with-locales.min.js +2 -0
  1991. package/test/EdelCsvTestSuite/node_modules/moment/min/moment-with-locales.min.js.map +1 -0
  1992. package/test/EdelCsvTestSuite/node_modules/moment/min/moment.min.js +2 -0
  1993. package/test/EdelCsvTestSuite/node_modules/moment/min/moment.min.js.map +1 -0
  1994. package/test/EdelCsvTestSuite/node_modules/moment/moment.d.ts +796 -0
  1995. package/test/EdelCsvTestSuite/node_modules/moment/moment.js +5685 -0
  1996. package/test/EdelCsvTestSuite/node_modules/moment/package.js +11 -0
  1997. package/test/EdelCsvTestSuite/node_modules/moment/package.json +160 -0
  1998. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/check-overflow.js +57 -0
  1999. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/date-from-array.js +35 -0
  2000. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-anything.js +117 -0
  2001. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-array.js +187 -0
  2002. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-object.js +20 -0
  2003. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-string-and-array.js +67 -0
  2004. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-string-and-format.js +135 -0
  2005. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/from-string.js +258 -0
  2006. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/local.js +5 -0
  2007. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/parsing-flags.js +28 -0
  2008. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/utc.js +5 -0
  2009. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/create/valid.js +51 -0
  2010. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/abs.js +18 -0
  2011. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/add-subtract.js +21 -0
  2012. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/as.js +88 -0
  2013. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/bubble.js +68 -0
  2014. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/clone.js +5 -0
  2015. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/constructor.js +42 -0
  2016. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/create.js +133 -0
  2017. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/duration.js +16 -0
  2018. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/get.js +27 -0
  2019. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/humanize.js +114 -0
  2020. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/iso-string.js +68 -0
  2021. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/prototype.js +78 -0
  2022. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/duration/valid.js +55 -0
  2023. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/format/format.js +104 -0
  2024. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/base-config.js +41 -0
  2025. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/calendar.js +15 -0
  2026. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/constructor.js +5 -0
  2027. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/en.js +39 -0
  2028. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/formats.js +36 -0
  2029. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/invalid.js +5 -0
  2030. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/lists.js +93 -0
  2031. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/locale.js +45 -0
  2032. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/locales.js +248 -0
  2033. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/ordinal.js +8 -0
  2034. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/pre-post-format.js +3 -0
  2035. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/prototype.js +88 -0
  2036. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/relative.js +32 -0
  2037. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/locale/set.js +56 -0
  2038. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/add-subtract.js +61 -0
  2039. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/calendar.js +53 -0
  2040. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/clone.js +5 -0
  2041. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/compare.js +72 -0
  2042. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/constructor.js +80 -0
  2043. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/creation-data.js +9 -0
  2044. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/diff.js +79 -0
  2045. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/format.js +78 -0
  2046. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/from.js +20 -0
  2047. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/get-set.js +73 -0
  2048. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/locale.js +34 -0
  2049. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/min-max.js +62 -0
  2050. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/moment.js +28 -0
  2051. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/now.js +3 -0
  2052. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/prototype.js +197 -0
  2053. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/start-end-of.js +164 -0
  2054. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/to-type.js +42 -0
  2055. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/to.js +20 -0
  2056. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/moment/valid.js +15 -0
  2057. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/parse/regex.js +80 -0
  2058. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/parse/token.js +36 -0
  2059. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/aliases.js +31 -0
  2060. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/constants.js +9 -0
  2061. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/day-of-month.js +39 -0
  2062. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/day-of-week.js +443 -0
  2063. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/day-of-year.js +37 -0
  2064. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/era.js +287 -0
  2065. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/hour.js +159 -0
  2066. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/millisecond.js +76 -0
  2067. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/minute.js +29 -0
  2068. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/month.js +349 -0
  2069. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/offset.js +249 -0
  2070. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/priorities.js +21 -0
  2071. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/quarter.js +34 -0
  2072. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/second.js +29 -0
  2073. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/timestamp.js +20 -0
  2074. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/timezone.js +16 -0
  2075. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/units.js +20 -0
  2076. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/week-calendar-utils.js +66 -0
  2077. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/week-year.js +138 -0
  2078. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/week.js +69 -0
  2079. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/units/year.js +85 -0
  2080. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/abs-ceil.js +7 -0
  2081. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/abs-floor.js +8 -0
  2082. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/abs-round.js +7 -0
  2083. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/compare-arrays.js +18 -0
  2084. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/defaults.js +10 -0
  2085. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/deprecate.js +69 -0
  2086. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/extend.js +19 -0
  2087. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/has-own-prop.js +3 -0
  2088. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/hooks.js +13 -0
  2089. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/index-of.js +18 -0
  2090. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-array.js +6 -0
  2091. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-calendar-spec.js +25 -0
  2092. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-date.js +6 -0
  2093. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-function.js +6 -0
  2094. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-leap-year.js +3 -0
  2095. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-moment-input.js +75 -0
  2096. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-number.js +6 -0
  2097. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-object-empty.js +15 -0
  2098. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-object.js +8 -0
  2099. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-string.js +3 -0
  2100. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/is-undefined.js +3 -0
  2101. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/keys.js +20 -0
  2102. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/map.js +9 -0
  2103. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/mod.js +3 -0
  2104. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/some.js +20 -0
  2105. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/to-int.js +12 -0
  2106. package/test/EdelCsvTestSuite/node_modules/moment/src/lib/utils/zero-fill.js +10 -0
  2107. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/af.js +71 -0
  2108. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-dz.js +156 -0
  2109. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-kw.js +55 -0
  2110. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-ly.js +171 -0
  2111. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-ma.js +56 -0
  2112. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-sa.js +105 -0
  2113. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar-tn.js +55 -0
  2114. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ar.js +189 -0
  2115. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/az.js +102 -0
  2116. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/be.js +142 -0
  2117. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bg.js +87 -0
  2118. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bm.js +52 -0
  2119. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bn-bd.js +129 -0
  2120. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bn.js +119 -0
  2121. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bo.js +124 -0
  2122. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/br.js +168 -0
  2123. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/bs.js +150 -0
  2124. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ca.js +100 -0
  2125. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/cs.js +180 -0
  2126. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/cv.js +63 -0
  2127. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/cy.js +98 -0
  2128. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/da.js +53 -0
  2129. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/de-at.js +79 -0
  2130. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/de-ch.js +78 -0
  2131. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/de.js +78 -0
  2132. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/dv.js +90 -0
  2133. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/el.js +106 -0
  2134. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-au.js +68 -0
  2135. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-ca.js +64 -0
  2136. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-gb.js +68 -0
  2137. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-ie.js +68 -0
  2138. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-il.js +64 -0
  2139. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-in.js +68 -0
  2140. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-nz.js +68 -0
  2141. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/en-sg.js +68 -0
  2142. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/eo.js +68 -0
  2143. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/es-do.js +108 -0
  2144. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/es-mx.js +110 -0
  2145. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/es-us.js +110 -0
  2146. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/es.js +110 -0
  2147. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/et.js +78 -0
  2148. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/eu.js +65 -0
  2149. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fa.js +113 -0
  2150. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fi.js +124 -0
  2151. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fil.js +58 -0
  2152. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fo.js +57 -0
  2153. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fr-ca.js +70 -0
  2154. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fr-ch.js +74 -0
  2155. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fr.js +108 -0
  2156. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/fy.js +75 -0
  2157. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ga.js +95 -0
  2158. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/gd.js +95 -0
  2159. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/gl.js +75 -0
  2160. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/gom-deva.js +126 -0
  2161. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/gom-latn.js +124 -0
  2162. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/gu.js +122 -0
  2163. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/he.js +94 -0
  2164. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/hi.js +168 -0
  2165. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/hr.js +156 -0
  2166. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/hu.js +118 -0
  2167. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/hy-am.js +94 -0
  2168. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/id.js +76 -0
  2169. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/is.js +140 -0
  2170. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/it-ch.js +64 -0
  2171. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/it.js +106 -0
  2172. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ja.js +148 -0
  2173. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/jv.js +76 -0
  2174. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ka.js +92 -0
  2175. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/kk.js +82 -0
  2176. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/km.js +103 -0
  2177. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/kn.js +124 -0
  2178. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ko.js +75 -0
  2179. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ku.js +118 -0
  2180. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ky.js +84 -0
  2181. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/lb.js +137 -0
  2182. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/lo.js +66 -0
  2183. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/lt.js +125 -0
  2184. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/lv.js +94 -0
  2185. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/me.js +117 -0
  2186. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/mi.js +60 -0
  2187. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/mk.js +85 -0
  2188. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ml.js +82 -0
  2189. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/mn.js +100 -0
  2190. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/mr.js +203 -0
  2191. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ms-my.js +76 -0
  2192. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ms.js +75 -0
  2193. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/mt.js +56 -0
  2194. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/my.js +91 -0
  2195. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/nb.js +60 -0
  2196. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ne.js +121 -0
  2197. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/nl-be.js +102 -0
  2198. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/nl.js +104 -0
  2199. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/nn.js +59 -0
  2200. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/oc-lnc.js +85 -0
  2201. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/pa-in.js +122 -0
  2202. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/pl.js +140 -0
  2203. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/pt-br.js +58 -0
  2204. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/pt.js +63 -0
  2205. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ro.js +76 -0
  2206. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ru.js +213 -0
  2207. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sd.js +81 -0
  2208. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/se.js +57 -0
  2209. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/si.js +69 -0
  2210. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sk.js +145 -0
  2211. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sl.js +171 -0
  2212. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sq.js +65 -0
  2213. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sr-cyrl.js +127 -0
  2214. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sr.js +129 -0
  2215. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ss.js +84 -0
  2216. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sv.js +68 -0
  2217. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/sw.js +55 -0
  2218. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ta.js +131 -0
  2219. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/te.js +88 -0
  2220. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tet.js +68 -0
  2221. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tg.js +117 -0
  2222. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/th.js +65 -0
  2223. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tk.js +91 -0
  2224. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tl-ph.js +57 -0
  2225. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tlh.js +124 -0
  2226. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tr.js +106 -0
  2227. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tzl.js +89 -0
  2228. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tzm-latn.js +54 -0
  2229. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/tzm.js +54 -0
  2230. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ug-cn.js +111 -0
  2231. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/uk.js +167 -0
  2232. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/ur.js +82 -0
  2233. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/uz-latn.js +54 -0
  2234. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/uz.js +51 -0
  2235. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/vi.js +80 -0
  2236. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/x-pseudo.js +73 -0
  2237. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/yo.js +53 -0
  2238. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/zh-cn.js +120 -0
  2239. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/zh-hk.js +101 -0
  2240. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/zh-mo.js +100 -0
  2241. package/test/EdelCsvTestSuite/node_modules/moment/src/locale/zh-tw.js +99 -0
  2242. package/test/EdelCsvTestSuite/node_modules/moment/src/moment.js +93 -0
  2243. package/test/EdelCsvTestSuite/node_modules/moment/ts3.1-typings/moment.d.ts +785 -0
  2244. package/test/EdelCsvTestSuite/node_modules/ms/index.js +162 -0
  2245. package/test/EdelCsvTestSuite/node_modules/ms/license.md +21 -0
  2246. package/test/EdelCsvTestSuite/node_modules/ms/package.json +75 -0
  2247. package/test/EdelCsvTestSuite/node_modules/ms/readme.md +59 -0
  2248. package/test/EdelCsvTestSuite/node_modules/nanoid/LICENSE +20 -0
  2249. package/test/EdelCsvTestSuite/node_modules/nanoid/README.md +39 -0
  2250. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.browser.cjs +34 -0
  2251. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.browser.js +34 -0
  2252. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.cjs +35 -0
  2253. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.d.ts +56 -0
  2254. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.js +35 -0
  2255. package/test/EdelCsvTestSuite/node_modules/nanoid/async/index.native.js +26 -0
  2256. package/test/EdelCsvTestSuite/node_modules/nanoid/async/package.json +12 -0
  2257. package/test/EdelCsvTestSuite/node_modules/nanoid/bin/nanoid.cjs +55 -0
  2258. package/test/EdelCsvTestSuite/node_modules/nanoid/index.browser.cjs +37 -0
  2259. package/test/EdelCsvTestSuite/node_modules/nanoid/index.browser.js +37 -0
  2260. package/test/EdelCsvTestSuite/node_modules/nanoid/index.cjs +45 -0
  2261. package/test/EdelCsvTestSuite/node_modules/nanoid/index.d.ts +91 -0
  2262. package/test/EdelCsvTestSuite/node_modules/nanoid/index.js +45 -0
  2263. package/test/EdelCsvTestSuite/node_modules/nanoid/nanoid.js +1 -0
  2264. package/test/EdelCsvTestSuite/node_modules/nanoid/non-secure/index.cjs +21 -0
  2265. package/test/EdelCsvTestSuite/node_modules/nanoid/non-secure/index.d.ts +33 -0
  2266. package/test/EdelCsvTestSuite/node_modules/nanoid/non-secure/index.js +21 -0
  2267. package/test/EdelCsvTestSuite/node_modules/nanoid/non-secure/package.json +6 -0
  2268. package/test/EdelCsvTestSuite/node_modules/nanoid/package.json +97 -0
  2269. package/test/EdelCsvTestSuite/node_modules/nanoid/url-alphabet/index.cjs +3 -0
  2270. package/test/EdelCsvTestSuite/node_modules/nanoid/url-alphabet/index.js +3 -0
  2271. package/test/EdelCsvTestSuite/node_modules/nanoid/url-alphabet/package.json +6 -0
  2272. package/test/EdelCsvTestSuite/node_modules/normalize-path/LICENSE +21 -0
  2273. package/test/EdelCsvTestSuite/node_modules/normalize-path/README.md +127 -0
  2274. package/test/EdelCsvTestSuite/node_modules/normalize-path/index.js +35 -0
  2275. package/test/EdelCsvTestSuite/node_modules/normalize-path/package.json +115 -0
  2276. package/test/EdelCsvTestSuite/node_modules/once/LICENSE +15 -0
  2277. package/test/EdelCsvTestSuite/node_modules/once/README.md +79 -0
  2278. package/test/EdelCsvTestSuite/node_modules/once/once.js +42 -0
  2279. package/test/EdelCsvTestSuite/node_modules/once/package.json +67 -0
  2280. package/test/EdelCsvTestSuite/node_modules/one-time/LICENSE +22 -0
  2281. package/test/EdelCsvTestSuite/node_modules/one-time/README.md +88 -0
  2282. package/test/EdelCsvTestSuite/node_modules/one-time/async.js +43 -0
  2283. package/test/EdelCsvTestSuite/node_modules/one-time/index.js +42 -0
  2284. package/test/EdelCsvTestSuite/node_modules/one-time/package.json +69 -0
  2285. package/test/EdelCsvTestSuite/node_modules/p-limit/index.d.ts +42 -0
  2286. package/test/EdelCsvTestSuite/node_modules/p-limit/index.js +71 -0
  2287. package/test/EdelCsvTestSuite/node_modules/p-limit/license +9 -0
  2288. package/test/EdelCsvTestSuite/node_modules/p-limit/package.json +84 -0
  2289. package/test/EdelCsvTestSuite/node_modules/p-limit/readme.md +101 -0
  2290. package/test/EdelCsvTestSuite/node_modules/p-locate/index.d.ts +53 -0
  2291. package/test/EdelCsvTestSuite/node_modules/p-locate/index.js +50 -0
  2292. package/test/EdelCsvTestSuite/node_modules/p-locate/license +9 -0
  2293. package/test/EdelCsvTestSuite/node_modules/p-locate/package.json +86 -0
  2294. package/test/EdelCsvTestSuite/node_modules/p-locate/readme.md +93 -0
  2295. package/test/EdelCsvTestSuite/node_modules/pako/CHANGELOG.md +164 -0
  2296. package/test/EdelCsvTestSuite/node_modules/pako/LICENSE +21 -0
  2297. package/test/EdelCsvTestSuite/node_modules/pako/README.md +191 -0
  2298. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako.js +6818 -0
  2299. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako.min.js +1 -0
  2300. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako_deflate.js +3997 -0
  2301. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako_deflate.min.js +1 -0
  2302. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako_inflate.js +3300 -0
  2303. package/test/EdelCsvTestSuite/node_modules/pako/dist/pako_inflate.min.js +1 -0
  2304. package/test/EdelCsvTestSuite/node_modules/pako/index.js +14 -0
  2305. package/test/EdelCsvTestSuite/node_modules/pako/lib/deflate.js +400 -0
  2306. package/test/EdelCsvTestSuite/node_modules/pako/lib/inflate.js +423 -0
  2307. package/test/EdelCsvTestSuite/node_modules/pako/lib/utils/common.js +105 -0
  2308. package/test/EdelCsvTestSuite/node_modules/pako/lib/utils/strings.js +187 -0
  2309. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/README +59 -0
  2310. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/adler32.js +51 -0
  2311. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/constants.js +68 -0
  2312. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/crc32.js +59 -0
  2313. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/deflate.js +1874 -0
  2314. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/gzheader.js +58 -0
  2315. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/inffast.js +345 -0
  2316. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/inflate.js +1556 -0
  2317. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/inftrees.js +343 -0
  2318. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/messages.js +32 -0
  2319. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/trees.js +1222 -0
  2320. package/test/EdelCsvTestSuite/node_modules/pako/lib/zlib/zstream.js +47 -0
  2321. package/test/EdelCsvTestSuite/node_modules/pako/package.json +91 -0
  2322. package/test/EdelCsvTestSuite/node_modules/path-exists/index.d.ts +28 -0
  2323. package/test/EdelCsvTestSuite/node_modules/path-exists/index.js +23 -0
  2324. package/test/EdelCsvTestSuite/node_modules/path-exists/license +9 -0
  2325. package/test/EdelCsvTestSuite/node_modules/path-exists/package.json +71 -0
  2326. package/test/EdelCsvTestSuite/node_modules/path-exists/readme.md +52 -0
  2327. package/test/EdelCsvTestSuite/node_modules/path-is-absolute/index.js +20 -0
  2328. package/test/EdelCsvTestSuite/node_modules/path-is-absolute/license +21 -0
  2329. package/test/EdelCsvTestSuite/node_modules/path-is-absolute/package.json +75 -0
  2330. package/test/EdelCsvTestSuite/node_modules/path-is-absolute/readme.md +59 -0
  2331. package/test/EdelCsvTestSuite/node_modules/pathval/CHANGELOG.md +18 -0
  2332. package/test/EdelCsvTestSuite/node_modules/pathval/LICENSE +16 -0
  2333. package/test/EdelCsvTestSuite/node_modules/pathval/README.md +147 -0
  2334. package/test/EdelCsvTestSuite/node_modules/pathval/index.js +301 -0
  2335. package/test/EdelCsvTestSuite/node_modules/pathval/package.json +111 -0
  2336. package/test/EdelCsvTestSuite/node_modules/pathval/pathval.js +1 -0
  2337. package/test/EdelCsvTestSuite/node_modules/picomatch/CHANGELOG.md +136 -0
  2338. package/test/EdelCsvTestSuite/node_modules/picomatch/LICENSE +21 -0
  2339. package/test/EdelCsvTestSuite/node_modules/picomatch/README.md +708 -0
  2340. package/test/EdelCsvTestSuite/node_modules/picomatch/index.js +3 -0
  2341. package/test/EdelCsvTestSuite/node_modules/picomatch/lib/constants.js +179 -0
  2342. package/test/EdelCsvTestSuite/node_modules/picomatch/lib/parse.js +1091 -0
  2343. package/test/EdelCsvTestSuite/node_modules/picomatch/lib/picomatch.js +342 -0
  2344. package/test/EdelCsvTestSuite/node_modules/picomatch/lib/scan.js +391 -0
  2345. package/test/EdelCsvTestSuite/node_modules/picomatch/lib/utils.js +64 -0
  2346. package/test/EdelCsvTestSuite/node_modules/picomatch/package.json +113 -0
  2347. package/test/EdelCsvTestSuite/node_modules/process-nextick-args/index.js +45 -0
  2348. package/test/EdelCsvTestSuite/node_modules/process-nextick-args/license.md +19 -0
  2349. package/test/EdelCsvTestSuite/node_modules/process-nextick-args/package.json +54 -0
  2350. package/test/EdelCsvTestSuite/node_modules/process-nextick-args/readme.md +18 -0
  2351. package/test/EdelCsvTestSuite/node_modules/randombytes/.travis.yml +15 -0
  2352. package/test/EdelCsvTestSuite/node_modules/randombytes/.zuul.yml +1 -0
  2353. package/test/EdelCsvTestSuite/node_modules/randombytes/LICENSE +21 -0
  2354. package/test/EdelCsvTestSuite/node_modules/randombytes/README.md +14 -0
  2355. package/test/EdelCsvTestSuite/node_modules/randombytes/browser.js +50 -0
  2356. package/test/EdelCsvTestSuite/node_modules/randombytes/index.js +1 -0
  2357. package/test/EdelCsvTestSuite/node_modules/randombytes/package.json +61 -0
  2358. package/test/EdelCsvTestSuite/node_modules/randombytes/test.js +81 -0
  2359. package/test/EdelCsvTestSuite/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  2360. package/test/EdelCsvTestSuite/node_modules/readable-stream/GOVERNANCE.md +136 -0
  2361. package/test/EdelCsvTestSuite/node_modules/readable-stream/LICENSE +47 -0
  2362. package/test/EdelCsvTestSuite/node_modules/readable-stream/README.md +106 -0
  2363. package/test/EdelCsvTestSuite/node_modules/readable-stream/errors-browser.js +127 -0
  2364. package/test/EdelCsvTestSuite/node_modules/readable-stream/errors.js +116 -0
  2365. package/test/EdelCsvTestSuite/node_modules/readable-stream/experimentalWarning.js +17 -0
  2366. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/_stream_duplex.js +139 -0
  2367. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/_stream_passthrough.js +39 -0
  2368. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/_stream_readable.js +1124 -0
  2369. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/_stream_transform.js +201 -0
  2370. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/_stream_writable.js +697 -0
  2371. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/async_iterator.js +207 -0
  2372. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/buffer_list.js +210 -0
  2373. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/destroy.js +105 -0
  2374. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +104 -0
  2375. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -0
  2376. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/from.js +64 -0
  2377. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/pipeline.js +97 -0
  2378. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/state.js +27 -0
  2379. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  2380. package/test/EdelCsvTestSuite/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  2381. package/test/EdelCsvTestSuite/node_modules/readable-stream/package.json +102 -0
  2382. package/test/EdelCsvTestSuite/node_modules/readable-stream/readable-browser.js +9 -0
  2383. package/test/EdelCsvTestSuite/node_modules/readable-stream/readable.js +16 -0
  2384. package/test/EdelCsvTestSuite/node_modules/readdirp/LICENSE +21 -0
  2385. package/test/EdelCsvTestSuite/node_modules/readdirp/README.md +122 -0
  2386. package/test/EdelCsvTestSuite/node_modules/readdirp/index.d.ts +43 -0
  2387. package/test/EdelCsvTestSuite/node_modules/readdirp/index.js +287 -0
  2388. package/test/EdelCsvTestSuite/node_modules/readdirp/package.json +158 -0
  2389. package/test/EdelCsvTestSuite/node_modules/require-directory/.jshintrc +67 -0
  2390. package/test/EdelCsvTestSuite/node_modules/require-directory/.travis.yml +3 -0
  2391. package/test/EdelCsvTestSuite/node_modules/require-directory/LICENSE +22 -0
  2392. package/test/EdelCsvTestSuite/node_modules/require-directory/README.markdown +184 -0
  2393. package/test/EdelCsvTestSuite/node_modules/require-directory/index.js +86 -0
  2394. package/test/EdelCsvTestSuite/node_modules/require-directory/package.json +69 -0
  2395. package/test/EdelCsvTestSuite/node_modules/rfdc/.github/workflows/ci.yml +21 -0
  2396. package/test/EdelCsvTestSuite/node_modules/rfdc/LICENSE +15 -0
  2397. package/test/EdelCsvTestSuite/node_modules/rfdc/default.js +3 -0
  2398. package/test/EdelCsvTestSuite/node_modules/rfdc/index.d.ts +10 -0
  2399. package/test/EdelCsvTestSuite/node_modules/rfdc/index.js +191 -0
  2400. package/test/EdelCsvTestSuite/node_modules/rfdc/index.test-d.ts +7 -0
  2401. package/test/EdelCsvTestSuite/node_modules/rfdc/package.json +97 -0
  2402. package/test/EdelCsvTestSuite/node_modules/rfdc/readme.md +143 -0
  2403. package/test/EdelCsvTestSuite/node_modules/rfdc/test/index.js +288 -0
  2404. package/test/EdelCsvTestSuite/node_modules/safe-buffer/LICENSE +21 -0
  2405. package/test/EdelCsvTestSuite/node_modules/safe-buffer/README.md +584 -0
  2406. package/test/EdelCsvTestSuite/node_modules/safe-buffer/index.d.ts +187 -0
  2407. package/test/EdelCsvTestSuite/node_modules/safe-buffer/index.js +65 -0
  2408. package/test/EdelCsvTestSuite/node_modules/safe-buffer/package.json +80 -0
  2409. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/.travis.yml +7 -0
  2410. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/CHANGELOG.md +7 -0
  2411. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/LICENSE +21 -0
  2412. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/benchmark.js +118 -0
  2413. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/compare.js +38 -0
  2414. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/index.d.ts +4 -0
  2415. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/index.js +6 -0
  2416. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/package.json +82 -0
  2417. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/readme.md +105 -0
  2418. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/stable.js +573 -0
  2419. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/test.js +518 -0
  2420. package/test/EdelCsvTestSuite/node_modules/safe-stable-stringify/test.json +227 -0
  2421. package/test/EdelCsvTestSuite/node_modules/serialize-javascript/LICENSE +27 -0
  2422. package/test/EdelCsvTestSuite/node_modules/serialize-javascript/README.md +142 -0
  2423. package/test/EdelCsvTestSuite/node_modules/serialize-javascript/index.js +268 -0
  2424. package/test/EdelCsvTestSuite/node_modules/serialize-javascript/package.json +64 -0
  2425. package/test/EdelCsvTestSuite/node_modules/set-immediate-shim/index.js +7 -0
  2426. package/test/EdelCsvTestSuite/node_modules/set-immediate-shim/package.json +66 -0
  2427. package/test/EdelCsvTestSuite/node_modules/set-immediate-shim/readme.md +31 -0
  2428. package/test/EdelCsvTestSuite/node_modules/simple-swizzle/LICENSE +21 -0
  2429. package/test/EdelCsvTestSuite/node_modules/simple-swizzle/README.md +39 -0
  2430. package/test/EdelCsvTestSuite/node_modules/simple-swizzle/index.js +29 -0
  2431. package/test/EdelCsvTestSuite/node_modules/simple-swizzle/package.json +74 -0
  2432. package/test/EdelCsvTestSuite/node_modules/stack-trace/License +19 -0
  2433. package/test/EdelCsvTestSuite/node_modules/stack-trace/Makefile +11 -0
  2434. package/test/EdelCsvTestSuite/node_modules/stack-trace/Readme.md +98 -0
  2435. package/test/EdelCsvTestSuite/node_modules/stack-trace/lib/stack-trace.js +136 -0
  2436. package/test/EdelCsvTestSuite/node_modules/stack-trace/package.json +57 -0
  2437. package/test/EdelCsvTestSuite/node_modules/streamroller/CHANGELOG.md +203 -0
  2438. package/test/EdelCsvTestSuite/node_modules/streamroller/LICENSE +20 -0
  2439. package/test/EdelCsvTestSuite/node_modules/streamroller/README.md +71 -0
  2440. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/DateRollingFileStream.js +41 -0
  2441. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/RollingFileStream.js +29 -0
  2442. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/RollingFileWriteStream.js +321 -0
  2443. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/fileNameFormatter.js +39 -0
  2444. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/fileNameParser.js +96 -0
  2445. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/index.js +5 -0
  2446. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/moveAndMaybeCompressFile.js +99 -0
  2447. package/test/EdelCsvTestSuite/node_modules/streamroller/lib/now.js +2 -0
  2448. package/test/EdelCsvTestSuite/node_modules/streamroller/package.json +116 -0
  2449. package/test/EdelCsvTestSuite/node_modules/string-width/index.d.ts +29 -0
  2450. package/test/EdelCsvTestSuite/node_modules/string-width/index.js +47 -0
  2451. package/test/EdelCsvTestSuite/node_modules/string-width/license +9 -0
  2452. package/test/EdelCsvTestSuite/node_modules/string-width/package.json +90 -0
  2453. package/test/EdelCsvTestSuite/node_modules/string-width/readme.md +50 -0
  2454. package/test/EdelCsvTestSuite/node_modules/string_decoder/LICENSE +48 -0
  2455. package/test/EdelCsvTestSuite/node_modules/string_decoder/README.md +47 -0
  2456. package/test/EdelCsvTestSuite/node_modules/string_decoder/lib/string_decoder.js +296 -0
  2457. package/test/EdelCsvTestSuite/node_modules/string_decoder/package.json +65 -0
  2458. package/test/EdelCsvTestSuite/node_modules/strip-ansi/index.d.ts +17 -0
  2459. package/test/EdelCsvTestSuite/node_modules/strip-ansi/index.js +4 -0
  2460. package/test/EdelCsvTestSuite/node_modules/strip-ansi/license +9 -0
  2461. package/test/EdelCsvTestSuite/node_modules/strip-ansi/package.json +88 -0
  2462. package/test/EdelCsvTestSuite/node_modules/strip-ansi/readme.md +46 -0
  2463. package/test/EdelCsvTestSuite/node_modules/strip-json-comments/index.d.ts +36 -0
  2464. package/test/EdelCsvTestSuite/node_modules/strip-json-comments/index.js +77 -0
  2465. package/test/EdelCsvTestSuite/node_modules/strip-json-comments/license +9 -0
  2466. package/test/EdelCsvTestSuite/node_modules/strip-json-comments/package.json +79 -0
  2467. package/test/EdelCsvTestSuite/node_modules/strip-json-comments/readme.md +78 -0
  2468. package/test/EdelCsvTestSuite/node_modules/supports-color/browser.js +24 -0
  2469. package/test/EdelCsvTestSuite/node_modules/supports-color/index.js +152 -0
  2470. package/test/EdelCsvTestSuite/node_modules/supports-color/license +9 -0
  2471. package/test/EdelCsvTestSuite/node_modules/supports-color/package.json +90 -0
  2472. package/test/EdelCsvTestSuite/node_modules/supports-color/readme.md +77 -0
  2473. package/test/EdelCsvTestSuite/node_modules/text-hex/LICENSE +21 -0
  2474. package/test/EdelCsvTestSuite/node_modules/text-hex/README.md +20 -0
  2475. package/test/EdelCsvTestSuite/node_modules/text-hex/index.js +24 -0
  2476. package/test/EdelCsvTestSuite/node_modules/text-hex/package.json +60 -0
  2477. package/test/EdelCsvTestSuite/node_modules/text-hex/test.js +11 -0
  2478. package/test/EdelCsvTestSuite/node_modules/to-regex-range/LICENSE +21 -0
  2479. package/test/EdelCsvTestSuite/node_modules/to-regex-range/README.md +305 -0
  2480. package/test/EdelCsvTestSuite/node_modules/to-regex-range/index.js +288 -0
  2481. package/test/EdelCsvTestSuite/node_modules/to-regex-range/package.json +125 -0
  2482. package/test/EdelCsvTestSuite/node_modules/triple-beam/.eslintrc +7 -0
  2483. package/test/EdelCsvTestSuite/node_modules/triple-beam/.gitattributes +1 -0
  2484. package/test/EdelCsvTestSuite/node_modules/triple-beam/.travis.yml +17 -0
  2485. package/test/EdelCsvTestSuite/node_modules/triple-beam/CHANGELOG.md +22 -0
  2486. package/test/EdelCsvTestSuite/node_modules/triple-beam/LICENSE +21 -0
  2487. package/test/EdelCsvTestSuite/node_modules/triple-beam/README.md +34 -0
  2488. package/test/EdelCsvTestSuite/node_modules/triple-beam/config/cli.js +42 -0
  2489. package/test/EdelCsvTestSuite/node_modules/triple-beam/config/index.js +32 -0
  2490. package/test/EdelCsvTestSuite/node_modules/triple-beam/config/npm.js +36 -0
  2491. package/test/EdelCsvTestSuite/node_modules/triple-beam/config/syslog.js +38 -0
  2492. package/test/EdelCsvTestSuite/node_modules/triple-beam/index.js +46 -0
  2493. package/test/EdelCsvTestSuite/node_modules/triple-beam/package.json +72 -0
  2494. package/test/EdelCsvTestSuite/node_modules/triple-beam/test.js +98 -0
  2495. package/test/EdelCsvTestSuite/node_modules/type-detect/LICENSE +19 -0
  2496. package/test/EdelCsvTestSuite/node_modules/type-detect/README.md +228 -0
  2497. package/test/EdelCsvTestSuite/node_modules/type-detect/index.js +378 -0
  2498. package/test/EdelCsvTestSuite/node_modules/type-detect/package.json +169 -0
  2499. package/test/EdelCsvTestSuite/node_modules/type-detect/type-detect.js +388 -0
  2500. package/test/EdelCsvTestSuite/node_modules/universalify/LICENSE +20 -0
  2501. package/test/EdelCsvTestSuite/node_modules/universalify/README.md +76 -0
  2502. package/test/EdelCsvTestSuite/node_modules/universalify/index.js +24 -0
  2503. package/test/EdelCsvTestSuite/node_modules/universalify/package.json +65 -0
  2504. package/test/EdelCsvTestSuite/node_modules/util-deprecate/History.md +16 -0
  2505. package/test/EdelCsvTestSuite/node_modules/util-deprecate/LICENSE +24 -0
  2506. package/test/EdelCsvTestSuite/node_modules/util-deprecate/README.md +53 -0
  2507. package/test/EdelCsvTestSuite/node_modules/util-deprecate/browser.js +67 -0
  2508. package/test/EdelCsvTestSuite/node_modules/util-deprecate/node.js +6 -0
  2509. package/test/EdelCsvTestSuite/node_modules/util-deprecate/package.json +61 -0
  2510. package/test/EdelCsvTestSuite/node_modules/which/CHANGELOG.md +166 -0
  2511. package/test/EdelCsvTestSuite/node_modules/which/LICENSE +15 -0
  2512. package/test/EdelCsvTestSuite/node_modules/which/README.md +54 -0
  2513. package/test/EdelCsvTestSuite/node_modules/which/bin/node-which +52 -0
  2514. package/test/EdelCsvTestSuite/node_modules/which/package.json +76 -0
  2515. package/test/EdelCsvTestSuite/node_modules/which/which.js +125 -0
  2516. package/test/EdelCsvTestSuite/node_modules/winston/CHANGELOG.md +560 -0
  2517. package/test/EdelCsvTestSuite/node_modules/winston/LICENSE +19 -0
  2518. package/test/EdelCsvTestSuite/node_modules/winston/README.md +1230 -0
  2519. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/common.js +56 -0
  2520. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/config/index.js +37 -0
  2521. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/container.js +147 -0
  2522. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/create-logger.js +141 -0
  2523. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/exception-handler.js +288 -0
  2524. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/exception-stream.js +94 -0
  2525. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/logger.js +752 -0
  2526. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/profiler.js +69 -0
  2527. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/rejection-handler.js +288 -0
  2528. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/tail-file.js +135 -0
  2529. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/transports/console.js +166 -0
  2530. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/transports/file.js +817 -0
  2531. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/transports/http.js +264 -0
  2532. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/transports/index.js +55 -0
  2533. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston/transports/stream.js +117 -0
  2534. package/test/EdelCsvTestSuite/node_modules/winston/dist/winston.js +172 -0
  2535. package/test/EdelCsvTestSuite/node_modules/winston/index.d.ts +193 -0
  2536. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/common.js +61 -0
  2537. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/config/index.d.ts +98 -0
  2538. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/config/index.js +35 -0
  2539. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/container.js +114 -0
  2540. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/create-logger.js +104 -0
  2541. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/exception-handler.js +245 -0
  2542. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/exception-stream.js +54 -0
  2543. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/logger.js +667 -0
  2544. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/profiler.js +51 -0
  2545. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/rejection-handler.js +251 -0
  2546. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/tail-file.js +124 -0
  2547. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/console.js +117 -0
  2548. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/file.js +695 -0
  2549. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/http.js +202 -0
  2550. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/index.d.ts +100 -0
  2551. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/index.js +56 -0
  2552. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston/transports/stream.js +63 -0
  2553. package/test/EdelCsvTestSuite/node_modules/winston/lib/winston.js +182 -0
  2554. package/test/EdelCsvTestSuite/node_modules/winston/package.json +117 -0
  2555. package/test/EdelCsvTestSuite/node_modules/winston-transport/.babelrc +3 -0
  2556. package/test/EdelCsvTestSuite/node_modules/winston-transport/.eslintrc +7 -0
  2557. package/test/EdelCsvTestSuite/node_modules/winston-transport/.gitattributes +1 -0
  2558. package/test/EdelCsvTestSuite/node_modules/winston-transport/.nyc_output/1c69f3e4-4c25-457d-9df5-dfa761729528.json +1 -0
  2559. package/test/EdelCsvTestSuite/node_modules/winston-transport/.nyc_output/processinfo/1c69f3e4-4c25-457d-9df5-dfa761729528.json +1 -0
  2560. package/test/EdelCsvTestSuite/node_modules/winston-transport/.nyc_output/processinfo/index.json +1 -0
  2561. package/test/EdelCsvTestSuite/node_modules/winston-transport/.travis.yml +17 -0
  2562. package/test/EdelCsvTestSuite/node_modules/winston-transport/CHANGELOG.md +115 -0
  2563. package/test/EdelCsvTestSuite/node_modules/winston-transport/LICENSE +22 -0
  2564. package/test/EdelCsvTestSuite/node_modules/winston-transport/README.md +50 -0
  2565. package/test/EdelCsvTestSuite/node_modules/winston-transport/dist/index.js +215 -0
  2566. package/test/EdelCsvTestSuite/node_modules/winston-transport/dist/legacy.js +116 -0
  2567. package/test/EdelCsvTestSuite/node_modules/winston-transport/index.d.ts +37 -0
  2568. package/test/EdelCsvTestSuite/node_modules/winston-transport/index.js +215 -0
  2569. package/test/EdelCsvTestSuite/node_modules/winston-transport/legacy.js +119 -0
  2570. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/.travis.yml +34 -0
  2571. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  2572. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/GOVERNANCE.md +136 -0
  2573. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/LICENSE +47 -0
  2574. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/README.md +58 -0
  2575. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  2576. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/duplex-browser.js +1 -0
  2577. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/duplex.js +1 -0
  2578. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  2579. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  2580. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  2581. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  2582. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/_stream_writable.js +687 -0
  2583. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
  2584. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  2585. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  2586. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  2587. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/package.json +84 -0
  2588. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/passthrough.js +1 -0
  2589. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/readable-browser.js +7 -0
  2590. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/readable.js +19 -0
  2591. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/transform.js +1 -0
  2592. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/writable-browser.js +1 -0
  2593. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/readable-stream/writable.js +8 -0
  2594. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/safe-buffer/LICENSE +21 -0
  2595. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/safe-buffer/README.md +584 -0
  2596. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/safe-buffer/index.d.ts +187 -0
  2597. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/safe-buffer/index.js +62 -0
  2598. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/safe-buffer/package.json +66 -0
  2599. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/string_decoder/.travis.yml +50 -0
  2600. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/string_decoder/LICENSE +48 -0
  2601. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/string_decoder/README.md +47 -0
  2602. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/string_decoder/lib/string_decoder.js +296 -0
  2603. package/test/EdelCsvTestSuite/node_modules/winston-transport/node_modules/string_decoder/package.json +62 -0
  2604. package/test/EdelCsvTestSuite/node_modules/winston-transport/package.json +87 -0
  2605. package/test/EdelCsvTestSuite/node_modules/winston-transport/tsconfig.json +22 -0
  2606. package/test/EdelCsvTestSuite/node_modules/workerpool/HISTORY.md +283 -0
  2607. package/test/EdelCsvTestSuite/node_modules/workerpool/LICENSE +201 -0
  2608. package/test/EdelCsvTestSuite/node_modules/workerpool/README.md +496 -0
  2609. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/worker.js +224 -0
  2610. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/worker.js.map +1 -0
  2611. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/workerpool.js +1683 -0
  2612. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/workerpool.js.map +1 -0
  2613. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/workerpool.min.js +3 -0
  2614. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/workerpool.min.js.LICENSE.txt +24 -0
  2615. package/test/EdelCsvTestSuite/node_modules/workerpool/dist/workerpool.min.js.map +1 -0
  2616. package/test/EdelCsvTestSuite/node_modules/workerpool/package.json +84 -0
  2617. package/test/EdelCsvTestSuite/node_modules/workerpool/src/Pool.js +441 -0
  2618. package/test/EdelCsvTestSuite/node_modules/workerpool/src/Promise.js +279 -0
  2619. package/test/EdelCsvTestSuite/node_modules/workerpool/src/WorkerHandler.js +502 -0
  2620. package/test/EdelCsvTestSuite/node_modules/workerpool/src/debug-port-allocator.js +28 -0
  2621. package/test/EdelCsvTestSuite/node_modules/workerpool/src/environment.js +36 -0
  2622. package/test/EdelCsvTestSuite/node_modules/workerpool/src/generated/embeddedWorker.js +6 -0
  2623. package/test/EdelCsvTestSuite/node_modules/workerpool/src/header.js +24 -0
  2624. package/test/EdelCsvTestSuite/node_modules/workerpool/src/index.js +41 -0
  2625. package/test/EdelCsvTestSuite/node_modules/workerpool/src/requireFoolWebpack.js +8 -0
  2626. package/test/EdelCsvTestSuite/node_modules/workerpool/src/types.js +16 -0
  2627. package/test/EdelCsvTestSuite/node_modules/workerpool/src/worker.js +202 -0
  2628. package/test/EdelCsvTestSuite/node_modules/wrap-ansi/index.js +216 -0
  2629. package/test/EdelCsvTestSuite/node_modules/wrap-ansi/license +9 -0
  2630. package/test/EdelCsvTestSuite/node_modules/wrap-ansi/package.json +94 -0
  2631. package/test/EdelCsvTestSuite/node_modules/wrap-ansi/readme.md +91 -0
  2632. package/test/EdelCsvTestSuite/node_modules/wrappy/LICENSE +15 -0
  2633. package/test/EdelCsvTestSuite/node_modules/wrappy/README.md +36 -0
  2634. package/test/EdelCsvTestSuite/node_modules/wrappy/package.json +59 -0
  2635. package/test/EdelCsvTestSuite/node_modules/wrappy/wrappy.js +33 -0
  2636. package/test/EdelCsvTestSuite/node_modules/y18n/CHANGELOG.md +100 -0
  2637. package/test/EdelCsvTestSuite/node_modules/y18n/LICENSE +13 -0
  2638. package/test/EdelCsvTestSuite/node_modules/y18n/README.md +127 -0
  2639. package/test/EdelCsvTestSuite/node_modules/y18n/build/index.cjs +203 -0
  2640. package/test/EdelCsvTestSuite/node_modules/y18n/build/lib/cjs.js +6 -0
  2641. package/test/EdelCsvTestSuite/node_modules/y18n/build/lib/index.js +174 -0
  2642. package/test/EdelCsvTestSuite/node_modules/y18n/build/lib/platform-shims/node.js +19 -0
  2643. package/test/EdelCsvTestSuite/node_modules/y18n/index.mjs +8 -0
  2644. package/test/EdelCsvTestSuite/node_modules/y18n/package.json +101 -0
  2645. package/test/EdelCsvTestSuite/node_modules/yargs/CHANGELOG.md +88 -0
  2646. package/test/EdelCsvTestSuite/node_modules/yargs/LICENSE +21 -0
  2647. package/test/EdelCsvTestSuite/node_modules/yargs/README.md +202 -0
  2648. package/test/EdelCsvTestSuite/node_modules/yargs/browser.mjs +7 -0
  2649. package/test/EdelCsvTestSuite/node_modules/yargs/build/index.cjs +2920 -0
  2650. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/argsert.js +62 -0
  2651. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/command.js +382 -0
  2652. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/completion-templates.js +47 -0
  2653. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/completion.js +128 -0
  2654. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/middleware.js +53 -0
  2655. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/parse-command.js +32 -0
  2656. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/typings/common-types.js +9 -0
  2657. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/typings/yargs-parser-types.js +1 -0
  2658. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/usage.js +548 -0
  2659. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/apply-extends.js +59 -0
  2660. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/is-promise.js +5 -0
  2661. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/levenshtein.js +26 -0
  2662. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/obj-filter.js +10 -0
  2663. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/process-argv.js +17 -0
  2664. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/set-blocking.js +12 -0
  2665. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/utils/which-module.js +10 -0
  2666. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/validation.js +308 -0
  2667. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/yargs-factory.js +1143 -0
  2668. package/test/EdelCsvTestSuite/node_modules/yargs/build/lib/yerror.js +7 -0
  2669. package/test/EdelCsvTestSuite/node_modules/yargs/helpers/helpers.mjs +10 -0
  2670. package/test/EdelCsvTestSuite/node_modules/yargs/helpers/index.js +14 -0
  2671. package/test/EdelCsvTestSuite/node_modules/yargs/helpers/package.json +3 -0
  2672. package/test/EdelCsvTestSuite/node_modules/yargs/index.cjs +39 -0
  2673. package/test/EdelCsvTestSuite/node_modules/yargs/index.mjs +8 -0
  2674. package/test/EdelCsvTestSuite/node_modules/yargs/lib/platform-shims/browser.mjs +92 -0
  2675. package/test/EdelCsvTestSuite/node_modules/yargs/lib/platform-shims/esm.mjs +67 -0
  2676. package/test/EdelCsvTestSuite/node_modules/yargs/locales/be.json +46 -0
  2677. package/test/EdelCsvTestSuite/node_modules/yargs/locales/de.json +46 -0
  2678. package/test/EdelCsvTestSuite/node_modules/yargs/locales/en.json +51 -0
  2679. package/test/EdelCsvTestSuite/node_modules/yargs/locales/es.json +46 -0
  2680. package/test/EdelCsvTestSuite/node_modules/yargs/locales/fi.json +49 -0
  2681. package/test/EdelCsvTestSuite/node_modules/yargs/locales/fr.json +53 -0
  2682. package/test/EdelCsvTestSuite/node_modules/yargs/locales/hi.json +49 -0
  2683. package/test/EdelCsvTestSuite/node_modules/yargs/locales/hu.json +46 -0
  2684. package/test/EdelCsvTestSuite/node_modules/yargs/locales/id.json +50 -0
  2685. package/test/EdelCsvTestSuite/node_modules/yargs/locales/it.json +46 -0
  2686. package/test/EdelCsvTestSuite/node_modules/yargs/locales/ja.json +51 -0
  2687. package/test/EdelCsvTestSuite/node_modules/yargs/locales/ko.json +49 -0
  2688. package/test/EdelCsvTestSuite/node_modules/yargs/locales/nb.json +44 -0
  2689. package/test/EdelCsvTestSuite/node_modules/yargs/locales/nl.json +49 -0
  2690. package/test/EdelCsvTestSuite/node_modules/yargs/locales/nn.json +44 -0
  2691. package/test/EdelCsvTestSuite/node_modules/yargs/locales/pirate.json +13 -0
  2692. package/test/EdelCsvTestSuite/node_modules/yargs/locales/pl.json +49 -0
  2693. package/test/EdelCsvTestSuite/node_modules/yargs/locales/pt.json +45 -0
  2694. package/test/EdelCsvTestSuite/node_modules/yargs/locales/pt_BR.json +48 -0
  2695. package/test/EdelCsvTestSuite/node_modules/yargs/locales/ru.json +46 -0
  2696. package/test/EdelCsvTestSuite/node_modules/yargs/locales/th.json +46 -0
  2697. package/test/EdelCsvTestSuite/node_modules/yargs/locales/tr.json +48 -0
  2698. package/test/EdelCsvTestSuite/node_modules/yargs/locales/zh_CN.json +48 -0
  2699. package/test/EdelCsvTestSuite/node_modules/yargs/locales/zh_TW.json +47 -0
  2700. package/test/EdelCsvTestSuite/node_modules/yargs/package.json +150 -0
  2701. package/test/EdelCsvTestSuite/node_modules/yargs/yargs +9 -0
  2702. package/test/EdelCsvTestSuite/node_modules/yargs-parser/CHANGELOG.md +226 -0
  2703. package/test/EdelCsvTestSuite/node_modules/yargs-parser/LICENSE.txt +14 -0
  2704. package/test/EdelCsvTestSuite/node_modules/yargs-parser/README.md +518 -0
  2705. package/test/EdelCsvTestSuite/node_modules/yargs-parser/browser.js +29 -0
  2706. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/index.cjs +1026 -0
  2707. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/lib/index.js +53 -0
  2708. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/lib/string-utils.js +56 -0
  2709. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/lib/tokenize-arg-string.js +35 -0
  2710. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/lib/yargs-parser-types.js +1 -0
  2711. package/test/EdelCsvTestSuite/node_modules/yargs-parser/build/lib/yargs-parser.js +1023 -0
  2712. package/test/EdelCsvTestSuite/node_modules/yargs-parser/package.json +120 -0
  2713. package/test/EdelCsvTestSuite/node_modules/yargs-unparser/CHANGELOG.md +82 -0
  2714. package/test/EdelCsvTestSuite/node_modules/yargs-unparser/LICENSE +21 -0
  2715. package/test/EdelCsvTestSuite/node_modules/yargs-unparser/README.md +86 -0
  2716. package/test/EdelCsvTestSuite/node_modules/yargs-unparser/index.js +166 -0
  2717. package/test/EdelCsvTestSuite/node_modules/yargs-unparser/package.json +83 -0
  2718. package/test/EdelCsvTestSuite/node_modules/yocto-queue/index.d.ts +56 -0
  2719. package/test/EdelCsvTestSuite/node_modules/yocto-queue/index.js +68 -0
  2720. package/test/EdelCsvTestSuite/node_modules/yocto-queue/license +9 -0
  2721. package/test/EdelCsvTestSuite/node_modules/yocto-queue/package.json +75 -0
  2722. package/test/EdelCsvTestSuite/node_modules/yocto-queue/readme.md +64 -0
  2723. package/test/EdelCsvTestSuite/package-lock.json +1253 -0
  2724. package/test/EdelCsvTestSuite/package.json +19 -0
  2725. package/test/EdelCsvTestSuite/subscribeFeed.js +154 -0
  2726. package/test/EdelCsvTestSuite/testMethod.js +719 -0
  2727. package/test/unitTests/commodity/CommodityLimitsApiTest.test.js +40 -0
  2728. package/test/unitTests/commodity/CommodityOrderBookApiTest.test.js +40 -0
  2729. package/test/unitTests/commodity/CommodityOrderDetailsApiTest.test.js +45 -0
  2730. package/test/unitTests/commodity/CommodityOrderHistoryApiTest.test.js +47 -0
  2731. package/test/unitTests/commodity/CommodityPositionBookApiTest.test.js +40 -0
  2732. package/test/unitTests/commodity/CommodityReportsApiTest.test.js +41 -0
  2733. package/test/unitTests/commodity/CommodityTradeApiTest.test.js +378 -0
  2734. package/test/unitTests/commodity/CommodityTradeBookApiTest.test.js +40 -0
  2735. package/test/unitTests/commodity/CommonLoginApiTest.test.js +77 -0
  2736. package/test/unitTests/config.js +20 -0
  2737. package/test/unitTests/equity/EquityHoldingsApiTest.test.js +59 -0
  2738. package/test/unitTests/equity/EquityLimitsApiTest.test.js +52 -0
  2739. package/test/unitTests/equity/EquityOrdersApiTest.test.js +161 -0
  2740. package/test/unitTests/equity/EquityPositionBookApiTest.test.js +52 -0
  2741. package/test/unitTests/equity/EquityTradeApiTest.test.js +903 -0
  2742. package/test/unitTests/equity/EquityTradeBookApiTest.test.js +28 -0
  2743. package/test/unitTests/mf/MFOrderBookApiTest.test.js +39 -0
  2744. package/test/unitTests/mf/MFTradeApiTest.test.js +120 -0
  2745. package/test/unitTests/package-lock.json +710 -0
  2746. package/test/unitTests/package.json +33 -0
@@ -0,0 +1,3853 @@
1
+ /*!
2
+ * chai
3
+ * http://chaijs.com
4
+ * Copyright(c) 2011-2014 Jake Luer <jake@alogicalparadox.com>
5
+ * MIT Licensed
6
+ */
7
+
8
+ module.exports = function (chai, _) {
9
+ var Assertion = chai.Assertion
10
+ , AssertionError = chai.AssertionError
11
+ , flag = _.flag;
12
+
13
+ /**
14
+ * ### Language Chains
15
+ *
16
+ * The following are provided as chainable getters to improve the readability
17
+ * of your assertions.
18
+ *
19
+ * **Chains**
20
+ *
21
+ * - to
22
+ * - be
23
+ * - been
24
+ * - is
25
+ * - that
26
+ * - which
27
+ * - and
28
+ * - has
29
+ * - have
30
+ * - with
31
+ * - at
32
+ * - of
33
+ * - same
34
+ * - but
35
+ * - does
36
+ * - still
37
+ * - also
38
+ *
39
+ * @name language chains
40
+ * @namespace BDD
41
+ * @api public
42
+ */
43
+
44
+ [ 'to', 'be', 'been', 'is'
45
+ , 'and', 'has', 'have', 'with'
46
+ , 'that', 'which', 'at', 'of'
47
+ , 'same', 'but', 'does', 'still', "also" ].forEach(function (chain) {
48
+ Assertion.addProperty(chain);
49
+ });
50
+
51
+ /**
52
+ * ### .not
53
+ *
54
+ * Negates all assertions that follow in the chain.
55
+ *
56
+ * expect(function () {}).to.not.throw();
57
+ * expect({a: 1}).to.not.have.property('b');
58
+ * expect([1, 2]).to.be.an('array').that.does.not.include(3);
59
+ *
60
+ * Just because you can negate any assertion with `.not` doesn't mean you
61
+ * should. With great power comes great responsibility. It's often best to
62
+ * assert that the one expected output was produced, rather than asserting
63
+ * that one of countless unexpected outputs wasn't produced. See individual
64
+ * assertions for specific guidance.
65
+ *
66
+ * expect(2).to.equal(2); // Recommended
67
+ * expect(2).to.not.equal(1); // Not recommended
68
+ *
69
+ * @name not
70
+ * @namespace BDD
71
+ * @api public
72
+ */
73
+
74
+ Assertion.addProperty('not', function () {
75
+ flag(this, 'negate', true);
76
+ });
77
+
78
+ /**
79
+ * ### .deep
80
+ *
81
+ * Causes all `.equal`, `.include`, `.members`, `.keys`, and `.property`
82
+ * assertions that follow in the chain to use deep equality instead of strict
83
+ * (`===`) equality. See the `deep-eql` project page for info on the deep
84
+ * equality algorithm: https://github.com/chaijs/deep-eql.
85
+ *
86
+ * // Target object deeply (but not strictly) equals `{a: 1}`
87
+ * expect({a: 1}).to.deep.equal({a: 1});
88
+ * expect({a: 1}).to.not.equal({a: 1});
89
+ *
90
+ * // Target array deeply (but not strictly) includes `{a: 1}`
91
+ * expect([{a: 1}]).to.deep.include({a: 1});
92
+ * expect([{a: 1}]).to.not.include({a: 1});
93
+ *
94
+ * // Target object deeply (but not strictly) includes `x: {a: 1}`
95
+ * expect({x: {a: 1}}).to.deep.include({x: {a: 1}});
96
+ * expect({x: {a: 1}}).to.not.include({x: {a: 1}});
97
+ *
98
+ * // Target array deeply (but not strictly) has member `{a: 1}`
99
+ * expect([{a: 1}]).to.have.deep.members([{a: 1}]);
100
+ * expect([{a: 1}]).to.not.have.members([{a: 1}]);
101
+ *
102
+ * // Target set deeply (but not strictly) has key `{a: 1}`
103
+ * expect(new Set([{a: 1}])).to.have.deep.keys([{a: 1}]);
104
+ * expect(new Set([{a: 1}])).to.not.have.keys([{a: 1}]);
105
+ *
106
+ * // Target object deeply (but not strictly) has property `x: {a: 1}`
107
+ * expect({x: {a: 1}}).to.have.deep.property('x', {a: 1});
108
+ * expect({x: {a: 1}}).to.not.have.property('x', {a: 1});
109
+ *
110
+ * @name deep
111
+ * @namespace BDD
112
+ * @api public
113
+ */
114
+
115
+ Assertion.addProperty('deep', function () {
116
+ flag(this, 'deep', true);
117
+ });
118
+
119
+ /**
120
+ * ### .nested
121
+ *
122
+ * Enables dot- and bracket-notation in all `.property` and `.include`
123
+ * assertions that follow in the chain.
124
+ *
125
+ * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]');
126
+ * expect({a: {b: ['x', 'y']}}).to.nested.include({'a.b[1]': 'y'});
127
+ *
128
+ * If `.` or `[]` are part of an actual property name, they can be escaped by
129
+ * adding two backslashes before them.
130
+ *
131
+ * expect({'.a': {'[b]': 'x'}}).to.have.nested.property('\\.a.\\[b\\]');
132
+ * expect({'.a': {'[b]': 'x'}}).to.nested.include({'\\.a.\\[b\\]': 'x'});
133
+ *
134
+ * `.nested` cannot be combined with `.own`.
135
+ *
136
+ * @name nested
137
+ * @namespace BDD
138
+ * @api public
139
+ */
140
+
141
+ Assertion.addProperty('nested', function () {
142
+ flag(this, 'nested', true);
143
+ });
144
+
145
+ /**
146
+ * ### .own
147
+ *
148
+ * Causes all `.property` and `.include` assertions that follow in the chain
149
+ * to ignore inherited properties.
150
+ *
151
+ * Object.prototype.b = 2;
152
+ *
153
+ * expect({a: 1}).to.have.own.property('a');
154
+ * expect({a: 1}).to.have.property('b');
155
+ * expect({a: 1}).to.not.have.own.property('b');
156
+ *
157
+ * expect({a: 1}).to.own.include({a: 1});
158
+ * expect({a: 1}).to.include({b: 2}).but.not.own.include({b: 2});
159
+ *
160
+ * `.own` cannot be combined with `.nested`.
161
+ *
162
+ * @name own
163
+ * @namespace BDD
164
+ * @api public
165
+ */
166
+
167
+ Assertion.addProperty('own', function () {
168
+ flag(this, 'own', true);
169
+ });
170
+
171
+ /**
172
+ * ### .ordered
173
+ *
174
+ * Causes all `.members` assertions that follow in the chain to require that
175
+ * members be in the same order.
176
+ *
177
+ * expect([1, 2]).to.have.ordered.members([1, 2])
178
+ * .but.not.have.ordered.members([2, 1]);
179
+ *
180
+ * When `.include` and `.ordered` are combined, the ordering begins at the
181
+ * start of both arrays.
182
+ *
183
+ * expect([1, 2, 3]).to.include.ordered.members([1, 2])
184
+ * .but.not.include.ordered.members([2, 3]);
185
+ *
186
+ * @name ordered
187
+ * @namespace BDD
188
+ * @api public
189
+ */
190
+
191
+ Assertion.addProperty('ordered', function () {
192
+ flag(this, 'ordered', true);
193
+ });
194
+
195
+ /**
196
+ * ### .any
197
+ *
198
+ * Causes all `.keys` assertions that follow in the chain to only require that
199
+ * the target have at least one of the given keys. This is the opposite of
200
+ * `.all`, which requires that the target have all of the given keys.
201
+ *
202
+ * expect({a: 1, b: 2}).to.not.have.any.keys('c', 'd');
203
+ *
204
+ * See the `.keys` doc for guidance on when to use `.any` or `.all`.
205
+ *
206
+ * @name any
207
+ * @namespace BDD
208
+ * @api public
209
+ */
210
+
211
+ Assertion.addProperty('any', function () {
212
+ flag(this, 'any', true);
213
+ flag(this, 'all', false);
214
+ });
215
+
216
+ /**
217
+ * ### .all
218
+ *
219
+ * Causes all `.keys` assertions that follow in the chain to require that the
220
+ * target have all of the given keys. This is the opposite of `.any`, which
221
+ * only requires that the target have at least one of the given keys.
222
+ *
223
+ * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
224
+ *
225
+ * Note that `.all` is used by default when neither `.all` nor `.any` are
226
+ * added earlier in the chain. However, it's often best to add `.all` anyway
227
+ * because it improves readability.
228
+ *
229
+ * See the `.keys` doc for guidance on when to use `.any` or `.all`.
230
+ *
231
+ * @name all
232
+ * @namespace BDD
233
+ * @api public
234
+ */
235
+
236
+ Assertion.addProperty('all', function () {
237
+ flag(this, 'all', true);
238
+ flag(this, 'any', false);
239
+ });
240
+
241
+ /**
242
+ * ### .a(type[, msg])
243
+ *
244
+ * Asserts that the target's type is equal to the given string `type`. Types
245
+ * are case insensitive. See the `type-detect` project page for info on the
246
+ * type detection algorithm: https://github.com/chaijs/type-detect.
247
+ *
248
+ * expect('foo').to.be.a('string');
249
+ * expect({a: 1}).to.be.an('object');
250
+ * expect(null).to.be.a('null');
251
+ * expect(undefined).to.be.an('undefined');
252
+ * expect(new Error).to.be.an('error');
253
+ * expect(Promise.resolve()).to.be.a('promise');
254
+ * expect(new Float32Array).to.be.a('float32array');
255
+ * expect(Symbol()).to.be.a('symbol');
256
+ *
257
+ * `.a` supports objects that have a custom type set via `Symbol.toStringTag`.
258
+ *
259
+ * var myObj = {
260
+ * [Symbol.toStringTag]: 'myCustomType'
261
+ * };
262
+ *
263
+ * expect(myObj).to.be.a('myCustomType').but.not.an('object');
264
+ *
265
+ * It's often best to use `.a` to check a target's type before making more
266
+ * assertions on the same target. That way, you avoid unexpected behavior from
267
+ * any assertion that does different things based on the target's type.
268
+ *
269
+ * expect([1, 2, 3]).to.be.an('array').that.includes(2);
270
+ * expect([]).to.be.an('array').that.is.empty;
271
+ *
272
+ * Add `.not` earlier in the chain to negate `.a`. However, it's often best to
273
+ * assert that the target is the expected type, rather than asserting that it
274
+ * isn't one of many unexpected types.
275
+ *
276
+ * expect('foo').to.be.a('string'); // Recommended
277
+ * expect('foo').to.not.be.an('array'); // Not recommended
278
+ *
279
+ * `.a` accepts an optional `msg` argument which is a custom error message to
280
+ * show when the assertion fails. The message can also be given as the second
281
+ * argument to `expect`.
282
+ *
283
+ * expect(1).to.be.a('string', 'nooo why fail??');
284
+ * expect(1, 'nooo why fail??').to.be.a('string');
285
+ *
286
+ * `.a` can also be used as a language chain to improve the readability of
287
+ * your assertions.
288
+ *
289
+ * expect({b: 2}).to.have.a.property('b');
290
+ *
291
+ * The alias `.an` can be used interchangeably with `.a`.
292
+ *
293
+ * @name a
294
+ * @alias an
295
+ * @param {String} type
296
+ * @param {String} msg _optional_
297
+ * @namespace BDD
298
+ * @api public
299
+ */
300
+
301
+ function an (type, msg) {
302
+ if (msg) flag(this, 'message', msg);
303
+ type = type.toLowerCase();
304
+ var obj = flag(this, 'object')
305
+ , article = ~[ 'a', 'e', 'i', 'o', 'u' ].indexOf(type.charAt(0)) ? 'an ' : 'a ';
306
+
307
+ this.assert(
308
+ type === _.type(obj).toLowerCase()
309
+ , 'expected #{this} to be ' + article + type
310
+ , 'expected #{this} not to be ' + article + type
311
+ );
312
+ }
313
+
314
+ Assertion.addChainableMethod('an', an);
315
+ Assertion.addChainableMethod('a', an);
316
+
317
+ /**
318
+ * ### .include(val[, msg])
319
+ *
320
+ * When the target is a string, `.include` asserts that the given string `val`
321
+ * is a substring of the target.
322
+ *
323
+ * expect('foobar').to.include('foo');
324
+ *
325
+ * When the target is an array, `.include` asserts that the given `val` is a
326
+ * member of the target.
327
+ *
328
+ * expect([1, 2, 3]).to.include(2);
329
+ *
330
+ * When the target is an object, `.include` asserts that the given object
331
+ * `val`'s properties are a subset of the target's properties.
332
+ *
333
+ * expect({a: 1, b: 2, c: 3}).to.include({a: 1, b: 2});
334
+ *
335
+ * When the target is a Set or WeakSet, `.include` asserts that the given `val` is a
336
+ * member of the target. SameValueZero equality algorithm is used.
337
+ *
338
+ * expect(new Set([1, 2])).to.include(2);
339
+ *
340
+ * When the target is a Map, `.include` asserts that the given `val` is one of
341
+ * the values of the target. SameValueZero equality algorithm is used.
342
+ *
343
+ * expect(new Map([['a', 1], ['b', 2]])).to.include(2);
344
+ *
345
+ * Because `.include` does different things based on the target's type, it's
346
+ * important to check the target's type before using `.include`. See the `.a`
347
+ * doc for info on testing a target's type.
348
+ *
349
+ * expect([1, 2, 3]).to.be.an('array').that.includes(2);
350
+ *
351
+ * By default, strict (`===`) equality is used to compare array members and
352
+ * object properties. Add `.deep` earlier in the chain to use deep equality
353
+ * instead (WeakSet targets are not supported). See the `deep-eql` project
354
+ * page for info on the deep equality algorithm: https://github.com/chaijs/deep-eql.
355
+ *
356
+ * // Target array deeply (but not strictly) includes `{a: 1}`
357
+ * expect([{a: 1}]).to.deep.include({a: 1});
358
+ * expect([{a: 1}]).to.not.include({a: 1});
359
+ *
360
+ * // Target object deeply (but not strictly) includes `x: {a: 1}`
361
+ * expect({x: {a: 1}}).to.deep.include({x: {a: 1}});
362
+ * expect({x: {a: 1}}).to.not.include({x: {a: 1}});
363
+ *
364
+ * By default, all of the target's properties are searched when working with
365
+ * objects. This includes properties that are inherited and/or non-enumerable.
366
+ * Add `.own` earlier in the chain to exclude the target's inherited
367
+ * properties from the search.
368
+ *
369
+ * Object.prototype.b = 2;
370
+ *
371
+ * expect({a: 1}).to.own.include({a: 1});
372
+ * expect({a: 1}).to.include({b: 2}).but.not.own.include({b: 2});
373
+ *
374
+ * Note that a target object is always only searched for `val`'s own
375
+ * enumerable properties.
376
+ *
377
+ * `.deep` and `.own` can be combined.
378
+ *
379
+ * expect({a: {b: 2}}).to.deep.own.include({a: {b: 2}});
380
+ *
381
+ * Add `.nested` earlier in the chain to enable dot- and bracket-notation when
382
+ * referencing nested properties.
383
+ *
384
+ * expect({a: {b: ['x', 'y']}}).to.nested.include({'a.b[1]': 'y'});
385
+ *
386
+ * If `.` or `[]` are part of an actual property name, they can be escaped by
387
+ * adding two backslashes before them.
388
+ *
389
+ * expect({'.a': {'[b]': 2}}).to.nested.include({'\\.a.\\[b\\]': 2});
390
+ *
391
+ * `.deep` and `.nested` can be combined.
392
+ *
393
+ * expect({a: {b: [{c: 3}]}}).to.deep.nested.include({'a.b[0]': {c: 3}});
394
+ *
395
+ * `.own` and `.nested` cannot be combined.
396
+ *
397
+ * Add `.not` earlier in the chain to negate `.include`.
398
+ *
399
+ * expect('foobar').to.not.include('taco');
400
+ * expect([1, 2, 3]).to.not.include(4);
401
+ *
402
+ * However, it's dangerous to negate `.include` when the target is an object.
403
+ * The problem is that it creates uncertain expectations by asserting that the
404
+ * target object doesn't have all of `val`'s key/value pairs but may or may
405
+ * not have some of them. It's often best to identify the exact output that's
406
+ * expected, and then write an assertion that only accepts that exact output.
407
+ *
408
+ * When the target object isn't even expected to have `val`'s keys, it's
409
+ * often best to assert exactly that.
410
+ *
411
+ * expect({c: 3}).to.not.have.any.keys('a', 'b'); // Recommended
412
+ * expect({c: 3}).to.not.include({a: 1, b: 2}); // Not recommended
413
+ *
414
+ * When the target object is expected to have `val`'s keys, it's often best to
415
+ * assert that each of the properties has its expected value, rather than
416
+ * asserting that each property doesn't have one of many unexpected values.
417
+ *
418
+ * expect({a: 3, b: 4}).to.include({a: 3, b: 4}); // Recommended
419
+ * expect({a: 3, b: 4}).to.not.include({a: 1, b: 2}); // Not recommended
420
+ *
421
+ * `.include` accepts an optional `msg` argument which is a custom error
422
+ * message to show when the assertion fails. The message can also be given as
423
+ * the second argument to `expect`.
424
+ *
425
+ * expect([1, 2, 3]).to.include(4, 'nooo why fail??');
426
+ * expect([1, 2, 3], 'nooo why fail??').to.include(4);
427
+ *
428
+ * `.include` can also be used as a language chain, causing all `.members` and
429
+ * `.keys` assertions that follow in the chain to require the target to be a
430
+ * superset of the expected set, rather than an identical set. Note that
431
+ * `.members` ignores duplicates in the subset when `.include` is added.
432
+ *
433
+ * // Target object's keys are a superset of ['a', 'b'] but not identical
434
+ * expect({a: 1, b: 2, c: 3}).to.include.all.keys('a', 'b');
435
+ * expect({a: 1, b: 2, c: 3}).to.not.have.all.keys('a', 'b');
436
+ *
437
+ * // Target array is a superset of [1, 2] but not identical
438
+ * expect([1, 2, 3]).to.include.members([1, 2]);
439
+ * expect([1, 2, 3]).to.not.have.members([1, 2]);
440
+ *
441
+ * // Duplicates in the subset are ignored
442
+ * expect([1, 2, 3]).to.include.members([1, 2, 2, 2]);
443
+ *
444
+ * Note that adding `.any` earlier in the chain causes the `.keys` assertion
445
+ * to ignore `.include`.
446
+ *
447
+ * // Both assertions are identical
448
+ * expect({a: 1}).to.include.any.keys('a', 'b');
449
+ * expect({a: 1}).to.have.any.keys('a', 'b');
450
+ *
451
+ * The aliases `.includes`, `.contain`, and `.contains` can be used
452
+ * interchangeably with `.include`.
453
+ *
454
+ * @name include
455
+ * @alias contain
456
+ * @alias includes
457
+ * @alias contains
458
+ * @param {Mixed} val
459
+ * @param {String} msg _optional_
460
+ * @namespace BDD
461
+ * @api public
462
+ */
463
+
464
+ function SameValueZero(a, b) {
465
+ return (_.isNaN(a) && _.isNaN(b)) || a === b;
466
+ }
467
+
468
+ function includeChainingBehavior () {
469
+ flag(this, 'contains', true);
470
+ }
471
+
472
+ function include (val, msg) {
473
+ if (msg) flag(this, 'message', msg);
474
+
475
+ var obj = flag(this, 'object')
476
+ , objType = _.type(obj).toLowerCase()
477
+ , flagMsg = flag(this, 'message')
478
+ , negate = flag(this, 'negate')
479
+ , ssfi = flag(this, 'ssfi')
480
+ , isDeep = flag(this, 'deep')
481
+ , descriptor = isDeep ? 'deep ' : '';
482
+
483
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
484
+
485
+ var included = false;
486
+
487
+ switch (objType) {
488
+ case 'string':
489
+ included = obj.indexOf(val) !== -1;
490
+ break;
491
+
492
+ case 'weakset':
493
+ if (isDeep) {
494
+ throw new AssertionError(
495
+ flagMsg + 'unable to use .deep.include with WeakSet',
496
+ undefined,
497
+ ssfi
498
+ );
499
+ }
500
+
501
+ included = obj.has(val);
502
+ break;
503
+
504
+ case 'map':
505
+ var isEql = isDeep ? _.eql : SameValueZero;
506
+ obj.forEach(function (item) {
507
+ included = included || isEql(item, val);
508
+ });
509
+ break;
510
+
511
+ case 'set':
512
+ if (isDeep) {
513
+ obj.forEach(function (item) {
514
+ included = included || _.eql(item, val);
515
+ });
516
+ } else {
517
+ included = obj.has(val);
518
+ }
519
+ break;
520
+
521
+ case 'array':
522
+ if (isDeep) {
523
+ included = obj.some(function (item) {
524
+ return _.eql(item, val);
525
+ })
526
+ } else {
527
+ included = obj.indexOf(val) !== -1;
528
+ }
529
+ break;
530
+
531
+ default:
532
+ // This block is for asserting a subset of properties in an object.
533
+ // `_.expectTypes` isn't used here because `.include` should work with
534
+ // objects with a custom `@@toStringTag`.
535
+ if (val !== Object(val)) {
536
+ throw new AssertionError(
537
+ flagMsg + 'the given combination of arguments ('
538
+ + objType + ' and '
539
+ + _.type(val).toLowerCase() + ')'
540
+ + ' is invalid for this assertion. '
541
+ + 'You can use an array, a map, an object, a set, a string, '
542
+ + 'or a weakset instead of a '
543
+ + _.type(val).toLowerCase(),
544
+ undefined,
545
+ ssfi
546
+ );
547
+ }
548
+
549
+ var props = Object.keys(val)
550
+ , firstErr = null
551
+ , numErrs = 0;
552
+
553
+ props.forEach(function (prop) {
554
+ var propAssertion = new Assertion(obj);
555
+ _.transferFlags(this, propAssertion, true);
556
+ flag(propAssertion, 'lockSsfi', true);
557
+
558
+ if (!negate || props.length === 1) {
559
+ propAssertion.property(prop, val[prop]);
560
+ return;
561
+ }
562
+
563
+ try {
564
+ propAssertion.property(prop, val[prop]);
565
+ } catch (err) {
566
+ if (!_.checkError.compatibleConstructor(err, AssertionError)) {
567
+ throw err;
568
+ }
569
+ if (firstErr === null) firstErr = err;
570
+ numErrs++;
571
+ }
572
+ }, this);
573
+
574
+ // When validating .not.include with multiple properties, we only want
575
+ // to throw an assertion error if all of the properties are included,
576
+ // in which case we throw the first property assertion error that we
577
+ // encountered.
578
+ if (negate && props.length > 1 && numErrs === props.length) {
579
+ throw firstErr;
580
+ }
581
+ return;
582
+ }
583
+
584
+ // Assert inclusion in collection or substring in a string.
585
+ this.assert(
586
+ included
587
+ , 'expected #{this} to ' + descriptor + 'include ' + _.inspect(val)
588
+ , 'expected #{this} to not ' + descriptor + 'include ' + _.inspect(val));
589
+ }
590
+
591
+ Assertion.addChainableMethod('include', include, includeChainingBehavior);
592
+ Assertion.addChainableMethod('contain', include, includeChainingBehavior);
593
+ Assertion.addChainableMethod('contains', include, includeChainingBehavior);
594
+ Assertion.addChainableMethod('includes', include, includeChainingBehavior);
595
+
596
+ /**
597
+ * ### .ok
598
+ *
599
+ * Asserts that the target is a truthy value (considered `true` in boolean context).
600
+ * However, it's often best to assert that the target is strictly (`===`) or
601
+ * deeply equal to its expected value.
602
+ *
603
+ * expect(1).to.equal(1); // Recommended
604
+ * expect(1).to.be.ok; // Not recommended
605
+ *
606
+ * expect(true).to.be.true; // Recommended
607
+ * expect(true).to.be.ok; // Not recommended
608
+ *
609
+ * Add `.not` earlier in the chain to negate `.ok`.
610
+ *
611
+ * expect(0).to.equal(0); // Recommended
612
+ * expect(0).to.not.be.ok; // Not recommended
613
+ *
614
+ * expect(false).to.be.false; // Recommended
615
+ * expect(false).to.not.be.ok; // Not recommended
616
+ *
617
+ * expect(null).to.be.null; // Recommended
618
+ * expect(null).to.not.be.ok; // Not recommended
619
+ *
620
+ * expect(undefined).to.be.undefined; // Recommended
621
+ * expect(undefined).to.not.be.ok; // Not recommended
622
+ *
623
+ * A custom error message can be given as the second argument to `expect`.
624
+ *
625
+ * expect(false, 'nooo why fail??').to.be.ok;
626
+ *
627
+ * @name ok
628
+ * @namespace BDD
629
+ * @api public
630
+ */
631
+
632
+ Assertion.addProperty('ok', function () {
633
+ this.assert(
634
+ flag(this, 'object')
635
+ , 'expected #{this} to be truthy'
636
+ , 'expected #{this} to be falsy');
637
+ });
638
+
639
+ /**
640
+ * ### .true
641
+ *
642
+ * Asserts that the target is strictly (`===`) equal to `true`.
643
+ *
644
+ * expect(true).to.be.true;
645
+ *
646
+ * Add `.not` earlier in the chain to negate `.true`. However, it's often best
647
+ * to assert that the target is equal to its expected value, rather than not
648
+ * equal to `true`.
649
+ *
650
+ * expect(false).to.be.false; // Recommended
651
+ * expect(false).to.not.be.true; // Not recommended
652
+ *
653
+ * expect(1).to.equal(1); // Recommended
654
+ * expect(1).to.not.be.true; // Not recommended
655
+ *
656
+ * A custom error message can be given as the second argument to `expect`.
657
+ *
658
+ * expect(false, 'nooo why fail??').to.be.true;
659
+ *
660
+ * @name true
661
+ * @namespace BDD
662
+ * @api public
663
+ */
664
+
665
+ Assertion.addProperty('true', function () {
666
+ this.assert(
667
+ true === flag(this, 'object')
668
+ , 'expected #{this} to be true'
669
+ , 'expected #{this} to be false'
670
+ , flag(this, 'negate') ? false : true
671
+ );
672
+ });
673
+
674
+ /**
675
+ * ### .false
676
+ *
677
+ * Asserts that the target is strictly (`===`) equal to `false`.
678
+ *
679
+ * expect(false).to.be.false;
680
+ *
681
+ * Add `.not` earlier in the chain to negate `.false`. However, it's often
682
+ * best to assert that the target is equal to its expected value, rather than
683
+ * not equal to `false`.
684
+ *
685
+ * expect(true).to.be.true; // Recommended
686
+ * expect(true).to.not.be.false; // Not recommended
687
+ *
688
+ * expect(1).to.equal(1); // Recommended
689
+ * expect(1).to.not.be.false; // Not recommended
690
+ *
691
+ * A custom error message can be given as the second argument to `expect`.
692
+ *
693
+ * expect(true, 'nooo why fail??').to.be.false;
694
+ *
695
+ * @name false
696
+ * @namespace BDD
697
+ * @api public
698
+ */
699
+
700
+ Assertion.addProperty('false', function () {
701
+ this.assert(
702
+ false === flag(this, 'object')
703
+ , 'expected #{this} to be false'
704
+ , 'expected #{this} to be true'
705
+ , flag(this, 'negate') ? true : false
706
+ );
707
+ });
708
+
709
+ /**
710
+ * ### .null
711
+ *
712
+ * Asserts that the target is strictly (`===`) equal to `null`.
713
+ *
714
+ * expect(null).to.be.null;
715
+ *
716
+ * Add `.not` earlier in the chain to negate `.null`. However, it's often best
717
+ * to assert that the target is equal to its expected value, rather than not
718
+ * equal to `null`.
719
+ *
720
+ * expect(1).to.equal(1); // Recommended
721
+ * expect(1).to.not.be.null; // Not recommended
722
+ *
723
+ * A custom error message can be given as the second argument to `expect`.
724
+ *
725
+ * expect(42, 'nooo why fail??').to.be.null;
726
+ *
727
+ * @name null
728
+ * @namespace BDD
729
+ * @api public
730
+ */
731
+
732
+ Assertion.addProperty('null', function () {
733
+ this.assert(
734
+ null === flag(this, 'object')
735
+ , 'expected #{this} to be null'
736
+ , 'expected #{this} not to be null'
737
+ );
738
+ });
739
+
740
+ /**
741
+ * ### .undefined
742
+ *
743
+ * Asserts that the target is strictly (`===`) equal to `undefined`.
744
+ *
745
+ * expect(undefined).to.be.undefined;
746
+ *
747
+ * Add `.not` earlier in the chain to negate `.undefined`. However, it's often
748
+ * best to assert that the target is equal to its expected value, rather than
749
+ * not equal to `undefined`.
750
+ *
751
+ * expect(1).to.equal(1); // Recommended
752
+ * expect(1).to.not.be.undefined; // Not recommended
753
+ *
754
+ * A custom error message can be given as the second argument to `expect`.
755
+ *
756
+ * expect(42, 'nooo why fail??').to.be.undefined;
757
+ *
758
+ * @name undefined
759
+ * @namespace BDD
760
+ * @api public
761
+ */
762
+
763
+ Assertion.addProperty('undefined', function () {
764
+ this.assert(
765
+ undefined === flag(this, 'object')
766
+ , 'expected #{this} to be undefined'
767
+ , 'expected #{this} not to be undefined'
768
+ );
769
+ });
770
+
771
+ /**
772
+ * ### .NaN
773
+ *
774
+ * Asserts that the target is exactly `NaN`.
775
+ *
776
+ * expect(NaN).to.be.NaN;
777
+ *
778
+ * Add `.not` earlier in the chain to negate `.NaN`. However, it's often best
779
+ * to assert that the target is equal to its expected value, rather than not
780
+ * equal to `NaN`.
781
+ *
782
+ * expect('foo').to.equal('foo'); // Recommended
783
+ * expect('foo').to.not.be.NaN; // Not recommended
784
+ *
785
+ * A custom error message can be given as the second argument to `expect`.
786
+ *
787
+ * expect(42, 'nooo why fail??').to.be.NaN;
788
+ *
789
+ * @name NaN
790
+ * @namespace BDD
791
+ * @api public
792
+ */
793
+
794
+ Assertion.addProperty('NaN', function () {
795
+ this.assert(
796
+ _.isNaN(flag(this, 'object'))
797
+ , 'expected #{this} to be NaN'
798
+ , 'expected #{this} not to be NaN'
799
+ );
800
+ });
801
+
802
+ /**
803
+ * ### .exist
804
+ *
805
+ * Asserts that the target is not strictly (`===`) equal to either `null` or
806
+ * `undefined`. However, it's often best to assert that the target is equal to
807
+ * its expected value.
808
+ *
809
+ * expect(1).to.equal(1); // Recommended
810
+ * expect(1).to.exist; // Not recommended
811
+ *
812
+ * expect(0).to.equal(0); // Recommended
813
+ * expect(0).to.exist; // Not recommended
814
+ *
815
+ * Add `.not` earlier in the chain to negate `.exist`.
816
+ *
817
+ * expect(null).to.be.null; // Recommended
818
+ * expect(null).to.not.exist; // Not recommended
819
+ *
820
+ * expect(undefined).to.be.undefined; // Recommended
821
+ * expect(undefined).to.not.exist; // Not recommended
822
+ *
823
+ * A custom error message can be given as the second argument to `expect`.
824
+ *
825
+ * expect(null, 'nooo why fail??').to.exist;
826
+ *
827
+ * The alias `.exists` can be used interchangeably with `.exist`.
828
+ *
829
+ * @name exist
830
+ * @alias exists
831
+ * @namespace BDD
832
+ * @api public
833
+ */
834
+
835
+ function assertExist () {
836
+ var val = flag(this, 'object');
837
+ this.assert(
838
+ val !== null && val !== undefined
839
+ , 'expected #{this} to exist'
840
+ , 'expected #{this} to not exist'
841
+ );
842
+ }
843
+
844
+ Assertion.addProperty('exist', assertExist);
845
+ Assertion.addProperty('exists', assertExist);
846
+
847
+ /**
848
+ * ### .empty
849
+ *
850
+ * When the target is a string or array, `.empty` asserts that the target's
851
+ * `length` property is strictly (`===`) equal to `0`.
852
+ *
853
+ * expect([]).to.be.empty;
854
+ * expect('').to.be.empty;
855
+ *
856
+ * When the target is a map or set, `.empty` asserts that the target's `size`
857
+ * property is strictly equal to `0`.
858
+ *
859
+ * expect(new Set()).to.be.empty;
860
+ * expect(new Map()).to.be.empty;
861
+ *
862
+ * When the target is a non-function object, `.empty` asserts that the target
863
+ * doesn't have any own enumerable properties. Properties with Symbol-based
864
+ * keys are excluded from the count.
865
+ *
866
+ * expect({}).to.be.empty;
867
+ *
868
+ * Because `.empty` does different things based on the target's type, it's
869
+ * important to check the target's type before using `.empty`. See the `.a`
870
+ * doc for info on testing a target's type.
871
+ *
872
+ * expect([]).to.be.an('array').that.is.empty;
873
+ *
874
+ * Add `.not` earlier in the chain to negate `.empty`. However, it's often
875
+ * best to assert that the target contains its expected number of values,
876
+ * rather than asserting that it's not empty.
877
+ *
878
+ * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
879
+ * expect([1, 2, 3]).to.not.be.empty; // Not recommended
880
+ *
881
+ * expect(new Set([1, 2, 3])).to.have.property('size', 3); // Recommended
882
+ * expect(new Set([1, 2, 3])).to.not.be.empty; // Not recommended
883
+ *
884
+ * expect(Object.keys({a: 1})).to.have.lengthOf(1); // Recommended
885
+ * expect({a: 1}).to.not.be.empty; // Not recommended
886
+ *
887
+ * A custom error message can be given as the second argument to `expect`.
888
+ *
889
+ * expect([1, 2, 3], 'nooo why fail??').to.be.empty;
890
+ *
891
+ * @name empty
892
+ * @namespace BDD
893
+ * @api public
894
+ */
895
+
896
+ Assertion.addProperty('empty', function () {
897
+ var val = flag(this, 'object')
898
+ , ssfi = flag(this, 'ssfi')
899
+ , flagMsg = flag(this, 'message')
900
+ , itemsCount;
901
+
902
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
903
+
904
+ switch (_.type(val).toLowerCase()) {
905
+ case 'array':
906
+ case 'string':
907
+ itemsCount = val.length;
908
+ break;
909
+ case 'map':
910
+ case 'set':
911
+ itemsCount = val.size;
912
+ break;
913
+ case 'weakmap':
914
+ case 'weakset':
915
+ throw new AssertionError(
916
+ flagMsg + '.empty was passed a weak collection',
917
+ undefined,
918
+ ssfi
919
+ );
920
+ case 'function':
921
+ var msg = flagMsg + '.empty was passed a function ' + _.getName(val);
922
+ throw new AssertionError(msg.trim(), undefined, ssfi);
923
+ default:
924
+ if (val !== Object(val)) {
925
+ throw new AssertionError(
926
+ flagMsg + '.empty was passed non-string primitive ' + _.inspect(val),
927
+ undefined,
928
+ ssfi
929
+ );
930
+ }
931
+ itemsCount = Object.keys(val).length;
932
+ }
933
+
934
+ this.assert(
935
+ 0 === itemsCount
936
+ , 'expected #{this} to be empty'
937
+ , 'expected #{this} not to be empty'
938
+ );
939
+ });
940
+
941
+ /**
942
+ * ### .arguments
943
+ *
944
+ * Asserts that the target is an `arguments` object.
945
+ *
946
+ * function test () {
947
+ * expect(arguments).to.be.arguments;
948
+ * }
949
+ *
950
+ * test();
951
+ *
952
+ * Add `.not` earlier in the chain to negate `.arguments`. However, it's often
953
+ * best to assert which type the target is expected to be, rather than
954
+ * asserting that it’s not an `arguments` object.
955
+ *
956
+ * expect('foo').to.be.a('string'); // Recommended
957
+ * expect('foo').to.not.be.arguments; // Not recommended
958
+ *
959
+ * A custom error message can be given as the second argument to `expect`.
960
+ *
961
+ * expect({}, 'nooo why fail??').to.be.arguments;
962
+ *
963
+ * The alias `.Arguments` can be used interchangeably with `.arguments`.
964
+ *
965
+ * @name arguments
966
+ * @alias Arguments
967
+ * @namespace BDD
968
+ * @api public
969
+ */
970
+
971
+ function checkArguments () {
972
+ var obj = flag(this, 'object')
973
+ , type = _.type(obj);
974
+ this.assert(
975
+ 'Arguments' === type
976
+ , 'expected #{this} to be arguments but got ' + type
977
+ , 'expected #{this} to not be arguments'
978
+ );
979
+ }
980
+
981
+ Assertion.addProperty('arguments', checkArguments);
982
+ Assertion.addProperty('Arguments', checkArguments);
983
+
984
+ /**
985
+ * ### .equal(val[, msg])
986
+ *
987
+ * Asserts that the target is strictly (`===`) equal to the given `val`.
988
+ *
989
+ * expect(1).to.equal(1);
990
+ * expect('foo').to.equal('foo');
991
+ *
992
+ * Add `.deep` earlier in the chain to use deep equality instead. See the
993
+ * `deep-eql` project page for info on the deep equality algorithm:
994
+ * https://github.com/chaijs/deep-eql.
995
+ *
996
+ * // Target object deeply (but not strictly) equals `{a: 1}`
997
+ * expect({a: 1}).to.deep.equal({a: 1});
998
+ * expect({a: 1}).to.not.equal({a: 1});
999
+ *
1000
+ * // Target array deeply (but not strictly) equals `[1, 2]`
1001
+ * expect([1, 2]).to.deep.equal([1, 2]);
1002
+ * expect([1, 2]).to.not.equal([1, 2]);
1003
+ *
1004
+ * Add `.not` earlier in the chain to negate `.equal`. However, it's often
1005
+ * best to assert that the target is equal to its expected value, rather than
1006
+ * not equal to one of countless unexpected values.
1007
+ *
1008
+ * expect(1).to.equal(1); // Recommended
1009
+ * expect(1).to.not.equal(2); // Not recommended
1010
+ *
1011
+ * `.equal` accepts an optional `msg` argument which is a custom error message
1012
+ * to show when the assertion fails. The message can also be given as the
1013
+ * second argument to `expect`.
1014
+ *
1015
+ * expect(1).to.equal(2, 'nooo why fail??');
1016
+ * expect(1, 'nooo why fail??').to.equal(2);
1017
+ *
1018
+ * The aliases `.equals` and `eq` can be used interchangeably with `.equal`.
1019
+ *
1020
+ * @name equal
1021
+ * @alias equals
1022
+ * @alias eq
1023
+ * @param {Mixed} val
1024
+ * @param {String} msg _optional_
1025
+ * @namespace BDD
1026
+ * @api public
1027
+ */
1028
+
1029
+ function assertEqual (val, msg) {
1030
+ if (msg) flag(this, 'message', msg);
1031
+ var obj = flag(this, 'object');
1032
+ if (flag(this, 'deep')) {
1033
+ var prevLockSsfi = flag(this, 'lockSsfi');
1034
+ flag(this, 'lockSsfi', true);
1035
+ this.eql(val);
1036
+ flag(this, 'lockSsfi', prevLockSsfi);
1037
+ } else {
1038
+ this.assert(
1039
+ val === obj
1040
+ , 'expected #{this} to equal #{exp}'
1041
+ , 'expected #{this} to not equal #{exp}'
1042
+ , val
1043
+ , this._obj
1044
+ , true
1045
+ );
1046
+ }
1047
+ }
1048
+
1049
+ Assertion.addMethod('equal', assertEqual);
1050
+ Assertion.addMethod('equals', assertEqual);
1051
+ Assertion.addMethod('eq', assertEqual);
1052
+
1053
+ /**
1054
+ * ### .eql(obj[, msg])
1055
+ *
1056
+ * Asserts that the target is deeply equal to the given `obj`. See the
1057
+ * `deep-eql` project page for info on the deep equality algorithm:
1058
+ * https://github.com/chaijs/deep-eql.
1059
+ *
1060
+ * // Target object is deeply (but not strictly) equal to {a: 1}
1061
+ * expect({a: 1}).to.eql({a: 1}).but.not.equal({a: 1});
1062
+ *
1063
+ * // Target array is deeply (but not strictly) equal to [1, 2]
1064
+ * expect([1, 2]).to.eql([1, 2]).but.not.equal([1, 2]);
1065
+ *
1066
+ * Add `.not` earlier in the chain to negate `.eql`. However, it's often best
1067
+ * to assert that the target is deeply equal to its expected value, rather
1068
+ * than not deeply equal to one of countless unexpected values.
1069
+ *
1070
+ * expect({a: 1}).to.eql({a: 1}); // Recommended
1071
+ * expect({a: 1}).to.not.eql({b: 2}); // Not recommended
1072
+ *
1073
+ * `.eql` accepts an optional `msg` argument which is a custom error message
1074
+ * to show when the assertion fails. The message can also be given as the
1075
+ * second argument to `expect`.
1076
+ *
1077
+ * expect({a: 1}).to.eql({b: 2}, 'nooo why fail??');
1078
+ * expect({a: 1}, 'nooo why fail??').to.eql({b: 2});
1079
+ *
1080
+ * The alias `.eqls` can be used interchangeably with `.eql`.
1081
+ *
1082
+ * The `.deep.equal` assertion is almost identical to `.eql` but with one
1083
+ * difference: `.deep.equal` causes deep equality comparisons to also be used
1084
+ * for any other assertions that follow in the chain.
1085
+ *
1086
+ * @name eql
1087
+ * @alias eqls
1088
+ * @param {Mixed} obj
1089
+ * @param {String} msg _optional_
1090
+ * @namespace BDD
1091
+ * @api public
1092
+ */
1093
+
1094
+ function assertEql(obj, msg) {
1095
+ if (msg) flag(this, 'message', msg);
1096
+ this.assert(
1097
+ _.eql(obj, flag(this, 'object'))
1098
+ , 'expected #{this} to deeply equal #{exp}'
1099
+ , 'expected #{this} to not deeply equal #{exp}'
1100
+ , obj
1101
+ , this._obj
1102
+ , true
1103
+ );
1104
+ }
1105
+
1106
+ Assertion.addMethod('eql', assertEql);
1107
+ Assertion.addMethod('eqls', assertEql);
1108
+
1109
+ /**
1110
+ * ### .above(n[, msg])
1111
+ *
1112
+ * Asserts that the target is a number or a date greater than the given number or date `n` respectively.
1113
+ * However, it's often best to assert that the target is equal to its expected
1114
+ * value.
1115
+ *
1116
+ * expect(2).to.equal(2); // Recommended
1117
+ * expect(2).to.be.above(1); // Not recommended
1118
+ *
1119
+ * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1120
+ * or `size` is greater than the given number `n`.
1121
+ *
1122
+ * expect('foo').to.have.lengthOf(3); // Recommended
1123
+ * expect('foo').to.have.lengthOf.above(2); // Not recommended
1124
+ *
1125
+ * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1126
+ * expect([1, 2, 3]).to.have.lengthOf.above(2); // Not recommended
1127
+ *
1128
+ * Add `.not` earlier in the chain to negate `.above`.
1129
+ *
1130
+ * expect(2).to.equal(2); // Recommended
1131
+ * expect(1).to.not.be.above(2); // Not recommended
1132
+ *
1133
+ * `.above` accepts an optional `msg` argument which is a custom error message
1134
+ * to show when the assertion fails. The message can also be given as the
1135
+ * second argument to `expect`.
1136
+ *
1137
+ * expect(1).to.be.above(2, 'nooo why fail??');
1138
+ * expect(1, 'nooo why fail??').to.be.above(2);
1139
+ *
1140
+ * The aliases `.gt` and `.greaterThan` can be used interchangeably with
1141
+ * `.above`.
1142
+ *
1143
+ * @name above
1144
+ * @alias gt
1145
+ * @alias greaterThan
1146
+ * @param {Number} n
1147
+ * @param {String} msg _optional_
1148
+ * @namespace BDD
1149
+ * @api public
1150
+ */
1151
+
1152
+ function assertAbove (n, msg) {
1153
+ if (msg) flag(this, 'message', msg);
1154
+ var obj = flag(this, 'object')
1155
+ , doLength = flag(this, 'doLength')
1156
+ , flagMsg = flag(this, 'message')
1157
+ , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1158
+ , ssfi = flag(this, 'ssfi')
1159
+ , objType = _.type(obj).toLowerCase()
1160
+ , nType = _.type(n).toLowerCase()
1161
+ , errorMessage
1162
+ , shouldThrow = true;
1163
+
1164
+ if (doLength && objType !== 'map' && objType !== 'set') {
1165
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1166
+ }
1167
+
1168
+ if (!doLength && (objType === 'date' && nType !== 'date')) {
1169
+ errorMessage = msgPrefix + 'the argument to above must be a date';
1170
+ } else if (nType !== 'number' && (doLength || objType === 'number')) {
1171
+ errorMessage = msgPrefix + 'the argument to above must be a number';
1172
+ } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1173
+ var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1174
+ errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1175
+ } else {
1176
+ shouldThrow = false;
1177
+ }
1178
+
1179
+ if (shouldThrow) {
1180
+ throw new AssertionError(errorMessage, undefined, ssfi);
1181
+ }
1182
+
1183
+ if (doLength) {
1184
+ var descriptor = 'length'
1185
+ , itemsCount;
1186
+ if (objType === 'map' || objType === 'set') {
1187
+ descriptor = 'size';
1188
+ itemsCount = obj.size;
1189
+ } else {
1190
+ itemsCount = obj.length;
1191
+ }
1192
+ this.assert(
1193
+ itemsCount > n
1194
+ , 'expected #{this} to have a ' + descriptor + ' above #{exp} but got #{act}'
1195
+ , 'expected #{this} to not have a ' + descriptor + ' above #{exp}'
1196
+ , n
1197
+ , itemsCount
1198
+ );
1199
+ } else {
1200
+ this.assert(
1201
+ obj > n
1202
+ , 'expected #{this} to be above #{exp}'
1203
+ , 'expected #{this} to be at most #{exp}'
1204
+ , n
1205
+ );
1206
+ }
1207
+ }
1208
+
1209
+ Assertion.addMethod('above', assertAbove);
1210
+ Assertion.addMethod('gt', assertAbove);
1211
+ Assertion.addMethod('greaterThan', assertAbove);
1212
+
1213
+ /**
1214
+ * ### .least(n[, msg])
1215
+ *
1216
+ * Asserts that the target is a number or a date greater than or equal to the given
1217
+ * number or date `n` respectively. However, it's often best to assert that the target is equal to
1218
+ * its expected value.
1219
+ *
1220
+ * expect(2).to.equal(2); // Recommended
1221
+ * expect(2).to.be.at.least(1); // Not recommended
1222
+ * expect(2).to.be.at.least(2); // Not recommended
1223
+ *
1224
+ * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1225
+ * or `size` is greater than or equal to the given number `n`.
1226
+ *
1227
+ * expect('foo').to.have.lengthOf(3); // Recommended
1228
+ * expect('foo').to.have.lengthOf.at.least(2); // Not recommended
1229
+ *
1230
+ * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1231
+ * expect([1, 2, 3]).to.have.lengthOf.at.least(2); // Not recommended
1232
+ *
1233
+ * Add `.not` earlier in the chain to negate `.least`.
1234
+ *
1235
+ * expect(1).to.equal(1); // Recommended
1236
+ * expect(1).to.not.be.at.least(2); // Not recommended
1237
+ *
1238
+ * `.least` accepts an optional `msg` argument which is a custom error message
1239
+ * to show when the assertion fails. The message can also be given as the
1240
+ * second argument to `expect`.
1241
+ *
1242
+ * expect(1).to.be.at.least(2, 'nooo why fail??');
1243
+ * expect(1, 'nooo why fail??').to.be.at.least(2);
1244
+ *
1245
+ * The aliases `.gte` and `.greaterThanOrEqual` can be used interchangeably with
1246
+ * `.least`.
1247
+ *
1248
+ * @name least
1249
+ * @alias gte
1250
+ * @alias greaterThanOrEqual
1251
+ * @param {Number} n
1252
+ * @param {String} msg _optional_
1253
+ * @namespace BDD
1254
+ * @api public
1255
+ */
1256
+
1257
+ function assertLeast (n, msg) {
1258
+ if (msg) flag(this, 'message', msg);
1259
+ var obj = flag(this, 'object')
1260
+ , doLength = flag(this, 'doLength')
1261
+ , flagMsg = flag(this, 'message')
1262
+ , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1263
+ , ssfi = flag(this, 'ssfi')
1264
+ , objType = _.type(obj).toLowerCase()
1265
+ , nType = _.type(n).toLowerCase()
1266
+ , errorMessage
1267
+ , shouldThrow = true;
1268
+
1269
+ if (doLength && objType !== 'map' && objType !== 'set') {
1270
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1271
+ }
1272
+
1273
+ if (!doLength && (objType === 'date' && nType !== 'date')) {
1274
+ errorMessage = msgPrefix + 'the argument to least must be a date';
1275
+ } else if (nType !== 'number' && (doLength || objType === 'number')) {
1276
+ errorMessage = msgPrefix + 'the argument to least must be a number';
1277
+ } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1278
+ var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1279
+ errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1280
+ } else {
1281
+ shouldThrow = false;
1282
+ }
1283
+
1284
+ if (shouldThrow) {
1285
+ throw new AssertionError(errorMessage, undefined, ssfi);
1286
+ }
1287
+
1288
+ if (doLength) {
1289
+ var descriptor = 'length'
1290
+ , itemsCount;
1291
+ if (objType === 'map' || objType === 'set') {
1292
+ descriptor = 'size';
1293
+ itemsCount = obj.size;
1294
+ } else {
1295
+ itemsCount = obj.length;
1296
+ }
1297
+ this.assert(
1298
+ itemsCount >= n
1299
+ , 'expected #{this} to have a ' + descriptor + ' at least #{exp} but got #{act}'
1300
+ , 'expected #{this} to have a ' + descriptor + ' below #{exp}'
1301
+ , n
1302
+ , itemsCount
1303
+ );
1304
+ } else {
1305
+ this.assert(
1306
+ obj >= n
1307
+ , 'expected #{this} to be at least #{exp}'
1308
+ , 'expected #{this} to be below #{exp}'
1309
+ , n
1310
+ );
1311
+ }
1312
+ }
1313
+
1314
+ Assertion.addMethod('least', assertLeast);
1315
+ Assertion.addMethod('gte', assertLeast);
1316
+ Assertion.addMethod('greaterThanOrEqual', assertLeast);
1317
+
1318
+ /**
1319
+ * ### .below(n[, msg])
1320
+ *
1321
+ * Asserts that the target is a number or a date less than the given number or date `n` respectively.
1322
+ * However, it's often best to assert that the target is equal to its expected
1323
+ * value.
1324
+ *
1325
+ * expect(1).to.equal(1); // Recommended
1326
+ * expect(1).to.be.below(2); // Not recommended
1327
+ *
1328
+ * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1329
+ * or `size` is less than the given number `n`.
1330
+ *
1331
+ * expect('foo').to.have.lengthOf(3); // Recommended
1332
+ * expect('foo').to.have.lengthOf.below(4); // Not recommended
1333
+ *
1334
+ * expect([1, 2, 3]).to.have.length(3); // Recommended
1335
+ * expect([1, 2, 3]).to.have.lengthOf.below(4); // Not recommended
1336
+ *
1337
+ * Add `.not` earlier in the chain to negate `.below`.
1338
+ *
1339
+ * expect(2).to.equal(2); // Recommended
1340
+ * expect(2).to.not.be.below(1); // Not recommended
1341
+ *
1342
+ * `.below` accepts an optional `msg` argument which is a custom error message
1343
+ * to show when the assertion fails. The message can also be given as the
1344
+ * second argument to `expect`.
1345
+ *
1346
+ * expect(2).to.be.below(1, 'nooo why fail??');
1347
+ * expect(2, 'nooo why fail??').to.be.below(1);
1348
+ *
1349
+ * The aliases `.lt` and `.lessThan` can be used interchangeably with
1350
+ * `.below`.
1351
+ *
1352
+ * @name below
1353
+ * @alias lt
1354
+ * @alias lessThan
1355
+ * @param {Number} n
1356
+ * @param {String} msg _optional_
1357
+ * @namespace BDD
1358
+ * @api public
1359
+ */
1360
+
1361
+ function assertBelow (n, msg) {
1362
+ if (msg) flag(this, 'message', msg);
1363
+ var obj = flag(this, 'object')
1364
+ , doLength = flag(this, 'doLength')
1365
+ , flagMsg = flag(this, 'message')
1366
+ , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1367
+ , ssfi = flag(this, 'ssfi')
1368
+ , objType = _.type(obj).toLowerCase()
1369
+ , nType = _.type(n).toLowerCase()
1370
+ , errorMessage
1371
+ , shouldThrow = true;
1372
+
1373
+ if (doLength && objType !== 'map' && objType !== 'set') {
1374
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1375
+ }
1376
+
1377
+ if (!doLength && (objType === 'date' && nType !== 'date')) {
1378
+ errorMessage = msgPrefix + 'the argument to below must be a date';
1379
+ } else if (nType !== 'number' && (doLength || objType === 'number')) {
1380
+ errorMessage = msgPrefix + 'the argument to below must be a number';
1381
+ } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1382
+ var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1383
+ errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1384
+ } else {
1385
+ shouldThrow = false;
1386
+ }
1387
+
1388
+ if (shouldThrow) {
1389
+ throw new AssertionError(errorMessage, undefined, ssfi);
1390
+ }
1391
+
1392
+ if (doLength) {
1393
+ var descriptor = 'length'
1394
+ , itemsCount;
1395
+ if (objType === 'map' || objType === 'set') {
1396
+ descriptor = 'size';
1397
+ itemsCount = obj.size;
1398
+ } else {
1399
+ itemsCount = obj.length;
1400
+ }
1401
+ this.assert(
1402
+ itemsCount < n
1403
+ , 'expected #{this} to have a ' + descriptor + ' below #{exp} but got #{act}'
1404
+ , 'expected #{this} to not have a ' + descriptor + ' below #{exp}'
1405
+ , n
1406
+ , itemsCount
1407
+ );
1408
+ } else {
1409
+ this.assert(
1410
+ obj < n
1411
+ , 'expected #{this} to be below #{exp}'
1412
+ , 'expected #{this} to be at least #{exp}'
1413
+ , n
1414
+ );
1415
+ }
1416
+ }
1417
+
1418
+ Assertion.addMethod('below', assertBelow);
1419
+ Assertion.addMethod('lt', assertBelow);
1420
+ Assertion.addMethod('lessThan', assertBelow);
1421
+
1422
+ /**
1423
+ * ### .most(n[, msg])
1424
+ *
1425
+ * Asserts that the target is a number or a date less than or equal to the given number
1426
+ * or date `n` respectively. However, it's often best to assert that the target is equal to its
1427
+ * expected value.
1428
+ *
1429
+ * expect(1).to.equal(1); // Recommended
1430
+ * expect(1).to.be.at.most(2); // Not recommended
1431
+ * expect(1).to.be.at.most(1); // Not recommended
1432
+ *
1433
+ * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1434
+ * or `size` is less than or equal to the given number `n`.
1435
+ *
1436
+ * expect('foo').to.have.lengthOf(3); // Recommended
1437
+ * expect('foo').to.have.lengthOf.at.most(4); // Not recommended
1438
+ *
1439
+ * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1440
+ * expect([1, 2, 3]).to.have.lengthOf.at.most(4); // Not recommended
1441
+ *
1442
+ * Add `.not` earlier in the chain to negate `.most`.
1443
+ *
1444
+ * expect(2).to.equal(2); // Recommended
1445
+ * expect(2).to.not.be.at.most(1); // Not recommended
1446
+ *
1447
+ * `.most` accepts an optional `msg` argument which is a custom error message
1448
+ * to show when the assertion fails. The message can also be given as the
1449
+ * second argument to `expect`.
1450
+ *
1451
+ * expect(2).to.be.at.most(1, 'nooo why fail??');
1452
+ * expect(2, 'nooo why fail??').to.be.at.most(1);
1453
+ *
1454
+ * The aliases `.lte` and `.lessThanOrEqual` can be used interchangeably with
1455
+ * `.most`.
1456
+ *
1457
+ * @name most
1458
+ * @alias lte
1459
+ * @alias lessThanOrEqual
1460
+ * @param {Number} n
1461
+ * @param {String} msg _optional_
1462
+ * @namespace BDD
1463
+ * @api public
1464
+ */
1465
+
1466
+ function assertMost (n, msg) {
1467
+ if (msg) flag(this, 'message', msg);
1468
+ var obj = flag(this, 'object')
1469
+ , doLength = flag(this, 'doLength')
1470
+ , flagMsg = flag(this, 'message')
1471
+ , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1472
+ , ssfi = flag(this, 'ssfi')
1473
+ , objType = _.type(obj).toLowerCase()
1474
+ , nType = _.type(n).toLowerCase()
1475
+ , errorMessage
1476
+ , shouldThrow = true;
1477
+
1478
+ if (doLength && objType !== 'map' && objType !== 'set') {
1479
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1480
+ }
1481
+
1482
+ if (!doLength && (objType === 'date' && nType !== 'date')) {
1483
+ errorMessage = msgPrefix + 'the argument to most must be a date';
1484
+ } else if (nType !== 'number' && (doLength || objType === 'number')) {
1485
+ errorMessage = msgPrefix + 'the argument to most must be a number';
1486
+ } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1487
+ var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1488
+ errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1489
+ } else {
1490
+ shouldThrow = false;
1491
+ }
1492
+
1493
+ if (shouldThrow) {
1494
+ throw new AssertionError(errorMessage, undefined, ssfi);
1495
+ }
1496
+
1497
+ if (doLength) {
1498
+ var descriptor = 'length'
1499
+ , itemsCount;
1500
+ if (objType === 'map' || objType === 'set') {
1501
+ descriptor = 'size';
1502
+ itemsCount = obj.size;
1503
+ } else {
1504
+ itemsCount = obj.length;
1505
+ }
1506
+ this.assert(
1507
+ itemsCount <= n
1508
+ , 'expected #{this} to have a ' + descriptor + ' at most #{exp} but got #{act}'
1509
+ , 'expected #{this} to have a ' + descriptor + ' above #{exp}'
1510
+ , n
1511
+ , itemsCount
1512
+ );
1513
+ } else {
1514
+ this.assert(
1515
+ obj <= n
1516
+ , 'expected #{this} to be at most #{exp}'
1517
+ , 'expected #{this} to be above #{exp}'
1518
+ , n
1519
+ );
1520
+ }
1521
+ }
1522
+
1523
+ Assertion.addMethod('most', assertMost);
1524
+ Assertion.addMethod('lte', assertMost);
1525
+ Assertion.addMethod('lessThanOrEqual', assertMost);
1526
+
1527
+ /**
1528
+ * ### .within(start, finish[, msg])
1529
+ *
1530
+ * Asserts that the target is a number or a date greater than or equal to the given
1531
+ * number or date `start`, and less than or equal to the given number or date `finish` respectively.
1532
+ * However, it's often best to assert that the target is equal to its expected
1533
+ * value.
1534
+ *
1535
+ * expect(2).to.equal(2); // Recommended
1536
+ * expect(2).to.be.within(1, 3); // Not recommended
1537
+ * expect(2).to.be.within(2, 3); // Not recommended
1538
+ * expect(2).to.be.within(1, 2); // Not recommended
1539
+ *
1540
+ * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1541
+ * or `size` is greater than or equal to the given number `start`, and less
1542
+ * than or equal to the given number `finish`.
1543
+ *
1544
+ * expect('foo').to.have.lengthOf(3); // Recommended
1545
+ * expect('foo').to.have.lengthOf.within(2, 4); // Not recommended
1546
+ *
1547
+ * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1548
+ * expect([1, 2, 3]).to.have.lengthOf.within(2, 4); // Not recommended
1549
+ *
1550
+ * Add `.not` earlier in the chain to negate `.within`.
1551
+ *
1552
+ * expect(1).to.equal(1); // Recommended
1553
+ * expect(1).to.not.be.within(2, 4); // Not recommended
1554
+ *
1555
+ * `.within` accepts an optional `msg` argument which is a custom error
1556
+ * message to show when the assertion fails. The message can also be given as
1557
+ * the second argument to `expect`.
1558
+ *
1559
+ * expect(4).to.be.within(1, 3, 'nooo why fail??');
1560
+ * expect(4, 'nooo why fail??').to.be.within(1, 3);
1561
+ *
1562
+ * @name within
1563
+ * @param {Number} start lower bound inclusive
1564
+ * @param {Number} finish upper bound inclusive
1565
+ * @param {String} msg _optional_
1566
+ * @namespace BDD
1567
+ * @api public
1568
+ */
1569
+
1570
+ Assertion.addMethod('within', function (start, finish, msg) {
1571
+ if (msg) flag(this, 'message', msg);
1572
+ var obj = flag(this, 'object')
1573
+ , doLength = flag(this, 'doLength')
1574
+ , flagMsg = flag(this, 'message')
1575
+ , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1576
+ , ssfi = flag(this, 'ssfi')
1577
+ , objType = _.type(obj).toLowerCase()
1578
+ , startType = _.type(start).toLowerCase()
1579
+ , finishType = _.type(finish).toLowerCase()
1580
+ , errorMessage
1581
+ , shouldThrow = true
1582
+ , range = (startType === 'date' && finishType === 'date')
1583
+ ? start.toISOString() + '..' + finish.toISOString()
1584
+ : start + '..' + finish;
1585
+
1586
+ if (doLength && objType !== 'map' && objType !== 'set') {
1587
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1588
+ }
1589
+
1590
+ if (!doLength && (objType === 'date' && (startType !== 'date' || finishType !== 'date'))) {
1591
+ errorMessage = msgPrefix + 'the arguments to within must be dates';
1592
+ } else if ((startType !== 'number' || finishType !== 'number') && (doLength || objType === 'number')) {
1593
+ errorMessage = msgPrefix + 'the arguments to within must be numbers';
1594
+ } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1595
+ var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1596
+ errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1597
+ } else {
1598
+ shouldThrow = false;
1599
+ }
1600
+
1601
+ if (shouldThrow) {
1602
+ throw new AssertionError(errorMessage, undefined, ssfi);
1603
+ }
1604
+
1605
+ if (doLength) {
1606
+ var descriptor = 'length'
1607
+ , itemsCount;
1608
+ if (objType === 'map' || objType === 'set') {
1609
+ descriptor = 'size';
1610
+ itemsCount = obj.size;
1611
+ } else {
1612
+ itemsCount = obj.length;
1613
+ }
1614
+ this.assert(
1615
+ itemsCount >= start && itemsCount <= finish
1616
+ , 'expected #{this} to have a ' + descriptor + ' within ' + range
1617
+ , 'expected #{this} to not have a ' + descriptor + ' within ' + range
1618
+ );
1619
+ } else {
1620
+ this.assert(
1621
+ obj >= start && obj <= finish
1622
+ , 'expected #{this} to be within ' + range
1623
+ , 'expected #{this} to not be within ' + range
1624
+ );
1625
+ }
1626
+ });
1627
+
1628
+ /**
1629
+ * ### .instanceof(constructor[, msg])
1630
+ *
1631
+ * Asserts that the target is an instance of the given `constructor`.
1632
+ *
1633
+ * function Cat () { }
1634
+ *
1635
+ * expect(new Cat()).to.be.an.instanceof(Cat);
1636
+ * expect([1, 2]).to.be.an.instanceof(Array);
1637
+ *
1638
+ * Add `.not` earlier in the chain to negate `.instanceof`.
1639
+ *
1640
+ * expect({a: 1}).to.not.be.an.instanceof(Array);
1641
+ *
1642
+ * `.instanceof` accepts an optional `msg` argument which is a custom error
1643
+ * message to show when the assertion fails. The message can also be given as
1644
+ * the second argument to `expect`.
1645
+ *
1646
+ * expect(1).to.be.an.instanceof(Array, 'nooo why fail??');
1647
+ * expect(1, 'nooo why fail??').to.be.an.instanceof(Array);
1648
+ *
1649
+ * Due to limitations in ES5, `.instanceof` may not always work as expected
1650
+ * when using a transpiler such as Babel or TypeScript. In particular, it may
1651
+ * produce unexpected results when subclassing built-in object such as
1652
+ * `Array`, `Error`, and `Map`. See your transpiler's docs for details:
1653
+ *
1654
+ * - ([Babel](https://babeljs.io/docs/usage/caveats/#classes))
1655
+ * - ([TypeScript](https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work))
1656
+ *
1657
+ * The alias `.instanceOf` can be used interchangeably with `.instanceof`.
1658
+ *
1659
+ * @name instanceof
1660
+ * @param {Constructor} constructor
1661
+ * @param {String} msg _optional_
1662
+ * @alias instanceOf
1663
+ * @namespace BDD
1664
+ * @api public
1665
+ */
1666
+
1667
+ function assertInstanceOf (constructor, msg) {
1668
+ if (msg) flag(this, 'message', msg);
1669
+
1670
+ var target = flag(this, 'object')
1671
+ var ssfi = flag(this, 'ssfi');
1672
+ var flagMsg = flag(this, 'message');
1673
+
1674
+ try {
1675
+ var isInstanceOf = target instanceof constructor;
1676
+ } catch (err) {
1677
+ if (err instanceof TypeError) {
1678
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
1679
+ throw new AssertionError(
1680
+ flagMsg + 'The instanceof assertion needs a constructor but '
1681
+ + _.type(constructor) + ' was given.',
1682
+ undefined,
1683
+ ssfi
1684
+ );
1685
+ }
1686
+ throw err;
1687
+ }
1688
+
1689
+ var name = _.getName(constructor);
1690
+ if (name === null) {
1691
+ name = 'an unnamed constructor';
1692
+ }
1693
+
1694
+ this.assert(
1695
+ isInstanceOf
1696
+ , 'expected #{this} to be an instance of ' + name
1697
+ , 'expected #{this} to not be an instance of ' + name
1698
+ );
1699
+ };
1700
+
1701
+ Assertion.addMethod('instanceof', assertInstanceOf);
1702
+ Assertion.addMethod('instanceOf', assertInstanceOf);
1703
+
1704
+ /**
1705
+ * ### .property(name[, val[, msg]])
1706
+ *
1707
+ * Asserts that the target has a property with the given key `name`.
1708
+ *
1709
+ * expect({a: 1}).to.have.property('a');
1710
+ *
1711
+ * When `val` is provided, `.property` also asserts that the property's value
1712
+ * is equal to the given `val`.
1713
+ *
1714
+ * expect({a: 1}).to.have.property('a', 1);
1715
+ *
1716
+ * By default, strict (`===`) equality is used. Add `.deep` earlier in the
1717
+ * chain to use deep equality instead. See the `deep-eql` project page for
1718
+ * info on the deep equality algorithm: https://github.com/chaijs/deep-eql.
1719
+ *
1720
+ * // Target object deeply (but not strictly) has property `x: {a: 1}`
1721
+ * expect({x: {a: 1}}).to.have.deep.property('x', {a: 1});
1722
+ * expect({x: {a: 1}}).to.not.have.property('x', {a: 1});
1723
+ *
1724
+ * The target's enumerable and non-enumerable properties are always included
1725
+ * in the search. By default, both own and inherited properties are included.
1726
+ * Add `.own` earlier in the chain to exclude inherited properties from the
1727
+ * search.
1728
+ *
1729
+ * Object.prototype.b = 2;
1730
+ *
1731
+ * expect({a: 1}).to.have.own.property('a');
1732
+ * expect({a: 1}).to.have.own.property('a', 1);
1733
+ * expect({a: 1}).to.have.property('b');
1734
+ * expect({a: 1}).to.not.have.own.property('b');
1735
+ *
1736
+ * `.deep` and `.own` can be combined.
1737
+ *
1738
+ * expect({x: {a: 1}}).to.have.deep.own.property('x', {a: 1});
1739
+ *
1740
+ * Add `.nested` earlier in the chain to enable dot- and bracket-notation when
1741
+ * referencing nested properties.
1742
+ *
1743
+ * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]');
1744
+ * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]', 'y');
1745
+ *
1746
+ * If `.` or `[]` are part of an actual property name, they can be escaped by
1747
+ * adding two backslashes before them.
1748
+ *
1749
+ * expect({'.a': {'[b]': 'x'}}).to.have.nested.property('\\.a.\\[b\\]');
1750
+ *
1751
+ * `.deep` and `.nested` can be combined.
1752
+ *
1753
+ * expect({a: {b: [{c: 3}]}})
1754
+ * .to.have.deep.nested.property('a.b[0]', {c: 3});
1755
+ *
1756
+ * `.own` and `.nested` cannot be combined.
1757
+ *
1758
+ * Add `.not` earlier in the chain to negate `.property`.
1759
+ *
1760
+ * expect({a: 1}).to.not.have.property('b');
1761
+ *
1762
+ * However, it's dangerous to negate `.property` when providing `val`. The
1763
+ * problem is that it creates uncertain expectations by asserting that the
1764
+ * target either doesn't have a property with the given key `name`, or that it
1765
+ * does have a property with the given key `name` but its value isn't equal to
1766
+ * the given `val`. It's often best to identify the exact output that's
1767
+ * expected, and then write an assertion that only accepts that exact output.
1768
+ *
1769
+ * When the target isn't expected to have a property with the given key
1770
+ * `name`, it's often best to assert exactly that.
1771
+ *
1772
+ * expect({b: 2}).to.not.have.property('a'); // Recommended
1773
+ * expect({b: 2}).to.not.have.property('a', 1); // Not recommended
1774
+ *
1775
+ * When the target is expected to have a property with the given key `name`,
1776
+ * it's often best to assert that the property has its expected value, rather
1777
+ * than asserting that it doesn't have one of many unexpected values.
1778
+ *
1779
+ * expect({a: 3}).to.have.property('a', 3); // Recommended
1780
+ * expect({a: 3}).to.not.have.property('a', 1); // Not recommended
1781
+ *
1782
+ * `.property` changes the target of any assertions that follow in the chain
1783
+ * to be the value of the property from the original target object.
1784
+ *
1785
+ * expect({a: 1}).to.have.property('a').that.is.a('number');
1786
+ *
1787
+ * `.property` accepts an optional `msg` argument which is a custom error
1788
+ * message to show when the assertion fails. The message can also be given as
1789
+ * the second argument to `expect`. When not providing `val`, only use the
1790
+ * second form.
1791
+ *
1792
+ * // Recommended
1793
+ * expect({a: 1}).to.have.property('a', 2, 'nooo why fail??');
1794
+ * expect({a: 1}, 'nooo why fail??').to.have.property('a', 2);
1795
+ * expect({a: 1}, 'nooo why fail??').to.have.property('b');
1796
+ *
1797
+ * // Not recommended
1798
+ * expect({a: 1}).to.have.property('b', undefined, 'nooo why fail??');
1799
+ *
1800
+ * The above assertion isn't the same thing as not providing `val`. Instead,
1801
+ * it's asserting that the target object has a `b` property that's equal to
1802
+ * `undefined`.
1803
+ *
1804
+ * The assertions `.ownProperty` and `.haveOwnProperty` can be used
1805
+ * interchangeably with `.own.property`.
1806
+ *
1807
+ * @name property
1808
+ * @param {String} name
1809
+ * @param {Mixed} val (optional)
1810
+ * @param {String} msg _optional_
1811
+ * @returns value of property for chaining
1812
+ * @namespace BDD
1813
+ * @api public
1814
+ */
1815
+
1816
+ function assertProperty (name, val, msg) {
1817
+ if (msg) flag(this, 'message', msg);
1818
+
1819
+ var isNested = flag(this, 'nested')
1820
+ , isOwn = flag(this, 'own')
1821
+ , flagMsg = flag(this, 'message')
1822
+ , obj = flag(this, 'object')
1823
+ , ssfi = flag(this, 'ssfi')
1824
+ , nameType = typeof name;
1825
+
1826
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
1827
+
1828
+ if (isNested) {
1829
+ if (nameType !== 'string') {
1830
+ throw new AssertionError(
1831
+ flagMsg + 'the argument to property must be a string when using nested syntax',
1832
+ undefined,
1833
+ ssfi
1834
+ );
1835
+ }
1836
+ } else {
1837
+ if (nameType !== 'string' && nameType !== 'number' && nameType !== 'symbol') {
1838
+ throw new AssertionError(
1839
+ flagMsg + 'the argument to property must be a string, number, or symbol',
1840
+ undefined,
1841
+ ssfi
1842
+ );
1843
+ }
1844
+ }
1845
+
1846
+ if (isNested && isOwn) {
1847
+ throw new AssertionError(
1848
+ flagMsg + 'The "nested" and "own" flags cannot be combined.',
1849
+ undefined,
1850
+ ssfi
1851
+ );
1852
+ }
1853
+
1854
+ if (obj === null || obj === undefined) {
1855
+ throw new AssertionError(
1856
+ flagMsg + 'Target cannot be null or undefined.',
1857
+ undefined,
1858
+ ssfi
1859
+ );
1860
+ }
1861
+
1862
+ var isDeep = flag(this, 'deep')
1863
+ , negate = flag(this, 'negate')
1864
+ , pathInfo = isNested ? _.getPathInfo(obj, name) : null
1865
+ , value = isNested ? pathInfo.value : obj[name];
1866
+
1867
+ var descriptor = '';
1868
+ if (isDeep) descriptor += 'deep ';
1869
+ if (isOwn) descriptor += 'own ';
1870
+ if (isNested) descriptor += 'nested ';
1871
+ descriptor += 'property ';
1872
+
1873
+ var hasProperty;
1874
+ if (isOwn) hasProperty = Object.prototype.hasOwnProperty.call(obj, name);
1875
+ else if (isNested) hasProperty = pathInfo.exists;
1876
+ else hasProperty = _.hasProperty(obj, name);
1877
+
1878
+ // When performing a negated assertion for both name and val, merely having
1879
+ // a property with the given name isn't enough to cause the assertion to
1880
+ // fail. It must both have a property with the given name, and the value of
1881
+ // that property must equal the given val. Therefore, skip this assertion in
1882
+ // favor of the next.
1883
+ if (!negate || arguments.length === 1) {
1884
+ this.assert(
1885
+ hasProperty
1886
+ , 'expected #{this} to have ' + descriptor + _.inspect(name)
1887
+ , 'expected #{this} to not have ' + descriptor + _.inspect(name));
1888
+ }
1889
+
1890
+ if (arguments.length > 1) {
1891
+ this.assert(
1892
+ hasProperty && (isDeep ? _.eql(val, value) : val === value)
1893
+ , 'expected #{this} to have ' + descriptor + _.inspect(name) + ' of #{exp}, but got #{act}'
1894
+ , 'expected #{this} to not have ' + descriptor + _.inspect(name) + ' of #{act}'
1895
+ , val
1896
+ , value
1897
+ );
1898
+ }
1899
+
1900
+ flag(this, 'object', value);
1901
+ }
1902
+
1903
+ Assertion.addMethod('property', assertProperty);
1904
+
1905
+ function assertOwnProperty (name, value, msg) {
1906
+ flag(this, 'own', true);
1907
+ assertProperty.apply(this, arguments);
1908
+ }
1909
+
1910
+ Assertion.addMethod('ownProperty', assertOwnProperty);
1911
+ Assertion.addMethod('haveOwnProperty', assertOwnProperty);
1912
+
1913
+ /**
1914
+ * ### .ownPropertyDescriptor(name[, descriptor[, msg]])
1915
+ *
1916
+ * Asserts that the target has its own property descriptor with the given key
1917
+ * `name`. Enumerable and non-enumerable properties are included in the
1918
+ * search.
1919
+ *
1920
+ * expect({a: 1}).to.have.ownPropertyDescriptor('a');
1921
+ *
1922
+ * When `descriptor` is provided, `.ownPropertyDescriptor` also asserts that
1923
+ * the property's descriptor is deeply equal to the given `descriptor`. See
1924
+ * the `deep-eql` project page for info on the deep equality algorithm:
1925
+ * https://github.com/chaijs/deep-eql.
1926
+ *
1927
+ * expect({a: 1}).to.have.ownPropertyDescriptor('a', {
1928
+ * configurable: true,
1929
+ * enumerable: true,
1930
+ * writable: true,
1931
+ * value: 1,
1932
+ * });
1933
+ *
1934
+ * Add `.not` earlier in the chain to negate `.ownPropertyDescriptor`.
1935
+ *
1936
+ * expect({a: 1}).to.not.have.ownPropertyDescriptor('b');
1937
+ *
1938
+ * However, it's dangerous to negate `.ownPropertyDescriptor` when providing
1939
+ * a `descriptor`. The problem is that it creates uncertain expectations by
1940
+ * asserting that the target either doesn't have a property descriptor with
1941
+ * the given key `name`, or that it does have a property descriptor with the
1942
+ * given key `name` but it’s not deeply equal to the given `descriptor`. It's
1943
+ * often best to identify the exact output that's expected, and then write an
1944
+ * assertion that only accepts that exact output.
1945
+ *
1946
+ * When the target isn't expected to have a property descriptor with the given
1947
+ * key `name`, it's often best to assert exactly that.
1948
+ *
1949
+ * // Recommended
1950
+ * expect({b: 2}).to.not.have.ownPropertyDescriptor('a');
1951
+ *
1952
+ * // Not recommended
1953
+ * expect({b: 2}).to.not.have.ownPropertyDescriptor('a', {
1954
+ * configurable: true,
1955
+ * enumerable: true,
1956
+ * writable: true,
1957
+ * value: 1,
1958
+ * });
1959
+ *
1960
+ * When the target is expected to have a property descriptor with the given
1961
+ * key `name`, it's often best to assert that the property has its expected
1962
+ * descriptor, rather than asserting that it doesn't have one of many
1963
+ * unexpected descriptors.
1964
+ *
1965
+ * // Recommended
1966
+ * expect({a: 3}).to.have.ownPropertyDescriptor('a', {
1967
+ * configurable: true,
1968
+ * enumerable: true,
1969
+ * writable: true,
1970
+ * value: 3,
1971
+ * });
1972
+ *
1973
+ * // Not recommended
1974
+ * expect({a: 3}).to.not.have.ownPropertyDescriptor('a', {
1975
+ * configurable: true,
1976
+ * enumerable: true,
1977
+ * writable: true,
1978
+ * value: 1,
1979
+ * });
1980
+ *
1981
+ * `.ownPropertyDescriptor` changes the target of any assertions that follow
1982
+ * in the chain to be the value of the property descriptor from the original
1983
+ * target object.
1984
+ *
1985
+ * expect({a: 1}).to.have.ownPropertyDescriptor('a')
1986
+ * .that.has.property('enumerable', true);
1987
+ *
1988
+ * `.ownPropertyDescriptor` accepts an optional `msg` argument which is a
1989
+ * custom error message to show when the assertion fails. The message can also
1990
+ * be given as the second argument to `expect`. When not providing
1991
+ * `descriptor`, only use the second form.
1992
+ *
1993
+ * // Recommended
1994
+ * expect({a: 1}).to.have.ownPropertyDescriptor('a', {
1995
+ * configurable: true,
1996
+ * enumerable: true,
1997
+ * writable: true,
1998
+ * value: 2,
1999
+ * }, 'nooo why fail??');
2000
+ *
2001
+ * // Recommended
2002
+ * expect({a: 1}, 'nooo why fail??').to.have.ownPropertyDescriptor('a', {
2003
+ * configurable: true,
2004
+ * enumerable: true,
2005
+ * writable: true,
2006
+ * value: 2,
2007
+ * });
2008
+ *
2009
+ * // Recommended
2010
+ * expect({a: 1}, 'nooo why fail??').to.have.ownPropertyDescriptor('b');
2011
+ *
2012
+ * // Not recommended
2013
+ * expect({a: 1})
2014
+ * .to.have.ownPropertyDescriptor('b', undefined, 'nooo why fail??');
2015
+ *
2016
+ * The above assertion isn't the same thing as not providing `descriptor`.
2017
+ * Instead, it's asserting that the target object has a `b` property
2018
+ * descriptor that's deeply equal to `undefined`.
2019
+ *
2020
+ * The alias `.haveOwnPropertyDescriptor` can be used interchangeably with
2021
+ * `.ownPropertyDescriptor`.
2022
+ *
2023
+ * @name ownPropertyDescriptor
2024
+ * @alias haveOwnPropertyDescriptor
2025
+ * @param {String} name
2026
+ * @param {Object} descriptor _optional_
2027
+ * @param {String} msg _optional_
2028
+ * @namespace BDD
2029
+ * @api public
2030
+ */
2031
+
2032
+ function assertOwnPropertyDescriptor (name, descriptor, msg) {
2033
+ if (typeof descriptor === 'string') {
2034
+ msg = descriptor;
2035
+ descriptor = null;
2036
+ }
2037
+ if (msg) flag(this, 'message', msg);
2038
+ var obj = flag(this, 'object');
2039
+ var actualDescriptor = Object.getOwnPropertyDescriptor(Object(obj), name);
2040
+ if (actualDescriptor && descriptor) {
2041
+ this.assert(
2042
+ _.eql(descriptor, actualDescriptor)
2043
+ , 'expected the own property descriptor for ' + _.inspect(name) + ' on #{this} to match ' + _.inspect(descriptor) + ', got ' + _.inspect(actualDescriptor)
2044
+ , 'expected the own property descriptor for ' + _.inspect(name) + ' on #{this} to not match ' + _.inspect(descriptor)
2045
+ , descriptor
2046
+ , actualDescriptor
2047
+ , true
2048
+ );
2049
+ } else {
2050
+ this.assert(
2051
+ actualDescriptor
2052
+ , 'expected #{this} to have an own property descriptor for ' + _.inspect(name)
2053
+ , 'expected #{this} to not have an own property descriptor for ' + _.inspect(name)
2054
+ );
2055
+ }
2056
+ flag(this, 'object', actualDescriptor);
2057
+ }
2058
+
2059
+ Assertion.addMethod('ownPropertyDescriptor', assertOwnPropertyDescriptor);
2060
+ Assertion.addMethod('haveOwnPropertyDescriptor', assertOwnPropertyDescriptor);
2061
+
2062
+ /**
2063
+ * ### .lengthOf(n[, msg])
2064
+ *
2065
+ * Asserts that the target's `length` or `size` is equal to the given number
2066
+ * `n`.
2067
+ *
2068
+ * expect([1, 2, 3]).to.have.lengthOf(3);
2069
+ * expect('foo').to.have.lengthOf(3);
2070
+ * expect(new Set([1, 2, 3])).to.have.lengthOf(3);
2071
+ * expect(new Map([['a', 1], ['b', 2], ['c', 3]])).to.have.lengthOf(3);
2072
+ *
2073
+ * Add `.not` earlier in the chain to negate `.lengthOf`. However, it's often
2074
+ * best to assert that the target's `length` property is equal to its expected
2075
+ * value, rather than not equal to one of many unexpected values.
2076
+ *
2077
+ * expect('foo').to.have.lengthOf(3); // Recommended
2078
+ * expect('foo').to.not.have.lengthOf(4); // Not recommended
2079
+ *
2080
+ * `.lengthOf` accepts an optional `msg` argument which is a custom error
2081
+ * message to show when the assertion fails. The message can also be given as
2082
+ * the second argument to `expect`.
2083
+ *
2084
+ * expect([1, 2, 3]).to.have.lengthOf(2, 'nooo why fail??');
2085
+ * expect([1, 2, 3], 'nooo why fail??').to.have.lengthOf(2);
2086
+ *
2087
+ * `.lengthOf` can also be used as a language chain, causing all `.above`,
2088
+ * `.below`, `.least`, `.most`, and `.within` assertions that follow in the
2089
+ * chain to use the target's `length` property as the target. However, it's
2090
+ * often best to assert that the target's `length` property is equal to its
2091
+ * expected length, rather than asserting that its `length` property falls
2092
+ * within some range of values.
2093
+ *
2094
+ * // Recommended
2095
+ * expect([1, 2, 3]).to.have.lengthOf(3);
2096
+ *
2097
+ * // Not recommended
2098
+ * expect([1, 2, 3]).to.have.lengthOf.above(2);
2099
+ * expect([1, 2, 3]).to.have.lengthOf.below(4);
2100
+ * expect([1, 2, 3]).to.have.lengthOf.at.least(3);
2101
+ * expect([1, 2, 3]).to.have.lengthOf.at.most(3);
2102
+ * expect([1, 2, 3]).to.have.lengthOf.within(2,4);
2103
+ *
2104
+ * Due to a compatibility issue, the alias `.length` can't be chained directly
2105
+ * off of an uninvoked method such as `.a`. Therefore, `.length` can't be used
2106
+ * interchangeably with `.lengthOf` in every situation. It's recommended to
2107
+ * always use `.lengthOf` instead of `.length`.
2108
+ *
2109
+ * expect([1, 2, 3]).to.have.a.length(3); // incompatible; throws error
2110
+ * expect([1, 2, 3]).to.have.a.lengthOf(3); // passes as expected
2111
+ *
2112
+ * @name lengthOf
2113
+ * @alias length
2114
+ * @param {Number} n
2115
+ * @param {String} msg _optional_
2116
+ * @namespace BDD
2117
+ * @api public
2118
+ */
2119
+
2120
+ function assertLengthChain () {
2121
+ flag(this, 'doLength', true);
2122
+ }
2123
+
2124
+ function assertLength (n, msg) {
2125
+ if (msg) flag(this, 'message', msg);
2126
+ var obj = flag(this, 'object')
2127
+ , objType = _.type(obj).toLowerCase()
2128
+ , flagMsg = flag(this, 'message')
2129
+ , ssfi = flag(this, 'ssfi')
2130
+ , descriptor = 'length'
2131
+ , itemsCount;
2132
+
2133
+ switch (objType) {
2134
+ case 'map':
2135
+ case 'set':
2136
+ descriptor = 'size';
2137
+ itemsCount = obj.size;
2138
+ break;
2139
+ default:
2140
+ new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
2141
+ itemsCount = obj.length;
2142
+ }
2143
+
2144
+ this.assert(
2145
+ itemsCount == n
2146
+ , 'expected #{this} to have a ' + descriptor + ' of #{exp} but got #{act}'
2147
+ , 'expected #{this} to not have a ' + descriptor + ' of #{act}'
2148
+ , n
2149
+ , itemsCount
2150
+ );
2151
+ }
2152
+
2153
+ Assertion.addChainableMethod('length', assertLength, assertLengthChain);
2154
+ Assertion.addChainableMethod('lengthOf', assertLength, assertLengthChain);
2155
+
2156
+ /**
2157
+ * ### .match(re[, msg])
2158
+ *
2159
+ * Asserts that the target matches the given regular expression `re`.
2160
+ *
2161
+ * expect('foobar').to.match(/^foo/);
2162
+ *
2163
+ * Add `.not` earlier in the chain to negate `.match`.
2164
+ *
2165
+ * expect('foobar').to.not.match(/taco/);
2166
+ *
2167
+ * `.match` accepts an optional `msg` argument which is a custom error message
2168
+ * to show when the assertion fails. The message can also be given as the
2169
+ * second argument to `expect`.
2170
+ *
2171
+ * expect('foobar').to.match(/taco/, 'nooo why fail??');
2172
+ * expect('foobar', 'nooo why fail??').to.match(/taco/);
2173
+ *
2174
+ * The alias `.matches` can be used interchangeably with `.match`.
2175
+ *
2176
+ * @name match
2177
+ * @alias matches
2178
+ * @param {RegExp} re
2179
+ * @param {String} msg _optional_
2180
+ * @namespace BDD
2181
+ * @api public
2182
+ */
2183
+ function assertMatch(re, msg) {
2184
+ if (msg) flag(this, 'message', msg);
2185
+ var obj = flag(this, 'object');
2186
+ this.assert(
2187
+ re.exec(obj)
2188
+ , 'expected #{this} to match ' + re
2189
+ , 'expected #{this} not to match ' + re
2190
+ );
2191
+ }
2192
+
2193
+ Assertion.addMethod('match', assertMatch);
2194
+ Assertion.addMethod('matches', assertMatch);
2195
+
2196
+ /**
2197
+ * ### .string(str[, msg])
2198
+ *
2199
+ * Asserts that the target string contains the given substring `str`.
2200
+ *
2201
+ * expect('foobar').to.have.string('bar');
2202
+ *
2203
+ * Add `.not` earlier in the chain to negate `.string`.
2204
+ *
2205
+ * expect('foobar').to.not.have.string('taco');
2206
+ *
2207
+ * `.string` accepts an optional `msg` argument which is a custom error
2208
+ * message to show when the assertion fails. The message can also be given as
2209
+ * the second argument to `expect`.
2210
+ *
2211
+ * expect('foobar').to.have.string('taco', 'nooo why fail??');
2212
+ * expect('foobar', 'nooo why fail??').to.have.string('taco');
2213
+ *
2214
+ * @name string
2215
+ * @param {String} str
2216
+ * @param {String} msg _optional_
2217
+ * @namespace BDD
2218
+ * @api public
2219
+ */
2220
+
2221
+ Assertion.addMethod('string', function (str, msg) {
2222
+ if (msg) flag(this, 'message', msg);
2223
+ var obj = flag(this, 'object')
2224
+ , flagMsg = flag(this, 'message')
2225
+ , ssfi = flag(this, 'ssfi');
2226
+ new Assertion(obj, flagMsg, ssfi, true).is.a('string');
2227
+
2228
+ this.assert(
2229
+ ~obj.indexOf(str)
2230
+ , 'expected #{this} to contain ' + _.inspect(str)
2231
+ , 'expected #{this} to not contain ' + _.inspect(str)
2232
+ );
2233
+ });
2234
+
2235
+ /**
2236
+ * ### .keys(key1[, key2[, ...]])
2237
+ *
2238
+ * Asserts that the target object, array, map, or set has the given keys. Only
2239
+ * the target's own inherited properties are included in the search.
2240
+ *
2241
+ * When the target is an object or array, keys can be provided as one or more
2242
+ * string arguments, a single array argument, or a single object argument. In
2243
+ * the latter case, only the keys in the given object matter; the values are
2244
+ * ignored.
2245
+ *
2246
+ * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
2247
+ * expect(['x', 'y']).to.have.all.keys(0, 1);
2248
+ *
2249
+ * expect({a: 1, b: 2}).to.have.all.keys(['a', 'b']);
2250
+ * expect(['x', 'y']).to.have.all.keys([0, 1]);
2251
+ *
2252
+ * expect({a: 1, b: 2}).to.have.all.keys({a: 4, b: 5}); // ignore 4 and 5
2253
+ * expect(['x', 'y']).to.have.all.keys({0: 4, 1: 5}); // ignore 4 and 5
2254
+ *
2255
+ * When the target is a map or set, each key must be provided as a separate
2256
+ * argument.
2257
+ *
2258
+ * expect(new Map([['a', 1], ['b', 2]])).to.have.all.keys('a', 'b');
2259
+ * expect(new Set(['a', 'b'])).to.have.all.keys('a', 'b');
2260
+ *
2261
+ * Because `.keys` does different things based on the target's type, it's
2262
+ * important to check the target's type before using `.keys`. See the `.a` doc
2263
+ * for info on testing a target's type.
2264
+ *
2265
+ * expect({a: 1, b: 2}).to.be.an('object').that.has.all.keys('a', 'b');
2266
+ *
2267
+ * By default, strict (`===`) equality is used to compare keys of maps and
2268
+ * sets. Add `.deep` earlier in the chain to use deep equality instead. See
2269
+ * the `deep-eql` project page for info on the deep equality algorithm:
2270
+ * https://github.com/chaijs/deep-eql.
2271
+ *
2272
+ * // Target set deeply (but not strictly) has key `{a: 1}`
2273
+ * expect(new Set([{a: 1}])).to.have.all.deep.keys([{a: 1}]);
2274
+ * expect(new Set([{a: 1}])).to.not.have.all.keys([{a: 1}]);
2275
+ *
2276
+ * By default, the target must have all of the given keys and no more. Add
2277
+ * `.any` earlier in the chain to only require that the target have at least
2278
+ * one of the given keys. Also, add `.not` earlier in the chain to negate
2279
+ * `.keys`. It's often best to add `.any` when negating `.keys`, and to use
2280
+ * `.all` when asserting `.keys` without negation.
2281
+ *
2282
+ * When negating `.keys`, `.any` is preferred because `.not.any.keys` asserts
2283
+ * exactly what's expected of the output, whereas `.not.all.keys` creates
2284
+ * uncertain expectations.
2285
+ *
2286
+ * // Recommended; asserts that target doesn't have any of the given keys
2287
+ * expect({a: 1, b: 2}).to.not.have.any.keys('c', 'd');
2288
+ *
2289
+ * // Not recommended; asserts that target doesn't have all of the given
2290
+ * // keys but may or may not have some of them
2291
+ * expect({a: 1, b: 2}).to.not.have.all.keys('c', 'd');
2292
+ *
2293
+ * When asserting `.keys` without negation, `.all` is preferred because
2294
+ * `.all.keys` asserts exactly what's expected of the output, whereas
2295
+ * `.any.keys` creates uncertain expectations.
2296
+ *
2297
+ * // Recommended; asserts that target has all the given keys
2298
+ * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
2299
+ *
2300
+ * // Not recommended; asserts that target has at least one of the given
2301
+ * // keys but may or may not have more of them
2302
+ * expect({a: 1, b: 2}).to.have.any.keys('a', 'b');
2303
+ *
2304
+ * Note that `.all` is used by default when neither `.all` nor `.any` appear
2305
+ * earlier in the chain. However, it's often best to add `.all` anyway because
2306
+ * it improves readability.
2307
+ *
2308
+ * // Both assertions are identical
2309
+ * expect({a: 1, b: 2}).to.have.all.keys('a', 'b'); // Recommended
2310
+ * expect({a: 1, b: 2}).to.have.keys('a', 'b'); // Not recommended
2311
+ *
2312
+ * Add `.include` earlier in the chain to require that the target's keys be a
2313
+ * superset of the expected keys, rather than identical sets.
2314
+ *
2315
+ * // Target object's keys are a superset of ['a', 'b'] but not identical
2316
+ * expect({a: 1, b: 2, c: 3}).to.include.all.keys('a', 'b');
2317
+ * expect({a: 1, b: 2, c: 3}).to.not.have.all.keys('a', 'b');
2318
+ *
2319
+ * However, if `.any` and `.include` are combined, only the `.any` takes
2320
+ * effect. The `.include` is ignored in this case.
2321
+ *
2322
+ * // Both assertions are identical
2323
+ * expect({a: 1}).to.have.any.keys('a', 'b');
2324
+ * expect({a: 1}).to.include.any.keys('a', 'b');
2325
+ *
2326
+ * A custom error message can be given as the second argument to `expect`.
2327
+ *
2328
+ * expect({a: 1}, 'nooo why fail??').to.have.key('b');
2329
+ *
2330
+ * The alias `.key` can be used interchangeably with `.keys`.
2331
+ *
2332
+ * @name keys
2333
+ * @alias key
2334
+ * @param {...String|Array|Object} keys
2335
+ * @namespace BDD
2336
+ * @api public
2337
+ */
2338
+
2339
+ function assertKeys (keys) {
2340
+ var obj = flag(this, 'object')
2341
+ , objType = _.type(obj)
2342
+ , keysType = _.type(keys)
2343
+ , ssfi = flag(this, 'ssfi')
2344
+ , isDeep = flag(this, 'deep')
2345
+ , str
2346
+ , deepStr = ''
2347
+ , actual
2348
+ , ok = true
2349
+ , flagMsg = flag(this, 'message');
2350
+
2351
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
2352
+ var mixedArgsMsg = flagMsg + 'when testing keys against an object or an array you must give a single Array|Object|String argument or multiple String arguments';
2353
+
2354
+ if (objType === 'Map' || objType === 'Set') {
2355
+ deepStr = isDeep ? 'deeply ' : '';
2356
+ actual = [];
2357
+
2358
+ // Map and Set '.keys' aren't supported in IE 11. Therefore, use .forEach.
2359
+ obj.forEach(function (val, key) { actual.push(key) });
2360
+
2361
+ if (keysType !== 'Array') {
2362
+ keys = Array.prototype.slice.call(arguments);
2363
+ }
2364
+ } else {
2365
+ actual = _.getOwnEnumerableProperties(obj);
2366
+
2367
+ switch (keysType) {
2368
+ case 'Array':
2369
+ if (arguments.length > 1) {
2370
+ throw new AssertionError(mixedArgsMsg, undefined, ssfi);
2371
+ }
2372
+ break;
2373
+ case 'Object':
2374
+ if (arguments.length > 1) {
2375
+ throw new AssertionError(mixedArgsMsg, undefined, ssfi);
2376
+ }
2377
+ keys = Object.keys(keys);
2378
+ break;
2379
+ default:
2380
+ keys = Array.prototype.slice.call(arguments);
2381
+ }
2382
+
2383
+ // Only stringify non-Symbols because Symbols would become "Symbol()"
2384
+ keys = keys.map(function (val) {
2385
+ return typeof val === 'symbol' ? val : String(val);
2386
+ });
2387
+ }
2388
+
2389
+ if (!keys.length) {
2390
+ throw new AssertionError(flagMsg + 'keys required', undefined, ssfi);
2391
+ }
2392
+
2393
+ var len = keys.length
2394
+ , any = flag(this, 'any')
2395
+ , all = flag(this, 'all')
2396
+ , expected = keys;
2397
+
2398
+ if (!any && !all) {
2399
+ all = true;
2400
+ }
2401
+
2402
+ // Has any
2403
+ if (any) {
2404
+ ok = expected.some(function(expectedKey) {
2405
+ return actual.some(function(actualKey) {
2406
+ if (isDeep) {
2407
+ return _.eql(expectedKey, actualKey);
2408
+ } else {
2409
+ return expectedKey === actualKey;
2410
+ }
2411
+ });
2412
+ });
2413
+ }
2414
+
2415
+ // Has all
2416
+ if (all) {
2417
+ ok = expected.every(function(expectedKey) {
2418
+ return actual.some(function(actualKey) {
2419
+ if (isDeep) {
2420
+ return _.eql(expectedKey, actualKey);
2421
+ } else {
2422
+ return expectedKey === actualKey;
2423
+ }
2424
+ });
2425
+ });
2426
+
2427
+ if (!flag(this, 'contains')) {
2428
+ ok = ok && keys.length == actual.length;
2429
+ }
2430
+ }
2431
+
2432
+ // Key string
2433
+ if (len > 1) {
2434
+ keys = keys.map(function(key) {
2435
+ return _.inspect(key);
2436
+ });
2437
+ var last = keys.pop();
2438
+ if (all) {
2439
+ str = keys.join(', ') + ', and ' + last;
2440
+ }
2441
+ if (any) {
2442
+ str = keys.join(', ') + ', or ' + last;
2443
+ }
2444
+ } else {
2445
+ str = _.inspect(keys[0]);
2446
+ }
2447
+
2448
+ // Form
2449
+ str = (len > 1 ? 'keys ' : 'key ') + str;
2450
+
2451
+ // Have / include
2452
+ str = (flag(this, 'contains') ? 'contain ' : 'have ') + str;
2453
+
2454
+ // Assertion
2455
+ this.assert(
2456
+ ok
2457
+ , 'expected #{this} to ' + deepStr + str
2458
+ , 'expected #{this} to not ' + deepStr + str
2459
+ , expected.slice(0).sort(_.compareByInspect)
2460
+ , actual.sort(_.compareByInspect)
2461
+ , true
2462
+ );
2463
+ }
2464
+
2465
+ Assertion.addMethod('keys', assertKeys);
2466
+ Assertion.addMethod('key', assertKeys);
2467
+
2468
+ /**
2469
+ * ### .throw([errorLike], [errMsgMatcher], [msg])
2470
+ *
2471
+ * When no arguments are provided, `.throw` invokes the target function and
2472
+ * asserts that an error is thrown.
2473
+ *
2474
+ * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2475
+ *
2476
+ * expect(badFn).to.throw();
2477
+ *
2478
+ * When one argument is provided, and it's an error constructor, `.throw`
2479
+ * invokes the target function and asserts that an error is thrown that's an
2480
+ * instance of that error constructor.
2481
+ *
2482
+ * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2483
+ *
2484
+ * expect(badFn).to.throw(TypeError);
2485
+ *
2486
+ * When one argument is provided, and it's an error instance, `.throw` invokes
2487
+ * the target function and asserts that an error is thrown that's strictly
2488
+ * (`===`) equal to that error instance.
2489
+ *
2490
+ * var err = new TypeError('Illegal salmon!');
2491
+ * var badFn = function () { throw err; };
2492
+ *
2493
+ * expect(badFn).to.throw(err);
2494
+ *
2495
+ * When one argument is provided, and it's a string, `.throw` invokes the
2496
+ * target function and asserts that an error is thrown with a message that
2497
+ * contains that string.
2498
+ *
2499
+ * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2500
+ *
2501
+ * expect(badFn).to.throw('salmon');
2502
+ *
2503
+ * When one argument is provided, and it's a regular expression, `.throw`
2504
+ * invokes the target function and asserts that an error is thrown with a
2505
+ * message that matches that regular expression.
2506
+ *
2507
+ * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2508
+ *
2509
+ * expect(badFn).to.throw(/salmon/);
2510
+ *
2511
+ * When two arguments are provided, and the first is an error instance or
2512
+ * constructor, and the second is a string or regular expression, `.throw`
2513
+ * invokes the function and asserts that an error is thrown that fulfills both
2514
+ * conditions as described above.
2515
+ *
2516
+ * var err = new TypeError('Illegal salmon!');
2517
+ * var badFn = function () { throw err; };
2518
+ *
2519
+ * expect(badFn).to.throw(TypeError, 'salmon');
2520
+ * expect(badFn).to.throw(TypeError, /salmon/);
2521
+ * expect(badFn).to.throw(err, 'salmon');
2522
+ * expect(badFn).to.throw(err, /salmon/);
2523
+ *
2524
+ * Add `.not` earlier in the chain to negate `.throw`.
2525
+ *
2526
+ * var goodFn = function () {};
2527
+ *
2528
+ * expect(goodFn).to.not.throw();
2529
+ *
2530
+ * However, it's dangerous to negate `.throw` when providing any arguments.
2531
+ * The problem is that it creates uncertain expectations by asserting that the
2532
+ * target either doesn't throw an error, or that it throws an error but of a
2533
+ * different type than the given type, or that it throws an error of the given
2534
+ * type but with a message that doesn't include the given string. It's often
2535
+ * best to identify the exact output that's expected, and then write an
2536
+ * assertion that only accepts that exact output.
2537
+ *
2538
+ * When the target isn't expected to throw an error, it's often best to assert
2539
+ * exactly that.
2540
+ *
2541
+ * var goodFn = function () {};
2542
+ *
2543
+ * expect(goodFn).to.not.throw(); // Recommended
2544
+ * expect(goodFn).to.not.throw(ReferenceError, 'x'); // Not recommended
2545
+ *
2546
+ * When the target is expected to throw an error, it's often best to assert
2547
+ * that the error is of its expected type, and has a message that includes an
2548
+ * expected string, rather than asserting that it doesn't have one of many
2549
+ * unexpected types, and doesn't have a message that includes some string.
2550
+ *
2551
+ * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2552
+ *
2553
+ * expect(badFn).to.throw(TypeError, 'salmon'); // Recommended
2554
+ * expect(badFn).to.not.throw(ReferenceError, 'x'); // Not recommended
2555
+ *
2556
+ * `.throw` changes the target of any assertions that follow in the chain to
2557
+ * be the error object that's thrown.
2558
+ *
2559
+ * var err = new TypeError('Illegal salmon!');
2560
+ * err.code = 42;
2561
+ * var badFn = function () { throw err; };
2562
+ *
2563
+ * expect(badFn).to.throw(TypeError).with.property('code', 42);
2564
+ *
2565
+ * `.throw` accepts an optional `msg` argument which is a custom error message
2566
+ * to show when the assertion fails. The message can also be given as the
2567
+ * second argument to `expect`. When not providing two arguments, always use
2568
+ * the second form.
2569
+ *
2570
+ * var goodFn = function () {};
2571
+ *
2572
+ * expect(goodFn).to.throw(TypeError, 'x', 'nooo why fail??');
2573
+ * expect(goodFn, 'nooo why fail??').to.throw();
2574
+ *
2575
+ * Due to limitations in ES5, `.throw` may not always work as expected when
2576
+ * using a transpiler such as Babel or TypeScript. In particular, it may
2577
+ * produce unexpected results when subclassing the built-in `Error` object and
2578
+ * then passing the subclassed constructor to `.throw`. See your transpiler's
2579
+ * docs for details:
2580
+ *
2581
+ * - ([Babel](https://babeljs.io/docs/usage/caveats/#classes))
2582
+ * - ([TypeScript](https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work))
2583
+ *
2584
+ * Beware of some common mistakes when using the `throw` assertion. One common
2585
+ * mistake is to accidentally invoke the function yourself instead of letting
2586
+ * the `throw` assertion invoke the function for you. For example, when
2587
+ * testing if a function named `fn` throws, provide `fn` instead of `fn()` as
2588
+ * the target for the assertion.
2589
+ *
2590
+ * expect(fn).to.throw(); // Good! Tests `fn` as desired
2591
+ * expect(fn()).to.throw(); // Bad! Tests result of `fn()`, not `fn`
2592
+ *
2593
+ * If you need to assert that your function `fn` throws when passed certain
2594
+ * arguments, then wrap a call to `fn` inside of another function.
2595
+ *
2596
+ * expect(function () { fn(42); }).to.throw(); // Function expression
2597
+ * expect(() => fn(42)).to.throw(); // ES6 arrow function
2598
+ *
2599
+ * Another common mistake is to provide an object method (or any stand-alone
2600
+ * function that relies on `this`) as the target of the assertion. Doing so is
2601
+ * problematic because the `this` context will be lost when the function is
2602
+ * invoked by `.throw`; there's no way for it to know what `this` is supposed
2603
+ * to be. There are two ways around this problem. One solution is to wrap the
2604
+ * method or function call inside of another function. Another solution is to
2605
+ * use `bind`.
2606
+ *
2607
+ * expect(function () { cat.meow(); }).to.throw(); // Function expression
2608
+ * expect(() => cat.meow()).to.throw(); // ES6 arrow function
2609
+ * expect(cat.meow.bind(cat)).to.throw(); // Bind
2610
+ *
2611
+ * Finally, it's worth mentioning that it's a best practice in JavaScript to
2612
+ * only throw `Error` and derivatives of `Error` such as `ReferenceError`,
2613
+ * `TypeError`, and user-defined objects that extend `Error`. No other type of
2614
+ * value will generate a stack trace when initialized. With that said, the
2615
+ * `throw` assertion does technically support any type of value being thrown,
2616
+ * not just `Error` and its derivatives.
2617
+ *
2618
+ * The aliases `.throws` and `.Throw` can be used interchangeably with
2619
+ * `.throw`.
2620
+ *
2621
+ * @name throw
2622
+ * @alias throws
2623
+ * @alias Throw
2624
+ * @param {Error|ErrorConstructor} errorLike
2625
+ * @param {String|RegExp} errMsgMatcher error message
2626
+ * @param {String} msg _optional_
2627
+ * @see https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error#Error_types
2628
+ * @returns error for chaining (null if no error)
2629
+ * @namespace BDD
2630
+ * @api public
2631
+ */
2632
+
2633
+ function assertThrows (errorLike, errMsgMatcher, msg) {
2634
+ if (msg) flag(this, 'message', msg);
2635
+ var obj = flag(this, 'object')
2636
+ , ssfi = flag(this, 'ssfi')
2637
+ , flagMsg = flag(this, 'message')
2638
+ , negate = flag(this, 'negate') || false;
2639
+ new Assertion(obj, flagMsg, ssfi, true).is.a('function');
2640
+
2641
+ if (errorLike instanceof RegExp || typeof errorLike === 'string') {
2642
+ errMsgMatcher = errorLike;
2643
+ errorLike = null;
2644
+ }
2645
+
2646
+ var caughtErr;
2647
+ try {
2648
+ obj();
2649
+ } catch (err) {
2650
+ caughtErr = err;
2651
+ }
2652
+
2653
+ // If we have the negate flag enabled and at least one valid argument it means we do expect an error
2654
+ // but we want it to match a given set of criteria
2655
+ var everyArgIsUndefined = errorLike === undefined && errMsgMatcher === undefined;
2656
+
2657
+ // If we've got the negate flag enabled and both args, we should only fail if both aren't compatible
2658
+ // See Issue #551 and PR #683@GitHub
2659
+ var everyArgIsDefined = Boolean(errorLike && errMsgMatcher);
2660
+ var errorLikeFail = false;
2661
+ var errMsgMatcherFail = false;
2662
+
2663
+ // Checking if error was thrown
2664
+ if (everyArgIsUndefined || !everyArgIsUndefined && !negate) {
2665
+ // We need this to display results correctly according to their types
2666
+ var errorLikeString = 'an error';
2667
+ if (errorLike instanceof Error) {
2668
+ errorLikeString = '#{exp}';
2669
+ } else if (errorLike) {
2670
+ errorLikeString = _.checkError.getConstructorName(errorLike);
2671
+ }
2672
+
2673
+ this.assert(
2674
+ caughtErr
2675
+ , 'expected #{this} to throw ' + errorLikeString
2676
+ , 'expected #{this} to not throw an error but #{act} was thrown'
2677
+ , errorLike && errorLike.toString()
2678
+ , (caughtErr instanceof Error ?
2679
+ caughtErr.toString() : (typeof caughtErr === 'string' ? caughtErr : caughtErr &&
2680
+ _.checkError.getConstructorName(caughtErr)))
2681
+ );
2682
+ }
2683
+
2684
+ if (errorLike && caughtErr) {
2685
+ // We should compare instances only if `errorLike` is an instance of `Error`
2686
+ if (errorLike instanceof Error) {
2687
+ var isCompatibleInstance = _.checkError.compatibleInstance(caughtErr, errorLike);
2688
+
2689
+ if (isCompatibleInstance === negate) {
2690
+ // These checks were created to ensure we won't fail too soon when we've got both args and a negate
2691
+ // See Issue #551 and PR #683@GitHub
2692
+ if (everyArgIsDefined && negate) {
2693
+ errorLikeFail = true;
2694
+ } else {
2695
+ this.assert(
2696
+ negate
2697
+ , 'expected #{this} to throw #{exp} but #{act} was thrown'
2698
+ , 'expected #{this} to not throw #{exp}' + (caughtErr && !negate ? ' but #{act} was thrown' : '')
2699
+ , errorLike.toString()
2700
+ , caughtErr.toString()
2701
+ );
2702
+ }
2703
+ }
2704
+ }
2705
+
2706
+ var isCompatibleConstructor = _.checkError.compatibleConstructor(caughtErr, errorLike);
2707
+ if (isCompatibleConstructor === negate) {
2708
+ if (everyArgIsDefined && negate) {
2709
+ errorLikeFail = true;
2710
+ } else {
2711
+ this.assert(
2712
+ negate
2713
+ , 'expected #{this} to throw #{exp} but #{act} was thrown'
2714
+ , 'expected #{this} to not throw #{exp}' + (caughtErr ? ' but #{act} was thrown' : '')
2715
+ , (errorLike instanceof Error ? errorLike.toString() : errorLike && _.checkError.getConstructorName(errorLike))
2716
+ , (caughtErr instanceof Error ? caughtErr.toString() : caughtErr && _.checkError.getConstructorName(caughtErr))
2717
+ );
2718
+ }
2719
+ }
2720
+ }
2721
+
2722
+ if (caughtErr && errMsgMatcher !== undefined && errMsgMatcher !== null) {
2723
+ // Here we check compatible messages
2724
+ var placeholder = 'including';
2725
+ if (errMsgMatcher instanceof RegExp) {
2726
+ placeholder = 'matching'
2727
+ }
2728
+
2729
+ var isCompatibleMessage = _.checkError.compatibleMessage(caughtErr, errMsgMatcher);
2730
+ if (isCompatibleMessage === negate) {
2731
+ if (everyArgIsDefined && negate) {
2732
+ errMsgMatcherFail = true;
2733
+ } else {
2734
+ this.assert(
2735
+ negate
2736
+ , 'expected #{this} to throw error ' + placeholder + ' #{exp} but got #{act}'
2737
+ , 'expected #{this} to throw error not ' + placeholder + ' #{exp}'
2738
+ , errMsgMatcher
2739
+ , _.checkError.getMessage(caughtErr)
2740
+ );
2741
+ }
2742
+ }
2743
+ }
2744
+
2745
+ // If both assertions failed and both should've matched we throw an error
2746
+ if (errorLikeFail && errMsgMatcherFail) {
2747
+ this.assert(
2748
+ negate
2749
+ , 'expected #{this} to throw #{exp} but #{act} was thrown'
2750
+ , 'expected #{this} to not throw #{exp}' + (caughtErr ? ' but #{act} was thrown' : '')
2751
+ , (errorLike instanceof Error ? errorLike.toString() : errorLike && _.checkError.getConstructorName(errorLike))
2752
+ , (caughtErr instanceof Error ? caughtErr.toString() : caughtErr && _.checkError.getConstructorName(caughtErr))
2753
+ );
2754
+ }
2755
+
2756
+ flag(this, 'object', caughtErr);
2757
+ };
2758
+
2759
+ Assertion.addMethod('throw', assertThrows);
2760
+ Assertion.addMethod('throws', assertThrows);
2761
+ Assertion.addMethod('Throw', assertThrows);
2762
+
2763
+ /**
2764
+ * ### .respondTo(method[, msg])
2765
+ *
2766
+ * When the target is a non-function object, `.respondTo` asserts that the
2767
+ * target has a method with the given name `method`. The method can be own or
2768
+ * inherited, and it can be enumerable or non-enumerable.
2769
+ *
2770
+ * function Cat () {}
2771
+ * Cat.prototype.meow = function () {};
2772
+ *
2773
+ * expect(new Cat()).to.respondTo('meow');
2774
+ *
2775
+ * When the target is a function, `.respondTo` asserts that the target's
2776
+ * `prototype` property has a method with the given name `method`. Again, the
2777
+ * method can be own or inherited, and it can be enumerable or non-enumerable.
2778
+ *
2779
+ * function Cat () {}
2780
+ * Cat.prototype.meow = function () {};
2781
+ *
2782
+ * expect(Cat).to.respondTo('meow');
2783
+ *
2784
+ * Add `.itself` earlier in the chain to force `.respondTo` to treat the
2785
+ * target as a non-function object, even if it's a function. Thus, it asserts
2786
+ * that the target has a method with the given name `method`, rather than
2787
+ * asserting that the target's `prototype` property has a method with the
2788
+ * given name `method`.
2789
+ *
2790
+ * function Cat () {}
2791
+ * Cat.prototype.meow = function () {};
2792
+ * Cat.hiss = function () {};
2793
+ *
2794
+ * expect(Cat).itself.to.respondTo('hiss').but.not.respondTo('meow');
2795
+ *
2796
+ * When not adding `.itself`, it's important to check the target's type before
2797
+ * using `.respondTo`. See the `.a` doc for info on checking a target's type.
2798
+ *
2799
+ * function Cat () {}
2800
+ * Cat.prototype.meow = function () {};
2801
+ *
2802
+ * expect(new Cat()).to.be.an('object').that.respondsTo('meow');
2803
+ *
2804
+ * Add `.not` earlier in the chain to negate `.respondTo`.
2805
+ *
2806
+ * function Dog () {}
2807
+ * Dog.prototype.bark = function () {};
2808
+ *
2809
+ * expect(new Dog()).to.not.respondTo('meow');
2810
+ *
2811
+ * `.respondTo` accepts an optional `msg` argument which is a custom error
2812
+ * message to show when the assertion fails. The message can also be given as
2813
+ * the second argument to `expect`.
2814
+ *
2815
+ * expect({}).to.respondTo('meow', 'nooo why fail??');
2816
+ * expect({}, 'nooo why fail??').to.respondTo('meow');
2817
+ *
2818
+ * The alias `.respondsTo` can be used interchangeably with `.respondTo`.
2819
+ *
2820
+ * @name respondTo
2821
+ * @alias respondsTo
2822
+ * @param {String} method
2823
+ * @param {String} msg _optional_
2824
+ * @namespace BDD
2825
+ * @api public
2826
+ */
2827
+
2828
+ function respondTo (method, msg) {
2829
+ if (msg) flag(this, 'message', msg);
2830
+ var obj = flag(this, 'object')
2831
+ , itself = flag(this, 'itself')
2832
+ , context = ('function' === typeof obj && !itself)
2833
+ ? obj.prototype[method]
2834
+ : obj[method];
2835
+
2836
+ this.assert(
2837
+ 'function' === typeof context
2838
+ , 'expected #{this} to respond to ' + _.inspect(method)
2839
+ , 'expected #{this} to not respond to ' + _.inspect(method)
2840
+ );
2841
+ }
2842
+
2843
+ Assertion.addMethod('respondTo', respondTo);
2844
+ Assertion.addMethod('respondsTo', respondTo);
2845
+
2846
+ /**
2847
+ * ### .itself
2848
+ *
2849
+ * Forces all `.respondTo` assertions that follow in the chain to behave as if
2850
+ * the target is a non-function object, even if it's a function. Thus, it
2851
+ * causes `.respondTo` to assert that the target has a method with the given
2852
+ * name, rather than asserting that the target's `prototype` property has a
2853
+ * method with the given name.
2854
+ *
2855
+ * function Cat () {}
2856
+ * Cat.prototype.meow = function () {};
2857
+ * Cat.hiss = function () {};
2858
+ *
2859
+ * expect(Cat).itself.to.respondTo('hiss').but.not.respondTo('meow');
2860
+ *
2861
+ * @name itself
2862
+ * @namespace BDD
2863
+ * @api public
2864
+ */
2865
+
2866
+ Assertion.addProperty('itself', function () {
2867
+ flag(this, 'itself', true);
2868
+ });
2869
+
2870
+ /**
2871
+ * ### .satisfy(matcher[, msg])
2872
+ *
2873
+ * Invokes the given `matcher` function with the target being passed as the
2874
+ * first argument, and asserts that the value returned is truthy.
2875
+ *
2876
+ * expect(1).to.satisfy(function(num) {
2877
+ * return num > 0;
2878
+ * });
2879
+ *
2880
+ * Add `.not` earlier in the chain to negate `.satisfy`.
2881
+ *
2882
+ * expect(1).to.not.satisfy(function(num) {
2883
+ * return num > 2;
2884
+ * });
2885
+ *
2886
+ * `.satisfy` accepts an optional `msg` argument which is a custom error
2887
+ * message to show when the assertion fails. The message can also be given as
2888
+ * the second argument to `expect`.
2889
+ *
2890
+ * expect(1).to.satisfy(function(num) {
2891
+ * return num > 2;
2892
+ * }, 'nooo why fail??');
2893
+ *
2894
+ * expect(1, 'nooo why fail??').to.satisfy(function(num) {
2895
+ * return num > 2;
2896
+ * });
2897
+ *
2898
+ * The alias `.satisfies` can be used interchangeably with `.satisfy`.
2899
+ *
2900
+ * @name satisfy
2901
+ * @alias satisfies
2902
+ * @param {Function} matcher
2903
+ * @param {String} msg _optional_
2904
+ * @namespace BDD
2905
+ * @api public
2906
+ */
2907
+
2908
+ function satisfy (matcher, msg) {
2909
+ if (msg) flag(this, 'message', msg);
2910
+ var obj = flag(this, 'object');
2911
+ var result = matcher(obj);
2912
+ this.assert(
2913
+ result
2914
+ , 'expected #{this} to satisfy ' + _.objDisplay(matcher)
2915
+ , 'expected #{this} to not satisfy' + _.objDisplay(matcher)
2916
+ , flag(this, 'negate') ? false : true
2917
+ , result
2918
+ );
2919
+ }
2920
+
2921
+ Assertion.addMethod('satisfy', satisfy);
2922
+ Assertion.addMethod('satisfies', satisfy);
2923
+
2924
+ /**
2925
+ * ### .closeTo(expected, delta[, msg])
2926
+ *
2927
+ * Asserts that the target is a number that's within a given +/- `delta` range
2928
+ * of the given number `expected`. However, it's often best to assert that the
2929
+ * target is equal to its expected value.
2930
+ *
2931
+ * // Recommended
2932
+ * expect(1.5).to.equal(1.5);
2933
+ *
2934
+ * // Not recommended
2935
+ * expect(1.5).to.be.closeTo(1, 0.5);
2936
+ * expect(1.5).to.be.closeTo(2, 0.5);
2937
+ * expect(1.5).to.be.closeTo(1, 1);
2938
+ *
2939
+ * Add `.not` earlier in the chain to negate `.closeTo`.
2940
+ *
2941
+ * expect(1.5).to.equal(1.5); // Recommended
2942
+ * expect(1.5).to.not.be.closeTo(3, 1); // Not recommended
2943
+ *
2944
+ * `.closeTo` accepts an optional `msg` argument which is a custom error
2945
+ * message to show when the assertion fails. The message can also be given as
2946
+ * the second argument to `expect`.
2947
+ *
2948
+ * expect(1.5).to.be.closeTo(3, 1, 'nooo why fail??');
2949
+ * expect(1.5, 'nooo why fail??').to.be.closeTo(3, 1);
2950
+ *
2951
+ * The alias `.approximately` can be used interchangeably with `.closeTo`.
2952
+ *
2953
+ * @name closeTo
2954
+ * @alias approximately
2955
+ * @param {Number} expected
2956
+ * @param {Number} delta
2957
+ * @param {String} msg _optional_
2958
+ * @namespace BDD
2959
+ * @api public
2960
+ */
2961
+
2962
+ function closeTo(expected, delta, msg) {
2963
+ if (msg) flag(this, 'message', msg);
2964
+ var obj = flag(this, 'object')
2965
+ , flagMsg = flag(this, 'message')
2966
+ , ssfi = flag(this, 'ssfi');
2967
+
2968
+ new Assertion(obj, flagMsg, ssfi, true).is.a('number');
2969
+ if (typeof expected !== 'number' || typeof delta !== 'number') {
2970
+ flagMsg = flagMsg ? flagMsg + ': ' : '';
2971
+ var deltaMessage = delta === undefined ? ", and a delta is required" : "";
2972
+ throw new AssertionError(
2973
+ flagMsg + 'the arguments to closeTo or approximately must be numbers' + deltaMessage,
2974
+ undefined,
2975
+ ssfi
2976
+ );
2977
+ }
2978
+
2979
+ this.assert(
2980
+ Math.abs(obj - expected) <= delta
2981
+ , 'expected #{this} to be close to ' + expected + ' +/- ' + delta
2982
+ , 'expected #{this} not to be close to ' + expected + ' +/- ' + delta
2983
+ );
2984
+ }
2985
+
2986
+ Assertion.addMethod('closeTo', closeTo);
2987
+ Assertion.addMethod('approximately', closeTo);
2988
+
2989
+ // Note: Duplicates are ignored if testing for inclusion instead of sameness.
2990
+ function isSubsetOf(subset, superset, cmp, contains, ordered) {
2991
+ if (!contains) {
2992
+ if (subset.length !== superset.length) return false;
2993
+ superset = superset.slice();
2994
+ }
2995
+
2996
+ return subset.every(function(elem, idx) {
2997
+ if (ordered) return cmp ? cmp(elem, superset[idx]) : elem === superset[idx];
2998
+
2999
+ if (!cmp) {
3000
+ var matchIdx = superset.indexOf(elem);
3001
+ if (matchIdx === -1) return false;
3002
+
3003
+ // Remove match from superset so not counted twice if duplicate in subset.
3004
+ if (!contains) superset.splice(matchIdx, 1);
3005
+ return true;
3006
+ }
3007
+
3008
+ return superset.some(function(elem2, matchIdx) {
3009
+ if (!cmp(elem, elem2)) return false;
3010
+
3011
+ // Remove match from superset so not counted twice if duplicate in subset.
3012
+ if (!contains) superset.splice(matchIdx, 1);
3013
+ return true;
3014
+ });
3015
+ });
3016
+ }
3017
+
3018
+ /**
3019
+ * ### .members(set[, msg])
3020
+ *
3021
+ * Asserts that the target array has the same members as the given array
3022
+ * `set`.
3023
+ *
3024
+ * expect([1, 2, 3]).to.have.members([2, 1, 3]);
3025
+ * expect([1, 2, 2]).to.have.members([2, 1, 2]);
3026
+ *
3027
+ * By default, members are compared using strict (`===`) equality. Add `.deep`
3028
+ * earlier in the chain to use deep equality instead. See the `deep-eql`
3029
+ * project page for info on the deep equality algorithm:
3030
+ * https://github.com/chaijs/deep-eql.
3031
+ *
3032
+ * // Target array deeply (but not strictly) has member `{a: 1}`
3033
+ * expect([{a: 1}]).to.have.deep.members([{a: 1}]);
3034
+ * expect([{a: 1}]).to.not.have.members([{a: 1}]);
3035
+ *
3036
+ * By default, order doesn't matter. Add `.ordered` earlier in the chain to
3037
+ * require that members appear in the same order.
3038
+ *
3039
+ * expect([1, 2, 3]).to.have.ordered.members([1, 2, 3]);
3040
+ * expect([1, 2, 3]).to.have.members([2, 1, 3])
3041
+ * .but.not.ordered.members([2, 1, 3]);
3042
+ *
3043
+ * By default, both arrays must be the same size. Add `.include` earlier in
3044
+ * the chain to require that the target's members be a superset of the
3045
+ * expected members. Note that duplicates are ignored in the subset when
3046
+ * `.include` is added.
3047
+ *
3048
+ * // Target array is a superset of [1, 2] but not identical
3049
+ * expect([1, 2, 3]).to.include.members([1, 2]);
3050
+ * expect([1, 2, 3]).to.not.have.members([1, 2]);
3051
+ *
3052
+ * // Duplicates in the subset are ignored
3053
+ * expect([1, 2, 3]).to.include.members([1, 2, 2, 2]);
3054
+ *
3055
+ * `.deep`, `.ordered`, and `.include` can all be combined. However, if
3056
+ * `.include` and `.ordered` are combined, the ordering begins at the start of
3057
+ * both arrays.
3058
+ *
3059
+ * expect([{a: 1}, {b: 2}, {c: 3}])
3060
+ * .to.include.deep.ordered.members([{a: 1}, {b: 2}])
3061
+ * .but.not.include.deep.ordered.members([{b: 2}, {c: 3}]);
3062
+ *
3063
+ * Add `.not` earlier in the chain to negate `.members`. However, it's
3064
+ * dangerous to do so. The problem is that it creates uncertain expectations
3065
+ * by asserting that the target array doesn't have all of the same members as
3066
+ * the given array `set` but may or may not have some of them. It's often best
3067
+ * to identify the exact output that's expected, and then write an assertion
3068
+ * that only accepts that exact output.
3069
+ *
3070
+ * expect([1, 2]).to.not.include(3).and.not.include(4); // Recommended
3071
+ * expect([1, 2]).to.not.have.members([3, 4]); // Not recommended
3072
+ *
3073
+ * `.members` accepts an optional `msg` argument which is a custom error
3074
+ * message to show when the assertion fails. The message can also be given as
3075
+ * the second argument to `expect`.
3076
+ *
3077
+ * expect([1, 2]).to.have.members([1, 2, 3], 'nooo why fail??');
3078
+ * expect([1, 2], 'nooo why fail??').to.have.members([1, 2, 3]);
3079
+ *
3080
+ * @name members
3081
+ * @param {Array} set
3082
+ * @param {String} msg _optional_
3083
+ * @namespace BDD
3084
+ * @api public
3085
+ */
3086
+
3087
+ Assertion.addMethod('members', function (subset, msg) {
3088
+ if (msg) flag(this, 'message', msg);
3089
+ var obj = flag(this, 'object')
3090
+ , flagMsg = flag(this, 'message')
3091
+ , ssfi = flag(this, 'ssfi');
3092
+
3093
+ new Assertion(obj, flagMsg, ssfi, true).to.be.an('array');
3094
+ new Assertion(subset, flagMsg, ssfi, true).to.be.an('array');
3095
+
3096
+ var contains = flag(this, 'contains');
3097
+ var ordered = flag(this, 'ordered');
3098
+
3099
+ var subject, failMsg, failNegateMsg;
3100
+
3101
+ if (contains) {
3102
+ subject = ordered ? 'an ordered superset' : 'a superset';
3103
+ failMsg = 'expected #{this} to be ' + subject + ' of #{exp}';
3104
+ failNegateMsg = 'expected #{this} to not be ' + subject + ' of #{exp}';
3105
+ } else {
3106
+ subject = ordered ? 'ordered members' : 'members';
3107
+ failMsg = 'expected #{this} to have the same ' + subject + ' as #{exp}';
3108
+ failNegateMsg = 'expected #{this} to not have the same ' + subject + ' as #{exp}';
3109
+ }
3110
+
3111
+ var cmp = flag(this, 'deep') ? _.eql : undefined;
3112
+
3113
+ this.assert(
3114
+ isSubsetOf(subset, obj, cmp, contains, ordered)
3115
+ , failMsg
3116
+ , failNegateMsg
3117
+ , subset
3118
+ , obj
3119
+ , true
3120
+ );
3121
+ });
3122
+
3123
+ /**
3124
+ * ### .oneOf(list[, msg])
3125
+ *
3126
+ * Asserts that the target is a member of the given array `list`. However,
3127
+ * it's often best to assert that the target is equal to its expected value.
3128
+ *
3129
+ * expect(1).to.equal(1); // Recommended
3130
+ * expect(1).to.be.oneOf([1, 2, 3]); // Not recommended
3131
+ *
3132
+ * Comparisons are performed using strict (`===`) equality.
3133
+ *
3134
+ * Add `.not` earlier in the chain to negate `.oneOf`.
3135
+ *
3136
+ * expect(1).to.equal(1); // Recommended
3137
+ * expect(1).to.not.be.oneOf([2, 3, 4]); // Not recommended
3138
+ *
3139
+ * It can also be chained with `.contain` or `.include`, which will work with
3140
+ * both arrays and strings:
3141
+ *
3142
+ * expect('Today is sunny').to.contain.oneOf(['sunny', 'cloudy'])
3143
+ * expect('Today is rainy').to.not.contain.oneOf(['sunny', 'cloudy'])
3144
+ * expect([1,2,3]).to.contain.oneOf([3,4,5])
3145
+ * expect([1,2,3]).to.not.contain.oneOf([4,5,6])
3146
+ *
3147
+ * `.oneOf` accepts an optional `msg` argument which is a custom error message
3148
+ * to show when the assertion fails. The message can also be given as the
3149
+ * second argument to `expect`.
3150
+ *
3151
+ * expect(1).to.be.oneOf([2, 3, 4], 'nooo why fail??');
3152
+ * expect(1, 'nooo why fail??').to.be.oneOf([2, 3, 4]);
3153
+ *
3154
+ * @name oneOf
3155
+ * @param {Array<*>} list
3156
+ * @param {String} msg _optional_
3157
+ * @namespace BDD
3158
+ * @api public
3159
+ */
3160
+
3161
+ function oneOf (list, msg) {
3162
+ if (msg) flag(this, 'message', msg);
3163
+ var expected = flag(this, 'object')
3164
+ , flagMsg = flag(this, 'message')
3165
+ , ssfi = flag(this, 'ssfi')
3166
+ , contains = flag(this, 'contains')
3167
+ , isDeep = flag(this, 'deep');
3168
+ new Assertion(list, flagMsg, ssfi, true).to.be.an('array');
3169
+
3170
+ if (contains) {
3171
+ this.assert(
3172
+ list.some(function(possibility) { return expected.indexOf(possibility) > -1 })
3173
+ , 'expected #{this} to contain one of #{exp}'
3174
+ , 'expected #{this} to not contain one of #{exp}'
3175
+ , list
3176
+ , expected
3177
+ );
3178
+ } else {
3179
+ if (isDeep) {
3180
+ this.assert(
3181
+ list.some(function(possibility) { return _.eql(expected, possibility) })
3182
+ , 'expected #{this} to deeply equal one of #{exp}'
3183
+ , 'expected #{this} to deeply equal one of #{exp}'
3184
+ , list
3185
+ , expected
3186
+ );
3187
+ } else {
3188
+ this.assert(
3189
+ list.indexOf(expected) > -1
3190
+ , 'expected #{this} to be one of #{exp}'
3191
+ , 'expected #{this} to not be one of #{exp}'
3192
+ , list
3193
+ , expected
3194
+ );
3195
+ }
3196
+ }
3197
+ }
3198
+
3199
+ Assertion.addMethod('oneOf', oneOf);
3200
+
3201
+ /**
3202
+ * ### .change(subject[, prop[, msg]])
3203
+ *
3204
+ * When one argument is provided, `.change` asserts that the given function
3205
+ * `subject` returns a different value when it's invoked before the target
3206
+ * function compared to when it's invoked afterward. However, it's often best
3207
+ * to assert that `subject` is equal to its expected value.
3208
+ *
3209
+ * var dots = ''
3210
+ * , addDot = function () { dots += '.'; }
3211
+ * , getDots = function () { return dots; };
3212
+ *
3213
+ * // Recommended
3214
+ * expect(getDots()).to.equal('');
3215
+ * addDot();
3216
+ * expect(getDots()).to.equal('.');
3217
+ *
3218
+ * // Not recommended
3219
+ * expect(addDot).to.change(getDots);
3220
+ *
3221
+ * When two arguments are provided, `.change` asserts that the value of the
3222
+ * given object `subject`'s `prop` property is different before invoking the
3223
+ * target function compared to afterward.
3224
+ *
3225
+ * var myObj = {dots: ''}
3226
+ * , addDot = function () { myObj.dots += '.'; };
3227
+ *
3228
+ * // Recommended
3229
+ * expect(myObj).to.have.property('dots', '');
3230
+ * addDot();
3231
+ * expect(myObj).to.have.property('dots', '.');
3232
+ *
3233
+ * // Not recommended
3234
+ * expect(addDot).to.change(myObj, 'dots');
3235
+ *
3236
+ * Strict (`===`) equality is used to compare before and after values.
3237
+ *
3238
+ * Add `.not` earlier in the chain to negate `.change`.
3239
+ *
3240
+ * var dots = ''
3241
+ * , noop = function () {}
3242
+ * , getDots = function () { return dots; };
3243
+ *
3244
+ * expect(noop).to.not.change(getDots);
3245
+ *
3246
+ * var myObj = {dots: ''}
3247
+ * , noop = function () {};
3248
+ *
3249
+ * expect(noop).to.not.change(myObj, 'dots');
3250
+ *
3251
+ * `.change` accepts an optional `msg` argument which is a custom error
3252
+ * message to show when the assertion fails. The message can also be given as
3253
+ * the second argument to `expect`. When not providing two arguments, always
3254
+ * use the second form.
3255
+ *
3256
+ * var myObj = {dots: ''}
3257
+ * , addDot = function () { myObj.dots += '.'; };
3258
+ *
3259
+ * expect(addDot).to.not.change(myObj, 'dots', 'nooo why fail??');
3260
+ *
3261
+ * var dots = ''
3262
+ * , addDot = function () { dots += '.'; }
3263
+ * , getDots = function () { return dots; };
3264
+ *
3265
+ * expect(addDot, 'nooo why fail??').to.not.change(getDots);
3266
+ *
3267
+ * `.change` also causes all `.by` assertions that follow in the chain to
3268
+ * assert how much a numeric subject was increased or decreased by. However,
3269
+ * it's dangerous to use `.change.by`. The problem is that it creates
3270
+ * uncertain expectations by asserting that the subject either increases by
3271
+ * the given delta, or that it decreases by the given delta. It's often best
3272
+ * to identify the exact output that's expected, and then write an assertion
3273
+ * that only accepts that exact output.
3274
+ *
3275
+ * var myObj = {val: 1}
3276
+ * , addTwo = function () { myObj.val += 2; }
3277
+ * , subtractTwo = function () { myObj.val -= 2; };
3278
+ *
3279
+ * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3280
+ * expect(addTwo).to.change(myObj, 'val').by(2); // Not recommended
3281
+ *
3282
+ * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3283
+ * expect(subtractTwo).to.change(myObj, 'val').by(2); // Not recommended
3284
+ *
3285
+ * The alias `.changes` can be used interchangeably with `.change`.
3286
+ *
3287
+ * @name change
3288
+ * @alias changes
3289
+ * @param {String} subject
3290
+ * @param {String} prop name _optional_
3291
+ * @param {String} msg _optional_
3292
+ * @namespace BDD
3293
+ * @api public
3294
+ */
3295
+
3296
+ function assertChanges (subject, prop, msg) {
3297
+ if (msg) flag(this, 'message', msg);
3298
+ var fn = flag(this, 'object')
3299
+ , flagMsg = flag(this, 'message')
3300
+ , ssfi = flag(this, 'ssfi');
3301
+ new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3302
+
3303
+ var initial;
3304
+ if (!prop) {
3305
+ new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3306
+ initial = subject();
3307
+ } else {
3308
+ new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3309
+ initial = subject[prop];
3310
+ }
3311
+
3312
+ fn();
3313
+
3314
+ var final = prop === undefined || prop === null ? subject() : subject[prop];
3315
+ var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3316
+
3317
+ // This gets flagged because of the .by(delta) assertion
3318
+ flag(this, 'deltaMsgObj', msgObj);
3319
+ flag(this, 'initialDeltaValue', initial);
3320
+ flag(this, 'finalDeltaValue', final);
3321
+ flag(this, 'deltaBehavior', 'change');
3322
+ flag(this, 'realDelta', final !== initial);
3323
+
3324
+ this.assert(
3325
+ initial !== final
3326
+ , 'expected ' + msgObj + ' to change'
3327
+ , 'expected ' + msgObj + ' to not change'
3328
+ );
3329
+ }
3330
+
3331
+ Assertion.addMethod('change', assertChanges);
3332
+ Assertion.addMethod('changes', assertChanges);
3333
+
3334
+ /**
3335
+ * ### .increase(subject[, prop[, msg]])
3336
+ *
3337
+ * When one argument is provided, `.increase` asserts that the given function
3338
+ * `subject` returns a greater number when it's invoked after invoking the
3339
+ * target function compared to when it's invoked beforehand. `.increase` also
3340
+ * causes all `.by` assertions that follow in the chain to assert how much
3341
+ * greater of a number is returned. It's often best to assert that the return
3342
+ * value increased by the expected amount, rather than asserting it increased
3343
+ * by any amount.
3344
+ *
3345
+ * var val = 1
3346
+ * , addTwo = function () { val += 2; }
3347
+ * , getVal = function () { return val; };
3348
+ *
3349
+ * expect(addTwo).to.increase(getVal).by(2); // Recommended
3350
+ * expect(addTwo).to.increase(getVal); // Not recommended
3351
+ *
3352
+ * When two arguments are provided, `.increase` asserts that the value of the
3353
+ * given object `subject`'s `prop` property is greater after invoking the
3354
+ * target function compared to beforehand.
3355
+ *
3356
+ * var myObj = {val: 1}
3357
+ * , addTwo = function () { myObj.val += 2; };
3358
+ *
3359
+ * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3360
+ * expect(addTwo).to.increase(myObj, 'val'); // Not recommended
3361
+ *
3362
+ * Add `.not` earlier in the chain to negate `.increase`. However, it's
3363
+ * dangerous to do so. The problem is that it creates uncertain expectations
3364
+ * by asserting that the subject either decreases, or that it stays the same.
3365
+ * It's often best to identify the exact output that's expected, and then
3366
+ * write an assertion that only accepts that exact output.
3367
+ *
3368
+ * When the subject is expected to decrease, it's often best to assert that it
3369
+ * decreased by the expected amount.
3370
+ *
3371
+ * var myObj = {val: 1}
3372
+ * , subtractTwo = function () { myObj.val -= 2; };
3373
+ *
3374
+ * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3375
+ * expect(subtractTwo).to.not.increase(myObj, 'val'); // Not recommended
3376
+ *
3377
+ * When the subject is expected to stay the same, it's often best to assert
3378
+ * exactly that.
3379
+ *
3380
+ * var myObj = {val: 1}
3381
+ * , noop = function () {};
3382
+ *
3383
+ * expect(noop).to.not.change(myObj, 'val'); // Recommended
3384
+ * expect(noop).to.not.increase(myObj, 'val'); // Not recommended
3385
+ *
3386
+ * `.increase` accepts an optional `msg` argument which is a custom error
3387
+ * message to show when the assertion fails. The message can also be given as
3388
+ * the second argument to `expect`. When not providing two arguments, always
3389
+ * use the second form.
3390
+ *
3391
+ * var myObj = {val: 1}
3392
+ * , noop = function () {};
3393
+ *
3394
+ * expect(noop).to.increase(myObj, 'val', 'nooo why fail??');
3395
+ *
3396
+ * var val = 1
3397
+ * , noop = function () {}
3398
+ * , getVal = function () { return val; };
3399
+ *
3400
+ * expect(noop, 'nooo why fail??').to.increase(getVal);
3401
+ *
3402
+ * The alias `.increases` can be used interchangeably with `.increase`.
3403
+ *
3404
+ * @name increase
3405
+ * @alias increases
3406
+ * @param {String|Function} subject
3407
+ * @param {String} prop name _optional_
3408
+ * @param {String} msg _optional_
3409
+ * @namespace BDD
3410
+ * @api public
3411
+ */
3412
+
3413
+ function assertIncreases (subject, prop, msg) {
3414
+ if (msg) flag(this, 'message', msg);
3415
+ var fn = flag(this, 'object')
3416
+ , flagMsg = flag(this, 'message')
3417
+ , ssfi = flag(this, 'ssfi');
3418
+ new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3419
+
3420
+ var initial;
3421
+ if (!prop) {
3422
+ new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3423
+ initial = subject();
3424
+ } else {
3425
+ new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3426
+ initial = subject[prop];
3427
+ }
3428
+
3429
+ // Make sure that the target is a number
3430
+ new Assertion(initial, flagMsg, ssfi, true).is.a('number');
3431
+
3432
+ fn();
3433
+
3434
+ var final = prop === undefined || prop === null ? subject() : subject[prop];
3435
+ var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3436
+
3437
+ flag(this, 'deltaMsgObj', msgObj);
3438
+ flag(this, 'initialDeltaValue', initial);
3439
+ flag(this, 'finalDeltaValue', final);
3440
+ flag(this, 'deltaBehavior', 'increase');
3441
+ flag(this, 'realDelta', final - initial);
3442
+
3443
+ this.assert(
3444
+ final - initial > 0
3445
+ , 'expected ' + msgObj + ' to increase'
3446
+ , 'expected ' + msgObj + ' to not increase'
3447
+ );
3448
+ }
3449
+
3450
+ Assertion.addMethod('increase', assertIncreases);
3451
+ Assertion.addMethod('increases', assertIncreases);
3452
+
3453
+ /**
3454
+ * ### .decrease(subject[, prop[, msg]])
3455
+ *
3456
+ * When one argument is provided, `.decrease` asserts that the given function
3457
+ * `subject` returns a lesser number when it's invoked after invoking the
3458
+ * target function compared to when it's invoked beforehand. `.decrease` also
3459
+ * causes all `.by` assertions that follow in the chain to assert how much
3460
+ * lesser of a number is returned. It's often best to assert that the return
3461
+ * value decreased by the expected amount, rather than asserting it decreased
3462
+ * by any amount.
3463
+ *
3464
+ * var val = 1
3465
+ * , subtractTwo = function () { val -= 2; }
3466
+ * , getVal = function () { return val; };
3467
+ *
3468
+ * expect(subtractTwo).to.decrease(getVal).by(2); // Recommended
3469
+ * expect(subtractTwo).to.decrease(getVal); // Not recommended
3470
+ *
3471
+ * When two arguments are provided, `.decrease` asserts that the value of the
3472
+ * given object `subject`'s `prop` property is lesser after invoking the
3473
+ * target function compared to beforehand.
3474
+ *
3475
+ * var myObj = {val: 1}
3476
+ * , subtractTwo = function () { myObj.val -= 2; };
3477
+ *
3478
+ * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3479
+ * expect(subtractTwo).to.decrease(myObj, 'val'); // Not recommended
3480
+ *
3481
+ * Add `.not` earlier in the chain to negate `.decrease`. However, it's
3482
+ * dangerous to do so. The problem is that it creates uncertain expectations
3483
+ * by asserting that the subject either increases, or that it stays the same.
3484
+ * It's often best to identify the exact output that's expected, and then
3485
+ * write an assertion that only accepts that exact output.
3486
+ *
3487
+ * When the subject is expected to increase, it's often best to assert that it
3488
+ * increased by the expected amount.
3489
+ *
3490
+ * var myObj = {val: 1}
3491
+ * , addTwo = function () { myObj.val += 2; };
3492
+ *
3493
+ * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3494
+ * expect(addTwo).to.not.decrease(myObj, 'val'); // Not recommended
3495
+ *
3496
+ * When the subject is expected to stay the same, it's often best to assert
3497
+ * exactly that.
3498
+ *
3499
+ * var myObj = {val: 1}
3500
+ * , noop = function () {};
3501
+ *
3502
+ * expect(noop).to.not.change(myObj, 'val'); // Recommended
3503
+ * expect(noop).to.not.decrease(myObj, 'val'); // Not recommended
3504
+ *
3505
+ * `.decrease` accepts an optional `msg` argument which is a custom error
3506
+ * message to show when the assertion fails. The message can also be given as
3507
+ * the second argument to `expect`. When not providing two arguments, always
3508
+ * use the second form.
3509
+ *
3510
+ * var myObj = {val: 1}
3511
+ * , noop = function () {};
3512
+ *
3513
+ * expect(noop).to.decrease(myObj, 'val', 'nooo why fail??');
3514
+ *
3515
+ * var val = 1
3516
+ * , noop = function () {}
3517
+ * , getVal = function () { return val; };
3518
+ *
3519
+ * expect(noop, 'nooo why fail??').to.decrease(getVal);
3520
+ *
3521
+ * The alias `.decreases` can be used interchangeably with `.decrease`.
3522
+ *
3523
+ * @name decrease
3524
+ * @alias decreases
3525
+ * @param {String|Function} subject
3526
+ * @param {String} prop name _optional_
3527
+ * @param {String} msg _optional_
3528
+ * @namespace BDD
3529
+ * @api public
3530
+ */
3531
+
3532
+ function assertDecreases (subject, prop, msg) {
3533
+ if (msg) flag(this, 'message', msg);
3534
+ var fn = flag(this, 'object')
3535
+ , flagMsg = flag(this, 'message')
3536
+ , ssfi = flag(this, 'ssfi');
3537
+ new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3538
+
3539
+ var initial;
3540
+ if (!prop) {
3541
+ new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3542
+ initial = subject();
3543
+ } else {
3544
+ new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3545
+ initial = subject[prop];
3546
+ }
3547
+
3548
+ // Make sure that the target is a number
3549
+ new Assertion(initial, flagMsg, ssfi, true).is.a('number');
3550
+
3551
+ fn();
3552
+
3553
+ var final = prop === undefined || prop === null ? subject() : subject[prop];
3554
+ var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3555
+
3556
+ flag(this, 'deltaMsgObj', msgObj);
3557
+ flag(this, 'initialDeltaValue', initial);
3558
+ flag(this, 'finalDeltaValue', final);
3559
+ flag(this, 'deltaBehavior', 'decrease');
3560
+ flag(this, 'realDelta', initial - final);
3561
+
3562
+ this.assert(
3563
+ final - initial < 0
3564
+ , 'expected ' + msgObj + ' to decrease'
3565
+ , 'expected ' + msgObj + ' to not decrease'
3566
+ );
3567
+ }
3568
+
3569
+ Assertion.addMethod('decrease', assertDecreases);
3570
+ Assertion.addMethod('decreases', assertDecreases);
3571
+
3572
+ /**
3573
+ * ### .by(delta[, msg])
3574
+ *
3575
+ * When following an `.increase` assertion in the chain, `.by` asserts that
3576
+ * the subject of the `.increase` assertion increased by the given `delta`.
3577
+ *
3578
+ * var myObj = {val: 1}
3579
+ * , addTwo = function () { myObj.val += 2; };
3580
+ *
3581
+ * expect(addTwo).to.increase(myObj, 'val').by(2);
3582
+ *
3583
+ * When following a `.decrease` assertion in the chain, `.by` asserts that the
3584
+ * subject of the `.decrease` assertion decreased by the given `delta`.
3585
+ *
3586
+ * var myObj = {val: 1}
3587
+ * , subtractTwo = function () { myObj.val -= 2; };
3588
+ *
3589
+ * expect(subtractTwo).to.decrease(myObj, 'val').by(2);
3590
+ *
3591
+ * When following a `.change` assertion in the chain, `.by` asserts that the
3592
+ * subject of the `.change` assertion either increased or decreased by the
3593
+ * given `delta`. However, it's dangerous to use `.change.by`. The problem is
3594
+ * that it creates uncertain expectations. It's often best to identify the
3595
+ * exact output that's expected, and then write an assertion that only accepts
3596
+ * that exact output.
3597
+ *
3598
+ * var myObj = {val: 1}
3599
+ * , addTwo = function () { myObj.val += 2; }
3600
+ * , subtractTwo = function () { myObj.val -= 2; };
3601
+ *
3602
+ * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3603
+ * expect(addTwo).to.change(myObj, 'val').by(2); // Not recommended
3604
+ *
3605
+ * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3606
+ * expect(subtractTwo).to.change(myObj, 'val').by(2); // Not recommended
3607
+ *
3608
+ * Add `.not` earlier in the chain to negate `.by`. However, it's often best
3609
+ * to assert that the subject changed by its expected delta, rather than
3610
+ * asserting that it didn't change by one of countless unexpected deltas.
3611
+ *
3612
+ * var myObj = {val: 1}
3613
+ * , addTwo = function () { myObj.val += 2; };
3614
+ *
3615
+ * // Recommended
3616
+ * expect(addTwo).to.increase(myObj, 'val').by(2);
3617
+ *
3618
+ * // Not recommended
3619
+ * expect(addTwo).to.increase(myObj, 'val').but.not.by(3);
3620
+ *
3621
+ * `.by` accepts an optional `msg` argument which is a custom error message to
3622
+ * show when the assertion fails. The message can also be given as the second
3623
+ * argument to `expect`.
3624
+ *
3625
+ * var myObj = {val: 1}
3626
+ * , addTwo = function () { myObj.val += 2; };
3627
+ *
3628
+ * expect(addTwo).to.increase(myObj, 'val').by(3, 'nooo why fail??');
3629
+ * expect(addTwo, 'nooo why fail??').to.increase(myObj, 'val').by(3);
3630
+ *
3631
+ * @name by
3632
+ * @param {Number} delta
3633
+ * @param {String} msg _optional_
3634
+ * @namespace BDD
3635
+ * @api public
3636
+ */
3637
+
3638
+ function assertDelta(delta, msg) {
3639
+ if (msg) flag(this, 'message', msg);
3640
+
3641
+ var msgObj = flag(this, 'deltaMsgObj');
3642
+ var initial = flag(this, 'initialDeltaValue');
3643
+ var final = flag(this, 'finalDeltaValue');
3644
+ var behavior = flag(this, 'deltaBehavior');
3645
+ var realDelta = flag(this, 'realDelta');
3646
+
3647
+ var expression;
3648
+ if (behavior === 'change') {
3649
+ expression = Math.abs(final - initial) === Math.abs(delta);
3650
+ } else {
3651
+ expression = realDelta === Math.abs(delta);
3652
+ }
3653
+
3654
+ this.assert(
3655
+ expression
3656
+ , 'expected ' + msgObj + ' to ' + behavior + ' by ' + delta
3657
+ , 'expected ' + msgObj + ' to not ' + behavior + ' by ' + delta
3658
+ );
3659
+ }
3660
+
3661
+ Assertion.addMethod('by', assertDelta);
3662
+
3663
+ /**
3664
+ * ### .extensible
3665
+ *
3666
+ * Asserts that the target is extensible, which means that new properties can
3667
+ * be added to it. Primitives are never extensible.
3668
+ *
3669
+ * expect({a: 1}).to.be.extensible;
3670
+ *
3671
+ * Add `.not` earlier in the chain to negate `.extensible`.
3672
+ *
3673
+ * var nonExtensibleObject = Object.preventExtensions({})
3674
+ * , sealedObject = Object.seal({})
3675
+ * , frozenObject = Object.freeze({});
3676
+ *
3677
+ * expect(nonExtensibleObject).to.not.be.extensible;
3678
+ * expect(sealedObject).to.not.be.extensible;
3679
+ * expect(frozenObject).to.not.be.extensible;
3680
+ * expect(1).to.not.be.extensible;
3681
+ *
3682
+ * A custom error message can be given as the second argument to `expect`.
3683
+ *
3684
+ * expect(1, 'nooo why fail??').to.be.extensible;
3685
+ *
3686
+ * @name extensible
3687
+ * @namespace BDD
3688
+ * @api public
3689
+ */
3690
+
3691
+ Assertion.addProperty('extensible', function() {
3692
+ var obj = flag(this, 'object');
3693
+
3694
+ // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3695
+ // In ES6, a non-object argument will be treated as if it was a non-extensible ordinary object, simply return false.
3696
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
3697
+ // The following provides ES6 behavior for ES5 environments.
3698
+
3699
+ var isExtensible = obj === Object(obj) && Object.isExtensible(obj);
3700
+
3701
+ this.assert(
3702
+ isExtensible
3703
+ , 'expected #{this} to be extensible'
3704
+ , 'expected #{this} to not be extensible'
3705
+ );
3706
+ });
3707
+
3708
+ /**
3709
+ * ### .sealed
3710
+ *
3711
+ * Asserts that the target is sealed, which means that new properties can't be
3712
+ * added to it, and its existing properties can't be reconfigured or deleted.
3713
+ * However, it's possible that its existing properties can still be reassigned
3714
+ * to different values. Primitives are always sealed.
3715
+ *
3716
+ * var sealedObject = Object.seal({});
3717
+ * var frozenObject = Object.freeze({});
3718
+ *
3719
+ * expect(sealedObject).to.be.sealed;
3720
+ * expect(frozenObject).to.be.sealed;
3721
+ * expect(1).to.be.sealed;
3722
+ *
3723
+ * Add `.not` earlier in the chain to negate `.sealed`.
3724
+ *
3725
+ * expect({a: 1}).to.not.be.sealed;
3726
+ *
3727
+ * A custom error message can be given as the second argument to `expect`.
3728
+ *
3729
+ * expect({a: 1}, 'nooo why fail??').to.be.sealed;
3730
+ *
3731
+ * @name sealed
3732
+ * @namespace BDD
3733
+ * @api public
3734
+ */
3735
+
3736
+ Assertion.addProperty('sealed', function() {
3737
+ var obj = flag(this, 'object');
3738
+
3739
+ // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3740
+ // In ES6, a non-object argument will be treated as if it was a sealed ordinary object, simply return true.
3741
+ // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
3742
+ // The following provides ES6 behavior for ES5 environments.
3743
+
3744
+ var isSealed = obj === Object(obj) ? Object.isSealed(obj) : true;
3745
+
3746
+ this.assert(
3747
+ isSealed
3748
+ , 'expected #{this} to be sealed'
3749
+ , 'expected #{this} to not be sealed'
3750
+ );
3751
+ });
3752
+
3753
+ /**
3754
+ * ### .frozen
3755
+ *
3756
+ * Asserts that the target is frozen, which means that new properties can't be
3757
+ * added to it, and its existing properties can't be reassigned to different
3758
+ * values, reconfigured, or deleted. Primitives are always frozen.
3759
+ *
3760
+ * var frozenObject = Object.freeze({});
3761
+ *
3762
+ * expect(frozenObject).to.be.frozen;
3763
+ * expect(1).to.be.frozen;
3764
+ *
3765
+ * Add `.not` earlier in the chain to negate `.frozen`.
3766
+ *
3767
+ * expect({a: 1}).to.not.be.frozen;
3768
+ *
3769
+ * A custom error message can be given as the second argument to `expect`.
3770
+ *
3771
+ * expect({a: 1}, 'nooo why fail??').to.be.frozen;
3772
+ *
3773
+ * @name frozen
3774
+ * @namespace BDD
3775
+ * @api public
3776
+ */
3777
+
3778
+ Assertion.addProperty('frozen', function() {
3779
+ var obj = flag(this, 'object');
3780
+
3781
+ // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3782
+ // In ES6, a non-object argument will be treated as if it was a frozen ordinary object, simply return true.
3783
+ // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
3784
+ // The following provides ES6 behavior for ES5 environments.
3785
+
3786
+ var isFrozen = obj === Object(obj) ? Object.isFrozen(obj) : true;
3787
+
3788
+ this.assert(
3789
+ isFrozen
3790
+ , 'expected #{this} to be frozen'
3791
+ , 'expected #{this} to not be frozen'
3792
+ );
3793
+ });
3794
+
3795
+ /**
3796
+ * ### .finite
3797
+ *
3798
+ * Asserts that the target is a number, and isn't `NaN` or positive/negative
3799
+ * `Infinity`.
3800
+ *
3801
+ * expect(1).to.be.finite;
3802
+ *
3803
+ * Add `.not` earlier in the chain to negate `.finite`. However, it's
3804
+ * dangerous to do so. The problem is that it creates uncertain expectations
3805
+ * by asserting that the subject either isn't a number, or that it's `NaN`, or
3806
+ * that it's positive `Infinity`, or that it's negative `Infinity`. It's often
3807
+ * best to identify the exact output that's expected, and then write an
3808
+ * assertion that only accepts that exact output.
3809
+ *
3810
+ * When the target isn't expected to be a number, it's often best to assert
3811
+ * that it's the expected type, rather than asserting that it isn't one of
3812
+ * many unexpected types.
3813
+ *
3814
+ * expect('foo').to.be.a('string'); // Recommended
3815
+ * expect('foo').to.not.be.finite; // Not recommended
3816
+ *
3817
+ * When the target is expected to be `NaN`, it's often best to assert exactly
3818
+ * that.
3819
+ *
3820
+ * expect(NaN).to.be.NaN; // Recommended
3821
+ * expect(NaN).to.not.be.finite; // Not recommended
3822
+ *
3823
+ * When the target is expected to be positive infinity, it's often best to
3824
+ * assert exactly that.
3825
+ *
3826
+ * expect(Infinity).to.equal(Infinity); // Recommended
3827
+ * expect(Infinity).to.not.be.finite; // Not recommended
3828
+ *
3829
+ * When the target is expected to be negative infinity, it's often best to
3830
+ * assert exactly that.
3831
+ *
3832
+ * expect(-Infinity).to.equal(-Infinity); // Recommended
3833
+ * expect(-Infinity).to.not.be.finite; // Not recommended
3834
+ *
3835
+ * A custom error message can be given as the second argument to `expect`.
3836
+ *
3837
+ * expect('foo', 'nooo why fail??').to.be.finite;
3838
+ *
3839
+ * @name finite
3840
+ * @namespace BDD
3841
+ * @api public
3842
+ */
3843
+
3844
+ Assertion.addProperty('finite', function(msg) {
3845
+ var obj = flag(this, 'object');
3846
+
3847
+ this.assert(
3848
+ typeof obj === 'number' && isFinite(obj)
3849
+ , 'expected #{this} to be a finite number'
3850
+ , 'expected #{this} to not be a finite number'
3851
+ );
3852
+ });
3853
+ };