smock 0.1.217 → 0.1.218

Sign up to get free protection for your applications and to get access to all the features.
Files changed (315) hide show
  1. data/Gemfile.lock +1 -1
  2. data/app/assets/javascripts/modules/category_dropdown.coffee +0 -1
  3. data/examples/pages/homepage.html +1 -0
  4. data/node_modules/exports-loader/.npmignore +1 -0
  5. data/node_modules/exports-loader/README.md +18 -0
  6. data/node_modules/exports-loader/index.js +36 -0
  7. data/node_modules/exports-loader/node_modules/loader-utils/.npmignore +1 -0
  8. data/node_modules/exports-loader/node_modules/loader-utils/README.md +129 -0
  9. data/node_modules/exports-loader/node_modules/loader-utils/index.js +229 -0
  10. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/.bin/json5 +41 -0
  11. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/.npmignore +0 -0
  12. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/LICENCE +23 -0
  13. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/README.md +214 -0
  14. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/big.js +1026 -0
  15. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/big.min.js +1 -0
  16. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/doc/bigAPI.html +1026 -0
  17. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/package.json +61 -0
  18. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/big-vs-bigdecimal.html +678 -0
  19. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/bigtime.js +324 -0
  20. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.class +0 -0
  21. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.java +60 -0
  22. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/LICENCE.txt +205 -0
  23. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bigdecimal.js +592 -0
  24. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bugs.js +53 -0
  25. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.js +5724 -0
  26. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.min.js +61 -0
  27. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/LICENCE.txt +30 -0
  28. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/abs.js +555 -0
  29. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/big-vs-number.html +249 -0
  30. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/every-test.html +66 -0
  31. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/single-test.html +26 -0
  32. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/cmp.js +4305 -0
  33. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/div.js +9978 -0
  34. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/every-test.js +31 -0
  35. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/minus.js +1793 -0
  36. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/mod.js +1838 -0
  37. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/plus.js +1916 -0
  38. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/pow.js +1233 -0
  39. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/round.js +5173 -0
  40. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/sqrt.js +788 -0
  41. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/times.js +2159 -0
  42. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toExponential.js +472 -0
  43. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toFixed.js +1030 -0
  44. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toPrecision.js +508 -0
  45. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/big.js/test/toString.js +1068 -0
  46. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/.npmignore +4 -0
  47. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/CHANGELOG.md +56 -0
  48. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/Makefile +27 -0
  49. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/README.md +173 -0
  50. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/cli.js +41 -0
  51. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/json5.js +462 -0
  52. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/lib/require.js +18 -0
  53. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/package.json +66 -0
  54. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/package.json5 +24 -0
  55. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/empty-array.json +1 -0
  56. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/leading-comma-array.js +3 -0
  57. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/lone-trailing-comma-array.js +3 -0
  58. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/no-comma-array.txt +4 -0
  59. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/regular-array.json +5 -0
  60. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/trailing-comma-array.json5 +3 -0
  61. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-array-element.json5 +6 -0
  62. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-top-level-value.json5 +5 -0
  63. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-in-string.json +1 -0
  64. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-preceding-top-level-value.json5 +5 -0
  65. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-with-asterisks.json5 +7 -0
  66. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-array-element.json5 +3 -0
  67. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-top-level-value.json5 +1 -0
  68. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-in-string.json +1 -0
  69. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-preceding-top-level-value.json5 +2 -0
  70. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-block-comment.txt +4 -0
  71. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-inline-comment.txt +1 -0
  72. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/unterminated-block-comment.txt +5 -0
  73. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/empty.txt +0 -0
  74. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json +106 -0
  75. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json5 +106 -0
  76. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/readme-example.json5 +23 -0
  77. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-exponent.json +1 -0
  78. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-negative-exponent.json +1 -0
  79. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal.json +1 -0
  80. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-lowercase-letter.json5 +1 -0
  81. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-no-digits.txt +1 -0
  82. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-uppercase-x.json5 +1 -0
  83. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal.json5 +1 -0
  84. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/leading-decimal-point.json5 +1 -0
  85. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-decimal-literal.json +1 -0
  86. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-hexadecimal-literal.json5 +1 -0
  87. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-leading-decimal-point.json5 +1 -0
  88. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal-with-octal-digit-after-leading-zero.js +1 -0
  89. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal.js +1 -0
  90. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/octal-literal.txt +1 -0
  91. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point-with-exponent.js +1 -0
  92. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point.js +1 -0
  93. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/zero-literal.json +1 -0
  94. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/empty-object.json +1 -0
  95. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-number.txt +3 -0
  96. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-symbol.txt +3 -0
  97. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/leading-comma-object.txt +3 -0
  98. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/lone-trailing-comma-object.txt +3 -0
  99. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/no-comma-object.txt +4 -0
  100. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/reserved-unquoted-key.json5 +3 -0
  101. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/single-quoted-key.json5 +3 -0
  102. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/trailing-comma-object.json5 +3 -0
  103. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/unquoted-keys.json5 +8 -0
  104. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/escaped-single-quoted-string.json5 +1 -0
  105. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/multi-line-string.json5 +2 -0
  106. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/single-quoted-string.json5 +1 -0
  107. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-escaped-unquoted-key.json5 +3 -0
  108. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-unquoted-key.json5 +3 -0
  109. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/parse.js +74 -0
  110. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/readme.md +23 -0
  111. data/node_modules/exports-loader/node_modules/loader-utils/node_modules/json5/test/require.js +18 -0
  112. data/node_modules/exports-loader/node_modules/loader-utils/package.json +54 -0
  113. data/node_modules/exports-loader/node_modules/loader-utils/test/index.js +62 -0
  114. data/node_modules/exports-loader/node_modules/source-map/.npmignore +2 -0
  115. data/node_modules/exports-loader/node_modules/source-map/.travis.yml +4 -0
  116. data/node_modules/exports-loader/node_modules/source-map/CHANGELOG.md +194 -0
  117. data/node_modules/exports-loader/node_modules/source-map/LICENSE +28 -0
  118. data/node_modules/exports-loader/node_modules/source-map/Makefile.dryice.js +166 -0
  119. data/node_modules/exports-loader/node_modules/source-map/README.md +475 -0
  120. data/node_modules/exports-loader/node_modules/source-map/build/assert-shim.js +56 -0
  121. data/node_modules/exports-loader/node_modules/source-map/build/mini-require.js +152 -0
  122. data/node_modules/exports-loader/node_modules/source-map/build/prefix-source-map.jsm +20 -0
  123. data/node_modules/exports-loader/node_modules/source-map/build/prefix-utils.jsm +18 -0
  124. data/node_modules/exports-loader/node_modules/source-map/build/suffix-browser.js +8 -0
  125. data/node_modules/exports-loader/node_modules/source-map/build/suffix-source-map.jsm +6 -0
  126. data/node_modules/exports-loader/node_modules/source-map/build/suffix-utils.jsm +21 -0
  127. data/node_modules/exports-loader/node_modules/source-map/build/test-prefix.js +8 -0
  128. data/node_modules/exports-loader/node_modules/source-map/build/test-suffix.js +3 -0
  129. data/node_modules/exports-loader/node_modules/source-map/lib/source-map.js +8 -0
  130. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/array-set.js +97 -0
  131. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/base64-vlq.js +142 -0
  132. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/base64.js +42 -0
  133. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/binary-search.js +80 -0
  134. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/mapping-list.js +86 -0
  135. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-map-consumer.js +575 -0
  136. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-map-generator.js +400 -0
  137. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/source-node.js +414 -0
  138. data/node_modules/exports-loader/node_modules/source-map/lib/source-map/util.js +319 -0
  139. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/LICENSE +58 -0
  140. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/README.md +171 -0
  141. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/amdefine.js +299 -0
  142. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/intercept.js +36 -0
  143. data/node_modules/exports-loader/node_modules/source-map/node_modules/amdefine/package.json +37 -0
  144. data/node_modules/exports-loader/node_modules/source-map/package.json +186 -0
  145. data/node_modules/exports-loader/node_modules/source-map/test/run-tests.js +62 -0
  146. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-api.js +26 -0
  147. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-array-set.js +104 -0
  148. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-base64-vlq.js +23 -0
  149. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-base64.js +35 -0
  150. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-binary-search.js +54 -0
  151. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-dog-fooding.js +84 -0
  152. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-map-consumer.js +702 -0
  153. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-map-generator.js +679 -0
  154. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-source-node.js +612 -0
  155. data/node_modules/exports-loader/node_modules/source-map/test/source-map/test-util.js +216 -0
  156. data/node_modules/exports-loader/node_modules/source-map/test/source-map/util.js +192 -0
  157. data/node_modules/exports-loader/package.json +46 -0
  158. data/node_modules/imports-loader/.npmignore +1 -0
  159. data/node_modules/imports-loader/README.md +17 -0
  160. data/node_modules/imports-loader/index.js +46 -0
  161. data/node_modules/imports-loader/node_modules/loader-utils/.npmignore +1 -0
  162. data/node_modules/imports-loader/node_modules/loader-utils/README.md +129 -0
  163. data/node_modules/imports-loader/node_modules/loader-utils/index.js +229 -0
  164. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/.bin/json5 +41 -0
  165. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/.npmignore +0 -0
  166. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/LICENCE +23 -0
  167. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/README.md +214 -0
  168. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/big.js +1026 -0
  169. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/big.min.js +1 -0
  170. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/doc/bigAPI.html +1026 -0
  171. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/package.json +61 -0
  172. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/big-vs-bigdecimal.html +678 -0
  173. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/bigtime.js +324 -0
  174. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.class +0 -0
  175. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/BigDecTest.java +60 -0
  176. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/LICENCE.txt +205 -0
  177. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bigdecimal.js +592 -0
  178. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_GWT/bugs.js +53 -0
  179. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.js +5724 -0
  180. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/BigDecimal-all-last.min.js +61 -0
  181. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/perf/lib/bigdecimal_ICU4J/LICENCE.txt +30 -0
  182. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/abs.js +555 -0
  183. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/big-vs-number.html +249 -0
  184. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/every-test.html +66 -0
  185. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/browser/single-test.html +26 -0
  186. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/cmp.js +4305 -0
  187. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/div.js +9978 -0
  188. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/every-test.js +31 -0
  189. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/minus.js +1793 -0
  190. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/mod.js +1838 -0
  191. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/plus.js +1916 -0
  192. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/pow.js +1233 -0
  193. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/round.js +5173 -0
  194. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/sqrt.js +788 -0
  195. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/times.js +2159 -0
  196. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toExponential.js +472 -0
  197. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toFixed.js +1030 -0
  198. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toPrecision.js +508 -0
  199. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/big.js/test/toString.js +1068 -0
  200. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/.npmignore +4 -0
  201. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/CHANGELOG.md +56 -0
  202. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/Makefile +27 -0
  203. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/README.md +173 -0
  204. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/cli.js +41 -0
  205. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/json5.js +462 -0
  206. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/lib/require.js +18 -0
  207. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/package.json +66 -0
  208. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/package.json5 +24 -0
  209. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/empty-array.json +1 -0
  210. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/leading-comma-array.js +3 -0
  211. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/lone-trailing-comma-array.js +3 -0
  212. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/no-comma-array.txt +4 -0
  213. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/regular-array.json +5 -0
  214. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/arrays/trailing-comma-array.json5 +3 -0
  215. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-array-element.json5 +6 -0
  216. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-following-top-level-value.json5 +5 -0
  217. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-in-string.json +1 -0
  218. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-preceding-top-level-value.json5 +5 -0
  219. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/block-comment-with-asterisks.json5 +7 -0
  220. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-array-element.json5 +3 -0
  221. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-following-top-level-value.json5 +1 -0
  222. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-in-string.json +1 -0
  223. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/inline-comment-preceding-top-level-value.json5 +2 -0
  224. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-block-comment.txt +4 -0
  225. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/top-level-inline-comment.txt +1 -0
  226. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/comments/unterminated-block-comment.txt +5 -0
  227. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/empty.txt +0 -0
  228. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json +106 -0
  229. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/npm-package.json5 +106 -0
  230. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/misc/readme-example.json5 +23 -0
  231. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-exponent.json +1 -0
  232. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal-with-negative-exponent.json +1 -0
  233. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/decimal-literal.json +1 -0
  234. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-lowercase-letter.json5 +1 -0
  235. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-no-digits.txt +1 -0
  236. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal-with-uppercase-x.json5 +1 -0
  237. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/hexadecimal-literal.json5 +1 -0
  238. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/leading-decimal-point.json5 +1 -0
  239. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-decimal-literal.json +1 -0
  240. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-hexadecimal-literal.json5 +1 -0
  241. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/negative-leading-decimal-point.json5 +1 -0
  242. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal-with-octal-digit-after-leading-zero.js +1 -0
  243. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/noctal-literal.js +1 -0
  244. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/octal-literal.txt +1 -0
  245. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point-with-exponent.js +1 -0
  246. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/trailing-decimal-point.js +1 -0
  247. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/numbers/zero-literal.json +1 -0
  248. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/empty-object.json +1 -0
  249. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-number.txt +3 -0
  250. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/illegal-unquoted-key-symbol.txt +3 -0
  251. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/leading-comma-object.txt +3 -0
  252. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/lone-trailing-comma-object.txt +3 -0
  253. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/no-comma-object.txt +4 -0
  254. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/reserved-unquoted-key.json5 +3 -0
  255. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/single-quoted-key.json5 +3 -0
  256. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/trailing-comma-object.json5 +3 -0
  257. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/objects/unquoted-keys.json5 +8 -0
  258. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/escaped-single-quoted-string.json5 +1 -0
  259. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/multi-line-string.json5 +2 -0
  260. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/strings/single-quoted-string.json5 +1 -0
  261. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-escaped-unquoted-key.json5 +3 -0
  262. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse-cases/todo/unicode-unquoted-key.json5 +3 -0
  263. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/parse.js +74 -0
  264. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/readme.md +23 -0
  265. data/node_modules/imports-loader/node_modules/loader-utils/node_modules/json5/test/require.js +18 -0
  266. data/node_modules/imports-loader/node_modules/loader-utils/package.json +53 -0
  267. data/node_modules/imports-loader/node_modules/loader-utils/test/index.js +62 -0
  268. data/node_modules/imports-loader/node_modules/source-map/.npmignore +2 -0
  269. data/node_modules/imports-loader/node_modules/source-map/.travis.yml +4 -0
  270. data/node_modules/imports-loader/node_modules/source-map/CHANGELOG.md +194 -0
  271. data/node_modules/imports-loader/node_modules/source-map/LICENSE +28 -0
  272. data/node_modules/imports-loader/node_modules/source-map/Makefile.dryice.js +166 -0
  273. data/node_modules/imports-loader/node_modules/source-map/README.md +475 -0
  274. data/node_modules/imports-loader/node_modules/source-map/build/assert-shim.js +56 -0
  275. data/node_modules/imports-loader/node_modules/source-map/build/mini-require.js +152 -0
  276. data/node_modules/imports-loader/node_modules/source-map/build/prefix-source-map.jsm +20 -0
  277. data/node_modules/imports-loader/node_modules/source-map/build/prefix-utils.jsm +18 -0
  278. data/node_modules/imports-loader/node_modules/source-map/build/suffix-browser.js +8 -0
  279. data/node_modules/imports-loader/node_modules/source-map/build/suffix-source-map.jsm +6 -0
  280. data/node_modules/imports-loader/node_modules/source-map/build/suffix-utils.jsm +21 -0
  281. data/node_modules/imports-loader/node_modules/source-map/build/test-prefix.js +8 -0
  282. data/node_modules/imports-loader/node_modules/source-map/build/test-suffix.js +3 -0
  283. data/node_modules/imports-loader/node_modules/source-map/lib/source-map.js +8 -0
  284. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/array-set.js +97 -0
  285. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/base64-vlq.js +142 -0
  286. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/base64.js +42 -0
  287. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/binary-search.js +80 -0
  288. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/mapping-list.js +86 -0
  289. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-map-consumer.js +575 -0
  290. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-map-generator.js +400 -0
  291. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/source-node.js +414 -0
  292. data/node_modules/imports-loader/node_modules/source-map/lib/source-map/util.js +319 -0
  293. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/LICENSE +58 -0
  294. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/README.md +171 -0
  295. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/amdefine.js +299 -0
  296. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/intercept.js +36 -0
  297. data/node_modules/imports-loader/node_modules/source-map/node_modules/amdefine/package.json +37 -0
  298. data/node_modules/imports-loader/node_modules/source-map/package.json +186 -0
  299. data/node_modules/imports-loader/node_modules/source-map/test/run-tests.js +62 -0
  300. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-api.js +26 -0
  301. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-array-set.js +104 -0
  302. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-base64-vlq.js +23 -0
  303. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-base64.js +35 -0
  304. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-binary-search.js +54 -0
  305. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-dog-fooding.js +84 -0
  306. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-map-consumer.js +702 -0
  307. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-map-generator.js +679 -0
  308. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-source-node.js +612 -0
  309. data/node_modules/imports-loader/node_modules/source-map/test/source-map/test-util.js +216 -0
  310. data/node_modules/imports-loader/node_modules/source-map/test/source-map/util.js +192 -0
  311. data/node_modules/imports-loader/package.json +46 -0
  312. data/package.json +4 -2
  313. data/webpack.config.js +3 -6
  314. metadata +312 -5
  315. data/app/assets/javascripts/vendor/jquery.js +0 -10346
@@ -0,0 +1,612 @@
1
+ /* -*- Mode: js; js-indent-level: 2; -*- */
2
+ /*
3
+ * Copyright 2011 Mozilla Foundation and contributors
4
+ * Licensed under the New BSD license. See LICENSE or:
5
+ * http://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ if (typeof define !== 'function') {
8
+ var define = require('amdefine')(module, require);
9
+ }
10
+ define(function (require, exports, module) {
11
+
12
+ var SourceMapGenerator = require('../../lib/source-map/source-map-generator').SourceMapGenerator;
13
+ var SourceMapConsumer = require('../../lib/source-map/source-map-consumer').SourceMapConsumer;
14
+ var SourceNode = require('../../lib/source-map/source-node').SourceNode;
15
+
16
+ function forEachNewline(fn) {
17
+ return function (assert, util) {
18
+ ['\n', '\r\n'].forEach(fn.bind(null, assert, util));
19
+ }
20
+ }
21
+
22
+ exports['test .add()'] = function (assert, util) {
23
+ var node = new SourceNode(null, null, null);
24
+
25
+ // Adding a string works.
26
+ node.add('function noop() {}');
27
+
28
+ // Adding another source node works.
29
+ node.add(new SourceNode(null, null, null));
30
+
31
+ // Adding an array works.
32
+ node.add(['function foo() {',
33
+ new SourceNode(null, null, null,
34
+ 'return 10;'),
35
+ '}']);
36
+
37
+ // Adding other stuff doesn't.
38
+ assert.throws(function () {
39
+ node.add({});
40
+ });
41
+ assert.throws(function () {
42
+ node.add(function () {});
43
+ });
44
+ };
45
+
46
+ exports['test .prepend()'] = function (assert, util) {
47
+ var node = new SourceNode(null, null, null);
48
+
49
+ // Prepending a string works.
50
+ node.prepend('function noop() {}');
51
+ assert.equal(node.children[0], 'function noop() {}');
52
+ assert.equal(node.children.length, 1);
53
+
54
+ // Prepending another source node works.
55
+ node.prepend(new SourceNode(null, null, null));
56
+ assert.equal(node.children[0], '');
57
+ assert.equal(node.children[1], 'function noop() {}');
58
+ assert.equal(node.children.length, 2);
59
+
60
+ // Prepending an array works.
61
+ node.prepend(['function foo() {',
62
+ new SourceNode(null, null, null,
63
+ 'return 10;'),
64
+ '}']);
65
+ assert.equal(node.children[0], 'function foo() {');
66
+ assert.equal(node.children[1], 'return 10;');
67
+ assert.equal(node.children[2], '}');
68
+ assert.equal(node.children[3], '');
69
+ assert.equal(node.children[4], 'function noop() {}');
70
+ assert.equal(node.children.length, 5);
71
+
72
+ // Prepending other stuff doesn't.
73
+ assert.throws(function () {
74
+ node.prepend({});
75
+ });
76
+ assert.throws(function () {
77
+ node.prepend(function () {});
78
+ });
79
+ };
80
+
81
+ exports['test .toString()'] = function (assert, util) {
82
+ assert.equal((new SourceNode(null, null, null,
83
+ ['function foo() {',
84
+ new SourceNode(null, null, null, 'return 10;'),
85
+ '}'])).toString(),
86
+ 'function foo() {return 10;}');
87
+ };
88
+
89
+ exports['test .join()'] = function (assert, util) {
90
+ assert.equal((new SourceNode(null, null, null,
91
+ ['a', 'b', 'c', 'd'])).join(', ').toString(),
92
+ 'a, b, c, d');
93
+ };
94
+
95
+ exports['test .walk()'] = function (assert, util) {
96
+ var node = new SourceNode(null, null, null,
97
+ ['(function () {\n',
98
+ ' ', new SourceNode(1, 0, 'a.js', ['someCall()']), ';\n',
99
+ ' ', new SourceNode(2, 0, 'b.js', ['if (foo) bar()']), ';\n',
100
+ '}());']);
101
+ var expected = [
102
+ { str: '(function () {\n', source: null, line: null, column: null },
103
+ { str: ' ', source: null, line: null, column: null },
104
+ { str: 'someCall()', source: 'a.js', line: 1, column: 0 },
105
+ { str: ';\n', source: null, line: null, column: null },
106
+ { str: ' ', source: null, line: null, column: null },
107
+ { str: 'if (foo) bar()', source: 'b.js', line: 2, column: 0 },
108
+ { str: ';\n', source: null, line: null, column: null },
109
+ { str: '}());', source: null, line: null, column: null },
110
+ ];
111
+ var i = 0;
112
+ node.walk(function (chunk, loc) {
113
+ assert.equal(expected[i].str, chunk);
114
+ assert.equal(expected[i].source, loc.source);
115
+ assert.equal(expected[i].line, loc.line);
116
+ assert.equal(expected[i].column, loc.column);
117
+ i++;
118
+ });
119
+ };
120
+
121
+ exports['test .replaceRight'] = function (assert, util) {
122
+ var node;
123
+
124
+ // Not nested
125
+ node = new SourceNode(null, null, null, 'hello world');
126
+ node.replaceRight(/world/, 'universe');
127
+ assert.equal(node.toString(), 'hello universe');
128
+
129
+ // Nested
130
+ node = new SourceNode(null, null, null,
131
+ [new SourceNode(null, null, null, 'hey sexy mama, '),
132
+ new SourceNode(null, null, null, 'want to kill all humans?')]);
133
+ node.replaceRight(/kill all humans/, 'watch Futurama');
134
+ assert.equal(node.toString(), 'hey sexy mama, want to watch Futurama?');
135
+ };
136
+
137
+ exports['test .toStringWithSourceMap()'] = forEachNewline(function (assert, util, nl) {
138
+ var node = new SourceNode(null, null, null,
139
+ ['(function () {' + nl,
140
+ ' ',
141
+ new SourceNode(1, 0, 'a.js', 'someCall', 'originalCall'),
142
+ new SourceNode(1, 8, 'a.js', '()'),
143
+ ';' + nl,
144
+ ' ', new SourceNode(2, 0, 'b.js', ['if (foo) bar()']), ';' + nl,
145
+ '}());']);
146
+ var result = node.toStringWithSourceMap({
147
+ file: 'foo.js'
148
+ });
149
+
150
+ assert.equal(result.code, [
151
+ '(function () {',
152
+ ' someCall();',
153
+ ' if (foo) bar();',
154
+ '}());'
155
+ ].join(nl));
156
+
157
+ var map = result.map;
158
+ var mapWithoutOptions = node.toStringWithSourceMap().map;
159
+
160
+ assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
161
+ assert.ok(mapWithoutOptions instanceof SourceMapGenerator, 'mapWithoutOptions instanceof SourceMapGenerator');
162
+ assert.ok(!('file' in mapWithoutOptions));
163
+ mapWithoutOptions._file = 'foo.js';
164
+ util.assertEqualMaps(assert, map.toJSON(), mapWithoutOptions.toJSON());
165
+
166
+ map = new SourceMapConsumer(map.toString());
167
+
168
+ var actual;
169
+
170
+ actual = map.originalPositionFor({
171
+ line: 1,
172
+ column: 4
173
+ });
174
+ assert.equal(actual.source, null);
175
+ assert.equal(actual.line, null);
176
+ assert.equal(actual.column, null);
177
+
178
+ actual = map.originalPositionFor({
179
+ line: 2,
180
+ column: 2
181
+ });
182
+ assert.equal(actual.source, 'a.js');
183
+ assert.equal(actual.line, 1);
184
+ assert.equal(actual.column, 0);
185
+ assert.equal(actual.name, 'originalCall');
186
+
187
+ actual = map.originalPositionFor({
188
+ line: 3,
189
+ column: 2
190
+ });
191
+ assert.equal(actual.source, 'b.js');
192
+ assert.equal(actual.line, 2);
193
+ assert.equal(actual.column, 0);
194
+
195
+ actual = map.originalPositionFor({
196
+ line: 3,
197
+ column: 16
198
+ });
199
+ assert.equal(actual.source, null);
200
+ assert.equal(actual.line, null);
201
+ assert.equal(actual.column, null);
202
+
203
+ actual = map.originalPositionFor({
204
+ line: 4,
205
+ column: 2
206
+ });
207
+ assert.equal(actual.source, null);
208
+ assert.equal(actual.line, null);
209
+ assert.equal(actual.column, null);
210
+ });
211
+
212
+ exports['test .fromStringWithSourceMap()'] = forEachNewline(function (assert, util, nl) {
213
+ var testCode = util.testGeneratedCode.replace(/\n/g, nl);
214
+ var node = SourceNode.fromStringWithSourceMap(
215
+ testCode,
216
+ new SourceMapConsumer(util.testMap));
217
+
218
+ var result = node.toStringWithSourceMap({
219
+ file: 'min.js'
220
+ });
221
+ var map = result.map;
222
+ var code = result.code;
223
+
224
+ assert.equal(code, testCode);
225
+ assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
226
+ map = map.toJSON();
227
+ assert.equal(map.version, util.testMap.version);
228
+ assert.equal(map.file, util.testMap.file);
229
+ assert.equal(map.mappings, util.testMap.mappings);
230
+ });
231
+
232
+ exports['test .fromStringWithSourceMap() empty map'] = forEachNewline(function (assert, util, nl) {
233
+ var node = SourceNode.fromStringWithSourceMap(
234
+ util.testGeneratedCode.replace(/\n/g, nl),
235
+ new SourceMapConsumer(util.emptyMap));
236
+ var result = node.toStringWithSourceMap({
237
+ file: 'min.js'
238
+ });
239
+ var map = result.map;
240
+ var code = result.code;
241
+
242
+ assert.equal(code, util.testGeneratedCode.replace(/\n/g, nl));
243
+ assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
244
+ map = map.toJSON();
245
+ assert.equal(map.version, util.emptyMap.version);
246
+ assert.equal(map.file, util.emptyMap.file);
247
+ assert.equal(map.mappings.length, util.emptyMap.mappings.length);
248
+ assert.equal(map.mappings, util.emptyMap.mappings);
249
+ });
250
+
251
+ exports['test .fromStringWithSourceMap() complex version'] = forEachNewline(function (assert, util, nl) {
252
+ var input = new SourceNode(null, null, null, [
253
+ "(function() {" + nl,
254
+ " var Test = {};" + nl,
255
+ " ", new SourceNode(1, 0, "a.js", "Test.A = { value: 1234 };" + nl),
256
+ " ", new SourceNode(2, 0, "a.js", "Test.A.x = 'xyz';"), nl,
257
+ "}());" + nl,
258
+ "/* Generated Source */"]);
259
+ input = input.toStringWithSourceMap({
260
+ file: 'foo.js'
261
+ });
262
+
263
+ var node = SourceNode.fromStringWithSourceMap(
264
+ input.code,
265
+ new SourceMapConsumer(input.map.toString()));
266
+
267
+ var result = node.toStringWithSourceMap({
268
+ file: 'foo.js'
269
+ });
270
+ var map = result.map;
271
+ var code = result.code;
272
+
273
+ assert.equal(code, input.code);
274
+ assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
275
+ map = map.toJSON();
276
+ var inputMap = input.map.toJSON();
277
+ util.assertEqualMaps(assert, map, inputMap);
278
+ });
279
+
280
+ exports['test .fromStringWithSourceMap() third argument'] = function (assert, util) {
281
+ // Assume the following directory structure:
282
+ //
283
+ // http://foo.org/
284
+ // bar.coffee
285
+ // app/
286
+ // coffee/
287
+ // foo.coffee
288
+ // coffeeBundle.js # Made from {foo,bar,baz}.coffee
289
+ // maps/
290
+ // coffeeBundle.js.map
291
+ // js/
292
+ // foo.js
293
+ // public/
294
+ // app.js # Made from {foo,coffeeBundle}.js
295
+ // app.js.map
296
+ //
297
+ // http://www.example.com/
298
+ // baz.coffee
299
+
300
+ var coffeeBundle = new SourceNode(1, 0, 'foo.coffee', 'foo(coffee);\n');
301
+ coffeeBundle.setSourceContent('foo.coffee', 'foo coffee');
302
+ coffeeBundle.add(new SourceNode(2, 0, '/bar.coffee', 'bar(coffee);\n'));
303
+ coffeeBundle.add(new SourceNode(3, 0, 'http://www.example.com/baz.coffee', 'baz(coffee);'));
304
+ coffeeBundle = coffeeBundle.toStringWithSourceMap({
305
+ file: 'foo.js',
306
+ sourceRoot: '..'
307
+ });
308
+
309
+ var foo = new SourceNode(1, 0, 'foo.js', 'foo(js);');
310
+
311
+ var test = function(relativePath, expectedSources) {
312
+ var app = new SourceNode();
313
+ app.add(SourceNode.fromStringWithSourceMap(
314
+ coffeeBundle.code,
315
+ new SourceMapConsumer(coffeeBundle.map.toString()),
316
+ relativePath));
317
+ app.add(foo);
318
+ var i = 0;
319
+ app.walk(function (chunk, loc) {
320
+ assert.equal(loc.source, expectedSources[i]);
321
+ i++;
322
+ });
323
+ app.walkSourceContents(function (sourceFile, sourceContent) {
324
+ assert.equal(sourceFile, expectedSources[0]);
325
+ assert.equal(sourceContent, 'foo coffee');
326
+ })
327
+ };
328
+
329
+ test('../coffee/maps', [
330
+ '../coffee/foo.coffee',
331
+ '/bar.coffee',
332
+ 'http://www.example.com/baz.coffee',
333
+ 'foo.js'
334
+ ]);
335
+
336
+ // If the third parameter is omitted or set to the current working
337
+ // directory we get incorrect source paths:
338
+
339
+ test(undefined, [
340
+ '../foo.coffee',
341
+ '/bar.coffee',
342
+ 'http://www.example.com/baz.coffee',
343
+ 'foo.js'
344
+ ]);
345
+
346
+ test('', [
347
+ '../foo.coffee',
348
+ '/bar.coffee',
349
+ 'http://www.example.com/baz.coffee',
350
+ 'foo.js'
351
+ ]);
352
+
353
+ test('.', [
354
+ '../foo.coffee',
355
+ '/bar.coffee',
356
+ 'http://www.example.com/baz.coffee',
357
+ 'foo.js'
358
+ ]);
359
+
360
+ test('./', [
361
+ '../foo.coffee',
362
+ '/bar.coffee',
363
+ 'http://www.example.com/baz.coffee',
364
+ 'foo.js'
365
+ ]);
366
+ };
367
+
368
+ exports['test .toStringWithSourceMap() merging duplicate mappings'] = forEachNewline(function (assert, util, nl) {
369
+ var input = new SourceNode(null, null, null, [
370
+ new SourceNode(1, 0, "a.js", "(function"),
371
+ new SourceNode(1, 0, "a.js", "() {" + nl),
372
+ " ",
373
+ new SourceNode(1, 0, "a.js", "var Test = "),
374
+ new SourceNode(1, 0, "b.js", "{};" + nl),
375
+ new SourceNode(2, 0, "b.js", "Test"),
376
+ new SourceNode(2, 0, "b.js", ".A", "A"),
377
+ new SourceNode(2, 20, "b.js", " = { value: ", "A"),
378
+ "1234",
379
+ new SourceNode(2, 40, "b.js", " };" + nl, "A"),
380
+ "}());" + nl,
381
+ "/* Generated Source */"
382
+ ]);
383
+ input = input.toStringWithSourceMap({
384
+ file: 'foo.js'
385
+ });
386
+
387
+ assert.equal(input.code, [
388
+ "(function() {",
389
+ " var Test = {};",
390
+ "Test.A = { value: 1234 };",
391
+ "}());",
392
+ "/* Generated Source */"
393
+ ].join(nl))
394
+
395
+ var correctMap = new SourceMapGenerator({
396
+ file: 'foo.js'
397
+ });
398
+ correctMap.addMapping({
399
+ generated: { line: 1, column: 0 },
400
+ source: 'a.js',
401
+ original: { line: 1, column: 0 }
402
+ });
403
+ // Here is no need for a empty mapping,
404
+ // because mappings ends at eol
405
+ correctMap.addMapping({
406
+ generated: { line: 2, column: 2 },
407
+ source: 'a.js',
408
+ original: { line: 1, column: 0 }
409
+ });
410
+ correctMap.addMapping({
411
+ generated: { line: 2, column: 13 },
412
+ source: 'b.js',
413
+ original: { line: 1, column: 0 }
414
+ });
415
+ correctMap.addMapping({
416
+ generated: { line: 3, column: 0 },
417
+ source: 'b.js',
418
+ original: { line: 2, column: 0 }
419
+ });
420
+ correctMap.addMapping({
421
+ generated: { line: 3, column: 4 },
422
+ source: 'b.js',
423
+ name: 'A',
424
+ original: { line: 2, column: 0 }
425
+ });
426
+ correctMap.addMapping({
427
+ generated: { line: 3, column: 6 },
428
+ source: 'b.js',
429
+ name: 'A',
430
+ original: { line: 2, column: 20 }
431
+ });
432
+ // This empty mapping is required,
433
+ // because there is a hole in the middle of the line
434
+ correctMap.addMapping({
435
+ generated: { line: 3, column: 18 }
436
+ });
437
+ correctMap.addMapping({
438
+ generated: { line: 3, column: 22 },
439
+ source: 'b.js',
440
+ name: 'A',
441
+ original: { line: 2, column: 40 }
442
+ });
443
+ // Here is no need for a empty mapping,
444
+ // because mappings ends at eol
445
+
446
+ var inputMap = input.map.toJSON();
447
+ correctMap = correctMap.toJSON();
448
+ util.assertEqualMaps(assert, inputMap, correctMap);
449
+ });
450
+
451
+ exports['test .toStringWithSourceMap() multi-line SourceNodes'] = forEachNewline(function (assert, util, nl) {
452
+ var input = new SourceNode(null, null, null, [
453
+ new SourceNode(1, 0, "a.js", "(function() {" + nl + "var nextLine = 1;" + nl + "anotherLine();" + nl),
454
+ new SourceNode(2, 2, "b.js", "Test.call(this, 123);" + nl),
455
+ new SourceNode(2, 2, "b.js", "this['stuff'] = 'v';" + nl),
456
+ new SourceNode(2, 2, "b.js", "anotherLine();" + nl),
457
+ "/*" + nl + "Generated" + nl + "Source" + nl + "*/" + nl,
458
+ new SourceNode(3, 4, "c.js", "anotherLine();" + nl),
459
+ "/*" + nl + "Generated" + nl + "Source" + nl + "*/"
460
+ ]);
461
+ input = input.toStringWithSourceMap({
462
+ file: 'foo.js'
463
+ });
464
+
465
+ assert.equal(input.code, [
466
+ "(function() {",
467
+ "var nextLine = 1;",
468
+ "anotherLine();",
469
+ "Test.call(this, 123);",
470
+ "this['stuff'] = 'v';",
471
+ "anotherLine();",
472
+ "/*",
473
+ "Generated",
474
+ "Source",
475
+ "*/",
476
+ "anotherLine();",
477
+ "/*",
478
+ "Generated",
479
+ "Source",
480
+ "*/"
481
+ ].join(nl));
482
+
483
+ var correctMap = new SourceMapGenerator({
484
+ file: 'foo.js'
485
+ });
486
+ correctMap.addMapping({
487
+ generated: { line: 1, column: 0 },
488
+ source: 'a.js',
489
+ original: { line: 1, column: 0 }
490
+ });
491
+ correctMap.addMapping({
492
+ generated: { line: 2, column: 0 },
493
+ source: 'a.js',
494
+ original: { line: 1, column: 0 }
495
+ });
496
+ correctMap.addMapping({
497
+ generated: { line: 3, column: 0 },
498
+ source: 'a.js',
499
+ original: { line: 1, column: 0 }
500
+ });
501
+ correctMap.addMapping({
502
+ generated: { line: 4, column: 0 },
503
+ source: 'b.js',
504
+ original: { line: 2, column: 2 }
505
+ });
506
+ correctMap.addMapping({
507
+ generated: { line: 5, column: 0 },
508
+ source: 'b.js',
509
+ original: { line: 2, column: 2 }
510
+ });
511
+ correctMap.addMapping({
512
+ generated: { line: 6, column: 0 },
513
+ source: 'b.js',
514
+ original: { line: 2, column: 2 }
515
+ });
516
+ correctMap.addMapping({
517
+ generated: { line: 11, column: 0 },
518
+ source: 'c.js',
519
+ original: { line: 3, column: 4 }
520
+ });
521
+
522
+ var inputMap = input.map.toJSON();
523
+ correctMap = correctMap.toJSON();
524
+ util.assertEqualMaps(assert, inputMap, correctMap);
525
+ });
526
+
527
+ exports['test .toStringWithSourceMap() with empty string'] = function (assert, util) {
528
+ var node = new SourceNode(1, 0, 'empty.js', '');
529
+ var result = node.toStringWithSourceMap();
530
+ assert.equal(result.code, '');
531
+ };
532
+
533
+ exports['test .toStringWithSourceMap() with consecutive newlines'] = forEachNewline(function (assert, util, nl) {
534
+ var input = new SourceNode(null, null, null, [
535
+ "/***/" + nl + nl,
536
+ new SourceNode(1, 0, "a.js", "'use strict';" + nl),
537
+ new SourceNode(2, 0, "a.js", "a();"),
538
+ ]);
539
+ input = input.toStringWithSourceMap({
540
+ file: 'foo.js'
541
+ });
542
+
543
+ assert.equal(input.code, [
544
+ "/***/",
545
+ "",
546
+ "'use strict';",
547
+ "a();",
548
+ ].join(nl));
549
+
550
+ var correctMap = new SourceMapGenerator({
551
+ file: 'foo.js'
552
+ });
553
+ correctMap.addMapping({
554
+ generated: { line: 3, column: 0 },
555
+ source: 'a.js',
556
+ original: { line: 1, column: 0 }
557
+ });
558
+ correctMap.addMapping({
559
+ generated: { line: 4, column: 0 },
560
+ source: 'a.js',
561
+ original: { line: 2, column: 0 }
562
+ });
563
+
564
+ var inputMap = input.map.toJSON();
565
+ correctMap = correctMap.toJSON();
566
+ util.assertEqualMaps(assert, inputMap, correctMap);
567
+ });
568
+
569
+ exports['test setSourceContent with toStringWithSourceMap'] = function (assert, util) {
570
+ var aNode = new SourceNode(1, 1, 'a.js', 'a');
571
+ aNode.setSourceContent('a.js', 'someContent');
572
+ var node = new SourceNode(null, null, null,
573
+ ['(function () {\n',
574
+ ' ', aNode,
575
+ ' ', new SourceNode(1, 1, 'b.js', 'b'),
576
+ '}());']);
577
+ node.setSourceContent('b.js', 'otherContent');
578
+ var map = node.toStringWithSourceMap({
579
+ file: 'foo.js'
580
+ }).map;
581
+
582
+ assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
583
+ map = new SourceMapConsumer(map.toString());
584
+
585
+ assert.equal(map.sources.length, 2);
586
+ assert.equal(map.sources[0], 'a.js');
587
+ assert.equal(map.sources[1], 'b.js');
588
+ assert.equal(map.sourcesContent.length, 2);
589
+ assert.equal(map.sourcesContent[0], 'someContent');
590
+ assert.equal(map.sourcesContent[1], 'otherContent');
591
+ };
592
+
593
+ exports['test walkSourceContents'] = function (assert, util) {
594
+ var aNode = new SourceNode(1, 1, 'a.js', 'a');
595
+ aNode.setSourceContent('a.js', 'someContent');
596
+ var node = new SourceNode(null, null, null,
597
+ ['(function () {\n',
598
+ ' ', aNode,
599
+ ' ', new SourceNode(1, 1, 'b.js', 'b'),
600
+ '}());']);
601
+ node.setSourceContent('b.js', 'otherContent');
602
+ var results = [];
603
+ node.walkSourceContents(function (sourceFile, sourceContent) {
604
+ results.push([sourceFile, sourceContent]);
605
+ });
606
+ assert.equal(results.length, 2);
607
+ assert.equal(results[0][0], 'a.js');
608
+ assert.equal(results[0][1], 'someContent');
609
+ assert.equal(results[1][0], 'b.js');
610
+ assert.equal(results[1][1], 'otherContent');
611
+ };
612
+ });