opal 0.10.0 → 0.11.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 (734) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +19 -0
  3. data/.gitmodules +1 -1
  4. data/.jshintrc +1 -2
  5. data/.rspec +1 -2
  6. data/.travis.yml +42 -20
  7. data/.yardopts +3 -1
  8. data/CHANGELOG.md +164 -1
  9. data/Gemfile +16 -9
  10. data/HACKING.md +4 -2
  11. data/README.md +11 -11
  12. data/Rakefile +1 -1
  13. data/appveyor.yml +29 -0
  14. data/benchmark/bm_constant_lookup_big.rb +799 -0
  15. data/benchmark/bm_constant_lookup_small.rb +59 -0
  16. data/benchmark/bm_module_definition_big.rb +400 -0
  17. data/benchmark/bm_module_definition_small.rb +30 -0
  18. data/benchmark-ips/bm_case.rb +33 -0
  19. data/benchmark-ips/bm_constants_lookup.rb +13 -0
  20. data/benchmark-ips/bm_is_number.rb +29 -0
  21. data/benchmark-ips/bm_symbol_to_proc.rb +19 -0
  22. data/bin +1 -0
  23. data/docs/compiled_ruby.md +16 -14
  24. data/docs/faq.md +3 -3
  25. data/docs/headless_chrome.md +105 -0
  26. data/docs/rspec.md +4 -20
  27. data/docs/unsupported_features.md +6 -4
  28. data/examples/rack/Gemfile +1 -0
  29. data/examples/rack/Gemfile.lock +11 -7
  30. data/examples/rack/app/application.rb +14 -3
  31. data/examples/rack/app/user.rb +2 -0
  32. data/examples/rack/config.ru +1 -1
  33. data/examples/rack/index.html.erb +1 -0
  34. data/examples/sinatra/Gemfile +1 -1
  35. data/examples/sinatra/Gemfile.lock +8 -11
  36. data/examples/sinatra/app/application.rb +2 -0
  37. data/{bin → exe}/opal +4 -2
  38. data/{bin → exe}/opal-repl +23 -1
  39. data/lib/opal/ast/builder.rb +13 -0
  40. data/lib/opal/ast/node.rb +30 -0
  41. data/lib/opal/builder.rb +82 -17
  42. data/lib/opal/builder_processors.rb +9 -7
  43. data/lib/opal/cli.rb +45 -59
  44. data/lib/opal/cli_options.rb +19 -12
  45. data/lib/opal/cli_runners/applescript.rb +3 -4
  46. data/lib/opal/cli_runners/chrome.js +135 -0
  47. data/lib/opal/cli_runners/chrome.rb +100 -0
  48. data/lib/opal/cli_runners/nashorn.rb +1 -1
  49. data/lib/opal/cli_runners/node_modules/.bin/chrome-remote-interface +1 -0
  50. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/LICENSE +18 -0
  51. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/README.md +843 -0
  52. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/bin/client.js +326 -0
  53. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/chrome-remote-interface.js +11 -0
  54. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/index.js +39 -0
  55. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/api.js +84 -0
  56. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/chrome.js +289 -0
  57. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/defaults.js +4 -0
  58. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/devtools.js +245 -0
  59. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/external-request.js +23 -0
  60. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/protocol.json +13303 -0
  61. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/websocket-wrapper.js +32 -0
  62. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/package.json +128 -0
  63. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/webpack.config.js +55 -0
  64. data/lib/opal/cli_runners/node_modules/commander/Readme.md +195 -0
  65. data/lib/opal/cli_runners/node_modules/commander/index.js +851 -0
  66. data/lib/opal/cli_runners/node_modules/commander/package.json +92 -0
  67. data/{stdlib/nodejs/node_modules/js-yaml/node_modules/argparse → lib/opal/cli_runners/node_modules/ultron}/LICENSE +7 -6
  68. data/lib/opal/cli_runners/node_modules/ultron/index.js +138 -0
  69. data/lib/opal/cli_runners/node_modules/ultron/package.json +112 -0
  70. data/{stdlib/nodejs/node_modules/js-yaml → lib/opal/cli_runners/node_modules/ws}/LICENSE +6 -6
  71. data/lib/opal/cli_runners/node_modules/ws/README.md +259 -0
  72. data/lib/opal/cli_runners/node_modules/ws/SECURITY.md +33 -0
  73. data/lib/opal/cli_runners/node_modules/ws/index.js +15 -0
  74. data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.fallback.js +56 -0
  75. data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.js +15 -0
  76. data/lib/opal/cli_runners/node_modules/ws/lib/ErrorCodes.js +28 -0
  77. data/lib/opal/cli_runners/node_modules/ws/lib/EventTarget.js +158 -0
  78. data/lib/opal/cli_runners/node_modules/ws/lib/Extensions.js +69 -0
  79. data/lib/opal/cli_runners/node_modules/ws/lib/PerMessageDeflate.js +339 -0
  80. data/lib/opal/cli_runners/node_modules/ws/lib/Receiver.js +520 -0
  81. data/lib/opal/cli_runners/node_modules/ws/lib/Sender.js +438 -0
  82. data/lib/opal/cli_runners/node_modules/ws/lib/Validation.fallback.js +9 -0
  83. data/lib/opal/cli_runners/node_modules/ws/lib/Validation.js +17 -0
  84. data/lib/opal/cli_runners/node_modules/ws/lib/WebSocket.js +705 -0
  85. data/lib/opal/cli_runners/node_modules/ws/lib/WebSocketServer.js +336 -0
  86. data/lib/opal/cli_runners/node_modules/ws/package.json +122 -0
  87. data/lib/opal/cli_runners/nodejs.rb +4 -2
  88. data/lib/opal/cli_runners/package.json +5 -0
  89. data/lib/opal/cli_runners/server.rb +1 -1
  90. data/lib/opal/cli_runners.rb +2 -1
  91. data/lib/opal/compiler.rb +136 -95
  92. data/lib/opal/config.rb +114 -36
  93. data/lib/opal/deprecations.rb +18 -0
  94. data/lib/opal/eof_content.rb +36 -0
  95. data/lib/opal/erb.rb +1 -0
  96. data/lib/opal/errors.rb +1 -0
  97. data/lib/opal/fragment.rb +1 -0
  98. data/lib/opal/nodes/arglist.rb +2 -1
  99. data/lib/opal/nodes/args/initialize_kwargs.rb +1 -0
  100. data/lib/opal/nodes/args/kwarg.rb +9 -7
  101. data/lib/opal/nodes/args/kwoptarg.rb +13 -8
  102. data/lib/opal/nodes/args/kwrestarg.rb +5 -5
  103. data/lib/opal/nodes/args/mlhsarg.rb +3 -2
  104. data/lib/opal/nodes/args/normarg.rb +6 -7
  105. data/lib/opal/nodes/args/optarg.rb +5 -7
  106. data/lib/opal/nodes/args/post_args.rb +6 -5
  107. data/lib/opal/nodes/args/post_kwargs.rb +1 -0
  108. data/lib/opal/nodes/args/restarg.rb +7 -7
  109. data/lib/opal/nodes/array.rb +1 -0
  110. data/lib/opal/nodes/base.rb +24 -3
  111. data/lib/opal/nodes/call.rb +168 -155
  112. data/lib/opal/nodes/call_special.rb +37 -214
  113. data/lib/opal/nodes/case.rb +36 -22
  114. data/lib/opal/nodes/class.rb +4 -3
  115. data/lib/opal/nodes/constants.rb +28 -48
  116. data/lib/opal/nodes/csend.rb +25 -0
  117. data/lib/opal/nodes/def.rb +57 -17
  118. data/lib/opal/nodes/defined.rb +170 -60
  119. data/lib/opal/nodes/definitions.rb +42 -133
  120. data/lib/opal/nodes/defs.rb +29 -0
  121. data/lib/opal/nodes/hash.rb +12 -35
  122. data/lib/opal/nodes/helpers.rb +31 -62
  123. data/lib/opal/nodes/if.rb +21 -32
  124. data/lib/opal/nodes/inline_args.rb +12 -13
  125. data/lib/opal/nodes/iter.rb +61 -36
  126. data/lib/opal/nodes/literal.rb +206 -114
  127. data/lib/opal/nodes/logic.rb +39 -57
  128. data/lib/opal/nodes/masgn.rb +20 -18
  129. data/lib/opal/nodes/module.rb +10 -11
  130. data/lib/opal/nodes/node_with_args.rb +15 -18
  131. data/lib/opal/nodes/rescue.rb +37 -70
  132. data/lib/opal/nodes/runtime_helpers.rb +8 -3
  133. data/lib/opal/nodes/scope.rb +10 -5
  134. data/lib/opal/nodes/singleton_class.rb +4 -3
  135. data/lib/opal/nodes/super.rb +112 -88
  136. data/lib/opal/nodes/top.rb +7 -2
  137. data/lib/opal/nodes/variables.rb +57 -35
  138. data/lib/opal/nodes/while.rb +11 -1
  139. data/lib/opal/nodes/yield.rb +1 -17
  140. data/lib/opal/nodes.rb +3 -1
  141. data/lib/opal/parser.rb +29 -766
  142. data/lib/opal/path_reader.rb +22 -5
  143. data/lib/opal/paths.rb +10 -4
  144. data/lib/opal/regexp_anchors.rb +1 -0
  145. data/lib/opal/rewriter.rb +64 -0
  146. data/lib/opal/rewriters/base.rb +63 -0
  147. data/lib/opal/rewriters/binary_operator_assignment.rb +141 -0
  148. data/lib/opal/rewriters/block_to_iter.rb +17 -0
  149. data/lib/opal/rewriters/break_finder.rb +34 -0
  150. data/lib/opal/rewriters/dot_js_syntax.rb +60 -0
  151. data/lib/opal/rewriters/explicit_writer_return.rb +58 -0
  152. data/lib/opal/rewriters/for_rewriter.rb +93 -0
  153. data/lib/opal/rewriters/hashes/key_duplicates_rewriter.rb +58 -0
  154. data/lib/opal/rewriters/js_reserved_words.rb +108 -0
  155. data/lib/opal/rewriters/logical_operator_assignment.rb +154 -0
  156. data/lib/opal/rewriters/opal_engine_check.rb +42 -0
  157. data/lib/opal/rewriters/rubyspec/filters_rewriter.rb +67 -0
  158. data/lib/opal/server.rb +4 -0
  159. data/lib/opal/simple_server.rb +101 -0
  160. data/lib/opal/source_map.rb +1 -1
  161. data/lib/opal/util.rb +6 -6
  162. data/lib/opal/version.rb +2 -1
  163. data/lib/opal.rb +7 -1
  164. data/lib/tilt/opal.rb +1 -0
  165. data/opal/README.md +1 -1
  166. data/opal/corelib/array.rb +184 -107
  167. data/opal/corelib/basic_object.rb +6 -6
  168. data/opal/corelib/boolean.rb +11 -3
  169. data/opal/corelib/class.rb +14 -11
  170. data/opal/corelib/comparable.rb +16 -0
  171. data/opal/corelib/complex.rb +5 -1
  172. data/opal/corelib/constants.rb +3 -3
  173. data/opal/corelib/enumerable.rb +176 -11
  174. data/opal/corelib/error.rb +35 -17
  175. data/opal/corelib/file.rb +114 -176
  176. data/opal/corelib/hash.rb +226 -13
  177. data/opal/corelib/helpers.rb +12 -15
  178. data/opal/corelib/io.rb +3 -2
  179. data/opal/corelib/kernel.rb +68 -32
  180. data/opal/corelib/marshal/read_buffer.rb +288 -150
  181. data/opal/corelib/marshal/write_buffer.rb +27 -2
  182. data/opal/corelib/method.rb +33 -13
  183. data/opal/corelib/module.rb +134 -82
  184. data/opal/corelib/nil.rb +11 -3
  185. data/opal/corelib/number.rb +220 -34
  186. data/opal/corelib/numeric.rb +3 -11
  187. data/opal/corelib/process.rb +44 -4
  188. data/opal/corelib/random/seedrandom.js.rb +15 -0
  189. data/opal/corelib/random.rb +117 -0
  190. data/opal/corelib/range.rb +147 -24
  191. data/opal/corelib/regexp.rb +82 -13
  192. data/opal/corelib/runtime.js +623 -397
  193. data/opal/corelib/string/encoding.rb +67 -31
  194. data/opal/corelib/string/inheritance.rb +1 -1
  195. data/opal/corelib/string.rb +40 -9
  196. data/opal/corelib/struct.rb +18 -3
  197. data/opal/corelib/time.rb +3 -3
  198. data/opal/corelib/variables.rb +1 -1
  199. data/opal/opal.rb +1 -0
  200. data/opal.gemspec +32 -29
  201. data/stdlib/base64.rb +4 -2
  202. data/stdlib/bigdecimal/bignumber.js.rb +1 -1
  203. data/stdlib/buffer/array.rb +4 -2
  204. data/stdlib/date.rb +64 -31
  205. data/stdlib/headless_chrome.rb +11 -0
  206. data/stdlib/json.rb +16 -4
  207. data/stdlib/nashorn/file.rb +15 -0
  208. data/stdlib/native.rb +21 -12
  209. data/stdlib/nodejs/dir.rb +1 -1
  210. data/stdlib/nodejs/file.rb +77 -23
  211. data/stdlib/nodejs/io.rb +30 -1
  212. data/stdlib/nodejs/{node_modules/js-yaml/dist/js-yaml.js → js-yaml-3-6-1.js} +815 -626
  213. data/stdlib/nodejs/kernel.rb +3 -1
  214. data/stdlib/nodejs/package.json +0 -1
  215. data/stdlib/nodejs/stacktrace.rb +179 -0
  216. data/stdlib/nodejs/yaml.rb +2 -1
  217. data/stdlib/opal/platform.rb +6 -14
  218. data/stdlib/opal-builder.rb +1 -0
  219. data/stdlib/opal-platform.rb +15 -0
  220. data/stdlib/pathname.rb +1 -1
  221. data/stdlib/rbconfig.rb +1 -1
  222. data/stdlib/securerandom.rb +1 -1
  223. data/stdlib/strscan.rb +15 -1
  224. data/stdlib/yaml.rb +1 -1
  225. data/tasks/benchmarking.rake +9 -0
  226. data/tasks/building.rake +24 -20
  227. data/tasks/linting.rake +24 -13
  228. data/tasks/testing/mspec_special_calls.rb +44 -15
  229. data/tasks/testing/opal_rspec_smoketest.Gemfile +6 -0
  230. data/tasks/testing.rake +351 -202
  231. metadata +135 -915
  232. data/lib/opal/cli_runners/phantom.js +0 -70
  233. data/lib/opal/cli_runners/phantomjs.rb +0 -28
  234. data/lib/opal/hike_path_finder.rb +0 -18
  235. data/lib/opal/nodes/for.rb +0 -48
  236. data/lib/opal/parser/grammar.rb +0 -6157
  237. data/lib/opal/parser/grammar.y +0 -2011
  238. data/lib/opal/parser/keywords.rb +0 -66
  239. data/lib/opal/parser/lexer.rb +0 -1352
  240. data/lib/opal/parser/parser_scope.rb +0 -28
  241. data/lib/opal/parser/sexp.rb +0 -90
  242. data/lib/opal/sprockets/environment.rb +0 -23
  243. data/lib/opal/sprockets/erb.rb +0 -23
  244. data/lib/opal/sprockets/path_reader.rb +0 -36
  245. data/lib/opal/sprockets/processor.rb +0 -145
  246. data/lib/opal/sprockets/server.rb +0 -133
  247. data/lib/opal/sprockets/source_map_header_patch.rb +0 -41
  248. data/lib/opal/sprockets/source_map_server.rb +0 -115
  249. data/lib/opal/sprockets.rb +0 -91
  250. data/spec/README.md +0 -10
  251. data/spec/filters/bugs/array.rb +0 -12
  252. data/spec/filters/bugs/basicobject.rb +0 -16
  253. data/spec/filters/bugs/bigdecimal.rb +0 -160
  254. data/spec/filters/bugs/class.rb +0 -10
  255. data/spec/filters/bugs/compiler_opal.rb +0 -5
  256. data/spec/filters/bugs/complex.rb +0 -3
  257. data/spec/filters/bugs/date.rb +0 -94
  258. data/spec/filters/bugs/enumerable.rb +0 -50
  259. data/spec/filters/bugs/enumerator.rb +0 -42
  260. data/spec/filters/bugs/exception.rb +0 -58
  261. data/spec/filters/bugs/float.rb +0 -33
  262. data/spec/filters/bugs/hash.rb +0 -11
  263. data/spec/filters/bugs/inheritance.rb +0 -5
  264. data/spec/filters/bugs/integer.rb +0 -28
  265. data/spec/filters/bugs/kernel.rb +0 -297
  266. data/spec/filters/bugs/language.rb +0 -275
  267. data/spec/filters/bugs/language_opal.rb +0 -88
  268. data/spec/filters/bugs/marshal.rb +0 -43
  269. data/spec/filters/bugs/method.rb +0 -84
  270. data/spec/filters/bugs/module.rb +0 -196
  271. data/spec/filters/bugs/numeric.rb +0 -127
  272. data/spec/filters/bugs/pathname.rb +0 -5
  273. data/spec/filters/bugs/proc.rb +0 -36
  274. data/spec/filters/bugs/range.rb +0 -144
  275. data/spec/filters/bugs/rational.rb +0 -4
  276. data/spec/filters/bugs/regexp.rb +0 -196
  277. data/spec/filters/bugs/set.rb +0 -42
  278. data/spec/filters/bugs/singleton.rb +0 -6
  279. data/spec/filters/bugs/string.rb +0 -101
  280. data/spec/filters/bugs/stringscanner.rb +0 -79
  281. data/spec/filters/bugs/struct.rb +0 -4
  282. data/spec/filters/bugs/time.rb +0 -29
  283. data/spec/filters/bugs/unboundmethod.rb +0 -27
  284. data/spec/filters/unsupported/array.rb +0 -163
  285. data/spec/filters/unsupported/basicobject.rb +0 -14
  286. data/spec/filters/unsupported/bignum.rb +0 -52
  287. data/spec/filters/unsupported/class.rb +0 -4
  288. data/spec/filters/unsupported/delegator.rb +0 -5
  289. data/spec/filters/unsupported/enumerable.rb +0 -11
  290. data/spec/filters/unsupported/enumerator.rb +0 -13
  291. data/spec/filters/unsupported/fixnum.rb +0 -14
  292. data/spec/filters/unsupported/float.rb +0 -43
  293. data/spec/filters/unsupported/freeze.rb +0 -53
  294. data/spec/filters/unsupported/hash.rb +0 -51
  295. data/spec/filters/unsupported/integer.rb +0 -3
  296. data/spec/filters/unsupported/kernel.rb +0 -31
  297. data/spec/filters/unsupported/language.rb +0 -17
  298. data/spec/filters/unsupported/marshal.rb +0 -46
  299. data/spec/filters/unsupported/matchdata.rb +0 -30
  300. data/spec/filters/unsupported/math.rb +0 -3
  301. data/spec/filters/unsupported/module.rb +0 -8
  302. data/spec/filters/unsupported/pathname.rb +0 -3
  303. data/spec/filters/unsupported/privacy.rb +0 -147
  304. data/spec/filters/unsupported/proc.rb +0 -3
  305. data/spec/filters/unsupported/regexp.rb +0 -59
  306. data/spec/filters/unsupported/set.rb +0 -4
  307. data/spec/filters/unsupported/singleton.rb +0 -6
  308. data/spec/filters/unsupported/string.rb +0 -537
  309. data/spec/filters/unsupported/struct.rb +0 -6
  310. data/spec/filters/unsupported/symbol.rb +0 -19
  311. data/spec/filters/unsupported/taint.rb +0 -15
  312. data/spec/filters/unsupported/thread.rb +0 -7
  313. data/spec/filters/unsupported/time.rb +0 -202
  314. data/spec/lib/builder_processors_spec.rb +0 -27
  315. data/spec/lib/builder_spec.rb +0 -72
  316. data/spec/lib/cli_runners/phantomjs_spec.rb +0 -39
  317. data/spec/lib/cli_spec.rb +0 -211
  318. data/spec/lib/compiler/call_spec.rb +0 -700
  319. data/spec/lib/compiler/pre_processed_conditionals_spec.rb +0 -87
  320. data/spec/lib/compiler_spec.rb +0 -285
  321. data/spec/lib/config_spec.rb +0 -13
  322. data/spec/lib/dependency_resolver_spec.rb +0 -40
  323. data/spec/lib/fixtures/complex_sprockets.js.rb.erb +0 -4
  324. data/spec/lib/fixtures/file_with_directives.js +0 -2
  325. data/spec/lib/fixtures/jst_file.js.jst +0 -1
  326. data/spec/lib/fixtures/no_requires.rb +0 -1
  327. data/spec/lib/fixtures/opal_file.rb +0 -2
  328. data/spec/lib/fixtures/require_tree_test.rb +0 -3
  329. data/spec/lib/fixtures/required_file.js +0 -1
  330. data/spec/lib/fixtures/required_tree_test/required_file1.rb +0 -1
  331. data/spec/lib/fixtures/required_tree_test/required_file2.rb +0 -1
  332. data/spec/lib/fixtures/requires.rb +0 -7
  333. data/spec/lib/fixtures/source_map/subfolder/other_file.rb +0 -1
  334. data/spec/lib/fixtures/source_map.rb +0 -1
  335. data/spec/lib/fixtures/sprockets_file.js.rb +0 -3
  336. data/spec/lib/fixtures/sprockets_require_tree_test.rb +0 -3
  337. data/spec/lib/hike_path_finder_spec.rb +0 -23
  338. data/spec/lib/lexer_spec.rb +0 -110
  339. data/spec/lib/parser/alias_spec.rb +0 -26
  340. data/spec/lib/parser/and_spec.rb +0 -13
  341. data/spec/lib/parser/aref_spec.rb +0 -10
  342. data/spec/lib/parser/attrasgn_spec.rb +0 -28
  343. data/spec/lib/parser/begin_spec.rb +0 -42
  344. data/spec/lib/parser/block_spec.rb +0 -12
  345. data/spec/lib/parser/break_spec.rb +0 -17
  346. data/spec/lib/parser/call_spec.rb +0 -201
  347. data/spec/lib/parser/class_spec.rb +0 -35
  348. data/spec/lib/parser/comments_spec.rb +0 -11
  349. data/spec/lib/parser/def_spec.rb +0 -109
  350. data/spec/lib/parser/if_spec.rb +0 -26
  351. data/spec/lib/parser/iter_spec.rb +0 -59
  352. data/spec/lib/parser/lambda_spec.rb +0 -219
  353. data/spec/lib/parser/literal_spec.rb +0 -118
  354. data/spec/lib/parser/masgn_spec.rb +0 -37
  355. data/spec/lib/parser/module_spec.rb +0 -27
  356. data/spec/lib/parser/not_spec.rb +0 -21
  357. data/spec/lib/parser/op_asgn1_spec.rb +0 -23
  358. data/spec/lib/parser/op_asgn2_spec.rb +0 -23
  359. data/spec/lib/parser/op_asgn_spec.rb +0 -17
  360. data/spec/lib/parser/or_spec.rb +0 -13
  361. data/spec/lib/parser/return_spec.rb +0 -22
  362. data/spec/lib/parser/sclass_spec.rb +0 -21
  363. data/spec/lib/parser/string_spec.rb +0 -286
  364. data/spec/lib/parser/super_spec.rb +0 -20
  365. data/spec/lib/parser/unary_spec.rb +0 -52
  366. data/spec/lib/parser/undef_spec.rb +0 -19
  367. data/spec/lib/parser/unless_spec.rb +0 -13
  368. data/spec/lib/parser/variables_spec.rb +0 -116
  369. data/spec/lib/parser/while_spec.rb +0 -15
  370. data/spec/lib/parser/yield_spec.rb +0 -20
  371. data/spec/lib/path_reader_spec.rb +0 -36
  372. data/spec/lib/paths_spec.rb +0 -18
  373. data/spec/lib/shared/path_finder_shared.rb +0 -19
  374. data/spec/lib/shared/path_reader_shared.rb +0 -31
  375. data/spec/lib/spec_helper.rb +0 -16
  376. data/spec/lib/sprockets/erb_spec.rb +0 -38
  377. data/spec/lib/sprockets/path_reader_spec.rb +0 -41
  378. data/spec/lib/sprockets/processor_spec.rb +0 -79
  379. data/spec/lib/sprockets/server_spec.rb +0 -102
  380. data/spec/lib/sprockets_spec.rb +0 -32
  381. data/spec/lib/tilt/opal_spec.rb +0 -37
  382. data/spec/mspec-opal/formatters.rb +0 -188
  383. data/spec/mspec-opal/runner.rb +0 -193
  384. data/spec/opal/compiler/irb_spec.rb +0 -44
  385. data/spec/opal/core/arity_spec.rb +0 -142
  386. data/spec/opal/core/array/intersection_spec.rb +0 -38
  387. data/spec/opal/core/array/minus_spec.rb +0 -38
  388. data/spec/opal/core/array/select_spec.rb +0 -14
  389. data/spec/opal/core/array/set_range_to_array_spec.rb +0 -7
  390. data/spec/opal/core/array/union_spec.rb +0 -38
  391. data/spec/opal/core/array/uniq_spec.rb +0 -49
  392. data/spec/opal/core/date_spec.rb +0 -177
  393. data/spec/opal/core/enumerable/all_break_spec.rb +0 -5
  394. data/spec/opal/core/enumerable/any_break_spec.rb +0 -5
  395. data/spec/opal/core/enumerable/collect_break_spec.rb +0 -13
  396. data/spec/opal/core/enumerable/count_break_spec.rb +0 -5
  397. data/spec/opal/core/enumerable/detect_break_spec.rb +0 -5
  398. data/spec/opal/core/enumerable/drop_while_break_spec.rb +0 -5
  399. data/spec/opal/core/enumerable/each_slice_break.rb +0 -6
  400. data/spec/opal/core/enumerable/each_with_index_break_spec.rb +0 -5
  401. data/spec/opal/core/enumerable/each_with_object_break_spec.rb +0 -5
  402. data/spec/opal/core/enumerable/find_all_break_spec.rb +0 -5
  403. data/spec/opal/core/enumerable/find_index_break_spec.rb +0 -5
  404. data/spec/opal/core/enumerable/grep_break_spec.rb +0 -5
  405. data/spec/opal/core/enumerable/max_break_spec.rb +0 -5
  406. data/spec/opal/core/enumerable/max_by_break_spec.rb +0 -5
  407. data/spec/opal/core/enumerable/min_break_spec.rb +0 -5
  408. data/spec/opal/core/enumerable/min_by_break_spec.rb +0 -5
  409. data/spec/opal/core/enumerable/none_break_spec.rb +0 -5
  410. data/spec/opal/core/enumerable/one_break_spec.rb +0 -5
  411. data/spec/opal/core/enumerable/reduce_break_spec.rb +0 -5
  412. data/spec/opal/core/enumerable/take_while_break_spec.rb +0 -5
  413. data/spec/opal/core/enumerator/with_index_spec.rb +0 -6
  414. data/spec/opal/core/exception_spec.rb +0 -20
  415. data/spec/opal/core/fixtures/class.rb +0 -124
  416. data/spec/opal/core/fixtures/class_variables.rb +0 -0
  417. data/spec/opal/core/fixtures/constants.rb +0 -33
  418. data/spec/opal/core/fixtures/require_tree_files/file 1.rb +0 -1
  419. data/spec/opal/core/fixtures/require_tree_files/file 2.rb +0 -1
  420. data/spec/opal/core/fixtures/require_tree_files/file 3.rb +0 -1
  421. data/spec/opal/core/fixtures/require_tree_files/file 4.rb +0 -1
  422. data/spec/opal/core/fixtures/require_tree_files/file 5.rb +0 -1
  423. data/spec/opal/core/fixtures/require_tree_files/nested/nested 1.rb +0 -1
  424. data/spec/opal/core/fixtures/require_tree_files/nested/nested 2.rb +0 -1
  425. data/spec/opal/core/fixtures/require_tree_files/other/other 1.rb +0 -1
  426. data/spec/opal/core/fixtures/require_tree_with_dot/file 1.rb +0 -1
  427. data/spec/opal/core/fixtures/require_tree_with_dot/file 2.rb +0 -1
  428. data/spec/opal/core/fixtures/require_tree_with_dot/file 3.rb +0 -1
  429. data/spec/opal/core/fixtures/require_tree_with_dot/index.rb +0 -3
  430. data/spec/opal/core/hash/has_value_spec.rb +0 -13
  431. data/spec/opal/core/hash/internals_spec.rb +0 -332
  432. data/spec/opal/core/helpers_spec.rb +0 -14
  433. data/spec/opal/core/kernel/Array_spec.rb +0 -10
  434. data/spec/opal/core/kernel/at_exit_spec.rb +0 -70
  435. data/spec/opal/core/kernel/block_given_spec.rb +0 -30
  436. data/spec/opal/core/kernel/class_spec.rb +0 -6
  437. data/spec/opal/core/kernel/define_singleton_method_spec.rb +0 -21
  438. data/spec/opal/core/kernel/equal_value_spec.rb +0 -12
  439. data/spec/opal/core/kernel/extend_spec.rb +0 -21
  440. data/spec/opal/core/kernel/format_spec.rb +0 -122
  441. data/spec/opal/core/kernel/freeze_spec.rb +0 -15
  442. data/spec/opal/core/kernel/instance_eval_spec.rb +0 -28
  443. data/spec/opal/core/kernel/instance_variable_defined_spec.rb +0 -15
  444. data/spec/opal/core/kernel/instance_variable_get_spec.rb +0 -14
  445. data/spec/opal/core/kernel/instance_variable_set_spec.rb +0 -10
  446. data/spec/opal/core/kernel/instance_variables_spec.rb +0 -110
  447. data/spec/opal/core/kernel/loop_spec.rb +0 -23
  448. data/spec/opal/core/kernel/match_spec.rb +0 -5
  449. data/spec/opal/core/kernel/method_spec.rb +0 -31
  450. data/spec/opal/core/kernel/methods_spec.rb +0 -25
  451. data/spec/opal/core/kernel/nil_spec.rb +0 -7
  452. data/spec/opal/core/kernel/p_spec.rb +0 -15
  453. data/spec/opal/core/kernel/printf_spec.rb +0 -11
  454. data/spec/opal/core/kernel/proc_spec.rb +0 -13
  455. data/spec/opal/core/kernel/raise_spec.rb +0 -13
  456. data/spec/opal/core/kernel/rand_spec.rb +0 -23
  457. data/spec/opal/core/kernel/require_tree_spec.rb +0 -18
  458. data/spec/opal/core/kernel/respond_to_spec.rb +0 -41
  459. data/spec/opal/core/kernel/send_spec.rb +0 -56
  460. data/spec/opal/core/kernel/sprintf_spec.rb +0 -5
  461. data/spec/opal/core/language/arguments/mlhs_arg_spec.rb +0 -19
  462. data/spec/opal/core/language/block_spec.rb +0 -538
  463. data/spec/opal/core/language/class_spec.rb +0 -55
  464. data/spec/opal/core/language/equal_spec.rb +0 -8
  465. data/spec/opal/core/language/fixtures/array.rb +0 -11
  466. data/spec/opal/core/language/fixtures/block.rb +0 -57
  467. data/spec/opal/core/language/fixtures/break.rb +0 -240
  468. data/spec/opal/core/language/fixtures/ensure.rb +0 -72
  469. data/spec/opal/core/language/fixtures/literal_lambda.rb +0 -7
  470. data/spec/opal/core/language/fixtures/metaclass.rb +0 -33
  471. data/spec/opal/core/language/fixtures/module.rb +0 -24
  472. data/spec/opal/core/language/fixtures/next.rb +0 -128
  473. data/spec/opal/core/language/fixtures/return.rb +0 -118
  474. data/spec/opal/core/language/fixtures/send.rb +0 -111
  475. data/spec/opal/core/language/fixtures/send_1.9.rb +0 -22
  476. data/spec/opal/core/language/fixtures/super.rb +0 -308
  477. data/spec/opal/core/language/fixtures/variables.rb +0 -58
  478. data/spec/opal/core/language/fixtures/yield.rb +0 -28
  479. data/spec/opal/core/language/heredoc_spec.rb +0 -42
  480. data/spec/opal/core/language/keyword_arguments_spec.rb +0 -11
  481. data/spec/opal/core/language/predefined_spec.rb +0 -138
  482. data/spec/opal/core/language/proc_spec.rb +0 -263
  483. data/spec/opal/core/language/regexp_spec.rb +0 -20
  484. data/spec/opal/core/language/rescue_spec.rb +0 -18
  485. data/spec/opal/core/language/send_spec.rb +0 -230
  486. data/spec/opal/core/language/string_spec.rb +0 -44
  487. data/spec/opal/core/language/ternary_operator_spec.rb +0 -20
  488. data/spec/opal/core/language/variables_spec.rb +0 -1366
  489. data/spec/opal/core/language/versions/array_1.9.rb +0 -39
  490. data/spec/opal/core/language/versions/block_1.9.rb +0 -0
  491. data/spec/opal/core/language/versions/break_1.9.rb +0 -0
  492. data/spec/opal/core/language/versions/case_1.9.rb +0 -20
  493. data/spec/opal/core/language/versions/def_2_0_spec.rb +0 -62
  494. data/spec/opal/core/language/versions/hash_1_9_spec.rb +0 -23
  495. data/spec/opal/core/language/versions/literal_lambda_1.9.rb +0 -143
  496. data/spec/opal/core/language/versions/not_1.9.rb +0 -22
  497. data/spec/opal/core/language/versions/send_1.9.rb +0 -241
  498. data/spec/opal/core/language/versions/symbol_1.9.rb +0 -15
  499. data/spec/opal/core/language/versions/variables_1.9.rb +0 -8
  500. data/spec/opal/core/language_spec.rb +0 -45
  501. data/spec/opal/core/marshal/dump_spec.rb +0 -53
  502. data/spec/opal/core/marshal/load_spec.rb +0 -7
  503. data/spec/opal/core/method/to_proc_spec.rb +0 -28
  504. data/spec/opal/core/module/alias_method_spec.rb +0 -28
  505. data/spec/opal/core/module/ancestors_spec.rb +0 -11
  506. data/spec/opal/core/module/append_features_spec.rb +0 -14
  507. data/spec/opal/core/module/attr_accessor_spec.rb +0 -26
  508. data/spec/opal/core/module/const_defined_spec.rb +0 -84
  509. data/spec/opal/core/module/const_get_spec.rb +0 -85
  510. data/spec/opal/core/module/const_missing_spec.rb +0 -17
  511. data/spec/opal/core/module/const_set_spec.rb +0 -64
  512. data/spec/opal/core/module/constants_spec.rb +0 -49
  513. data/spec/opal/core/module/fixtures/classes.rb +0 -444
  514. data/spec/opal/core/module/method_defined_spec.rb +0 -48
  515. data/spec/opal/core/module/method_lookup_spec.rb +0 -13
  516. data/spec/opal/core/module/module_function_spec.rb +0 -25
  517. data/spec/opal/core/module/name_spec.rb +0 -41
  518. data/spec/opal/core/module/public_method_defined_spec.rb +0 -18
  519. data/spec/opal/core/module/remove_const_spec.rb +0 -22
  520. data/spec/opal/core/module/undef_method_spec.rb +0 -66
  521. data/spec/opal/core/numeric/bit_and_spec.rb +0 -7
  522. data/spec/opal/core/numeric/bit_or_spec.rb +0 -8
  523. data/spec/opal/core/numeric/bit_xor_spec.rb +0 -6
  524. data/spec/opal/core/numeric/ceil_spec.rb +0 -8
  525. data/spec/opal/core/numeric/chr_spec.rb +0 -8
  526. data/spec/opal/core/numeric/comparison_spec.rb +0 -24
  527. data/spec/opal/core/numeric/complement_spec.rb +0 -8
  528. data/spec/opal/core/numeric/divide_spec.rb +0 -10
  529. data/spec/opal/core/numeric/eql_spec.rb +0 -9
  530. data/spec/opal/core/numeric/exponent_spec.rb +0 -33
  531. data/spec/opal/core/numeric/floor_spec.rb +0 -8
  532. data/spec/opal/core/numeric/gt_spec.rb +0 -11
  533. data/spec/opal/core/numeric/gte_spec.rb +0 -12
  534. data/spec/opal/core/numeric/integer_spec.rb +0 -9
  535. data/spec/opal/core/numeric/left_shift_spec.rb +0 -21
  536. data/spec/opal/core/numeric/lt_spec.rb +0 -11
  537. data/spec/opal/core/numeric/lte_spec.rb +0 -12
  538. data/spec/opal/core/numeric/minus_spec.rb +0 -8
  539. data/spec/opal/core/numeric/modulo_spec.rb +0 -19
  540. data/spec/opal/core/numeric/multiply_spec.rb +0 -9
  541. data/spec/opal/core/numeric/next_spec.rb +0 -9
  542. data/spec/opal/core/numeric/ord_spec.rb +0 -9
  543. data/spec/opal/core/numeric/plus_spec.rb +0 -8
  544. data/spec/opal/core/numeric/pred_spec.rb +0 -7
  545. data/spec/opal/core/numeric/right_shift_spec.rb +0 -25
  546. data/spec/opal/core/numeric/step_spec.rb +0 -11
  547. data/spec/opal/core/numeric/succ_spec.rb +0 -9
  548. data/spec/opal/core/numeric/times_spec.rb +0 -36
  549. data/spec/opal/core/numeric/to_f_spec.rb +0 -7
  550. data/spec/opal/core/numeric/to_i_spec.rb +0 -7
  551. data/spec/opal/core/numeric/to_json_spec.rb +0 -8
  552. data/spec/opal/core/numeric/to_s_spec.rb +0 -26
  553. data/spec/opal/core/numeric/uminus_spec.rb +0 -9
  554. data/spec/opal/core/numeric/upto_spec.rb +0 -19
  555. data/spec/opal/core/numeric/zero_spec.rb +0 -7
  556. data/spec/opal/core/object_id_spec.rb +0 -56
  557. data/spec/opal/core/proc/call_spec.rb +0 -21
  558. data/spec/opal/core/proc/element_reference_spec.rb +0 -21
  559. data/spec/opal/core/proc/proc_tricks_spec.rb +0 -7
  560. data/spec/opal/core/runtime/begin_spec.rb +0 -39
  561. data/spec/opal/core/runtime/block_send_spec.rb +0 -28
  562. data/spec/opal/core/runtime/block_spec.rb +0 -23
  563. data/spec/opal/core/runtime/bridged_classes_spec.rb +0 -123
  564. data/spec/opal/core/runtime/constants_spec.rb +0 -13
  565. data/spec/opal/core/runtime/donate_spec.rb +0 -53
  566. data/spec/opal/core/runtime/eval_spec.rb +0 -5
  567. data/spec/opal/core/runtime/main_methods_spec.rb +0 -27
  568. data/spec/opal/core/runtime/method_missing_spec.rb +0 -68
  569. data/spec/opal/core/runtime/method_spec.rb +0 -31
  570. data/spec/opal/core/runtime/operator_call_spec.rb +0 -13
  571. data/spec/opal/core/runtime/paren_spec.rb +0 -14
  572. data/spec/opal/core/runtime/rescue_spec.rb +0 -71
  573. data/spec/opal/core/runtime/return_spec.rb +0 -38
  574. data/spec/opal/core/runtime/send_spec.rb +0 -34
  575. data/spec/opal/core/runtime/singleton_class_spec.rb +0 -13
  576. data/spec/opal/core/runtime/super_spec.rb +0 -223
  577. data/spec/opal/core/runtime/truthy_spec.rb +0 -63
  578. data/spec/opal/core/runtime/variables_spec.rb +0 -20
  579. data/spec/opal/core/runtime_spec.rb +0 -58
  580. data/spec/opal/core/source_map_spec.rb +0 -49
  581. data/spec/opal/core/string_spec.rb +0 -32
  582. data/spec/opal/javascript_api_spec.rb +0 -16
  583. data/spec/opal/stdlib/erb/erb_spec.rb +0 -30
  584. data/spec/opal/stdlib/erb/inline_block.opalerb +0 -3
  585. data/spec/opal/stdlib/erb/quoted.opalerb +0 -1
  586. data/spec/opal/stdlib/erb/simple.opalerb +0 -1
  587. data/spec/opal/stdlib/js_spec.rb +0 -66
  588. data/spec/opal/stdlib/json/ext_spec.rb +0 -48
  589. data/spec/opal/stdlib/json/parse_spec.rb +0 -33
  590. data/spec/opal/stdlib/native/alias_native_spec.rb +0 -27
  591. data/spec/opal/stdlib/native/array_spec.rb +0 -11
  592. data/spec/opal/stdlib/native/each_spec.rb +0 -13
  593. data/spec/opal/stdlib/native/element_reference_spec.rb +0 -16
  594. data/spec/opal/stdlib/native/exposure_spec.rb +0 -33
  595. data/spec/opal/stdlib/native/ext_spec.rb +0 -19
  596. data/spec/opal/stdlib/native/hash_spec.rb +0 -51
  597. data/spec/opal/stdlib/native/initialize_spec.rb +0 -17
  598. data/spec/opal/stdlib/native/method_missing_spec.rb +0 -51
  599. data/spec/opal/stdlib/native/native_alias_spec.rb +0 -19
  600. data/spec/opal/stdlib/native/native_class_spec.rb +0 -18
  601. data/spec/opal/stdlib/native/native_module_spec.rb +0 -13
  602. data/spec/opal/stdlib/native/native_reader_spec.rb +0 -22
  603. data/spec/opal/stdlib/native/native_writer_spec.rb +0 -30
  604. data/spec/opal/stdlib/native/new_spec.rb +0 -92
  605. data/spec/opal/stdlib/native/struct_spec.rb +0 -12
  606. data/spec/opal/stdlib/promise/always_spec.rb +0 -49
  607. data/spec/opal/stdlib/promise/error_spec.rb +0 -15
  608. data/spec/opal/stdlib/promise/rescue_spec.rb +0 -53
  609. data/spec/opal/stdlib/promise/then_spec.rb +0 -79
  610. data/spec/opal/stdlib/promise/trace_spec.rb +0 -51
  611. data/spec/opal/stdlib/promise/value_spec.rb +0 -15
  612. data/spec/opal/stdlib/promise/when_spec.rb +0 -34
  613. data/spec/opal/stdlib/source_map_spec.rb +0 -8
  614. data/spec/opal/stdlib/strscan/scan_spec.rb +0 -11
  615. data/spec/opal/stdlib/template/paths_spec.rb +0 -10
  616. data/spec/opal/stdlib/thread/mutex_spec.rb +0 -40
  617. data/spec/opal/stdlib/thread/thread_queue_spec.rb +0 -32
  618. data/spec/opal/stdlib/thread/thread_spec.rb +0 -60
  619. data/spec/ruby_specs +0 -121
  620. data/spec/spec_helper.rb +0 -26
  621. data/spec/support/match_helpers.rb +0 -57
  622. data/spec/support/mspec_rspec_adapter.rb +0 -33
  623. data/spec/support/parser_helpers.rb +0 -37
  624. data/stdlib/nodejs/node_modules/js-yaml/HISTORY.md +0 -277
  625. data/stdlib/nodejs/node_modules/js-yaml/README.md +0 -288
  626. data/stdlib/nodejs/node_modules/js-yaml/bin/js-yaml.js +0 -140
  627. data/stdlib/nodejs/node_modules/js-yaml/bower.json +0 -23
  628. data/stdlib/nodejs/node_modules/js-yaml/dist/js-yaml.min.js +0 -3
  629. data/stdlib/nodejs/node_modules/js-yaml/examples/custom_types.js +0 -102
  630. data/stdlib/nodejs/node_modules/js-yaml/examples/custom_types.yml +0 -18
  631. data/stdlib/nodejs/node_modules/js-yaml/examples/dumper.js +0 -31
  632. data/stdlib/nodejs/node_modules/js-yaml/examples/dumper.json +0 -22
  633. data/stdlib/nodejs/node_modules/js-yaml/examples/sample_document.js +0 -18
  634. data/stdlib/nodejs/node_modules/js-yaml/examples/sample_document.yml +0 -197
  635. data/stdlib/nodejs/node_modules/js-yaml/index.js +0 -7
  636. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/common.js +0 -62
  637. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/dumper.js +0 -554
  638. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/exception.js +0 -25
  639. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/loader.js +0 -1581
  640. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/mark.js +0 -78
  641. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/core.js +0 -18
  642. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/default_full.js +0 -25
  643. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js +0 -28
  644. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js +0 -17
  645. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema/json.js +0 -25
  646. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/schema.js +0 -103
  647. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/binary.js +0 -133
  648. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/bool.js +0 -37
  649. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/float.js +0 -110
  650. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/int.js +0 -183
  651. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/function.js +0 -85
  652. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js +0 -84
  653. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js +0 -27
  654. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/map.js +0 -8
  655. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/merge.js +0 -12
  656. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/null.js +0 -36
  657. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/omap.js +0 -56
  658. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/pairs.js +0 -61
  659. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/seq.js +0 -8
  660. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/set.js +0 -33
  661. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/str.js +0 -8
  662. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type/timestamp.js +0 -98
  663. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml/type.js +0 -61
  664. data/stdlib/nodejs/node_modules/js-yaml/lib/js-yaml.js +0 -39
  665. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/HISTORY.md +0 -115
  666. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/README.md +0 -239
  667. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/arguments.js +0 -36
  668. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/choice.js +0 -22
  669. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/constants.js +0 -59
  670. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/help.js +0 -13
  671. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/nargs.js +0 -33
  672. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/parents.js +0 -28
  673. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/prefix_chars.js +0 -23
  674. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/sub_commands.js +0 -49
  675. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/sum.js +0 -35
  676. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/examples/testformatters.js +0 -270
  677. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/index.js +0 -1
  678. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/append/constant.js +0 -47
  679. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/append.js +0 -55
  680. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/count.js +0 -40
  681. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/help.js +0 -48
  682. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/constant.js +0 -43
  683. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/false.js +0 -27
  684. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store/true.js +0 -26
  685. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/store.js +0 -50
  686. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/subparsers.js +0 -148
  687. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action/version.js +0 -50
  688. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action.js +0 -146
  689. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/action_container.js +0 -481
  690. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argparse.js +0 -14
  691. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/error.js +0 -50
  692. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/exclusive.js +0 -54
  693. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument/group.js +0 -75
  694. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/argument_parser.js +0 -1168
  695. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/const.js +0 -18
  696. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/help/added_formatters.js +0 -88
  697. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/help/formatter.js +0 -798
  698. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/lib/namespace.js +0 -77
  699. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/LICENSE +0 -23
  700. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/README.md +0 -22
  701. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/package.json +0 -69
  702. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/underscore-min.js +0 -6
  703. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore/underscore.js +0 -1415
  704. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/.npmignore +0 -2
  705. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/.travis.yml +0 -8
  706. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/README.markdown +0 -825
  707. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/bower.json +0 -33
  708. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/component.json +0 -11
  709. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/foo.js +0 -10
  710. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/gulpfile.js +0 -26
  711. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/lib/underscore.string.js +0 -673
  712. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/libpeerconnection.log +0 -0
  713. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/node_modules/underscore.string/package.json +0 -107
  714. data/stdlib/nodejs/node_modules/js-yaml/node_modules/argparse/package.json +0 -62
  715. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/README.md +0 -73
  716. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/bin/esparse.js +0 -117
  717. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/bin/esvalidate.js +0 -177
  718. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/esprima.js +0 -3908
  719. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/package.json +0 -69
  720. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/compat.js +0 -239
  721. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/reflect.js +0 -422
  722. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/run.js +0 -66
  723. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/runner.js +0 -387
  724. data/stdlib/nodejs/node_modules/js-yaml/node_modules/esprima/test/test.js +0 -20238
  725. data/stdlib/nodejs/node_modules/js-yaml/package.json +0 -83
  726. data/stdlib/phantomjs.rb +0 -17
  727. data/tasks/testing/sprockets-phantomjs.js +0 -54
  728. data/test/nodejs/test_dir.rb +0 -17
  729. data/test/nodejs/test_file.rb +0 -30
  730. data/test/opal/test_keyword.rb +0 -590
  731. data/test/opal/unsupported_and_bugs.rb +0 -30
  732. /data/{CODE_OF_CONDUCT.md → CONDUCT.md} +0 -0
  733. /data/{bin → exe}/opal-build +0 -0
  734. /data/{bin → exe}/opal-mspec +0 -0
@@ -1,202 +0,0 @@
1
- opal_filter "Time" do
2
- fails "Time#+ accepts arguments that can be coerced into Rational"
3
- fails "Time#+ adds a negative Float"
4
- fails "Time#+ increments the time by the specified amount as rational numbers"
5
- fails "Time#+ maintains microseconds precision"
6
- fails "Time#+ maintains nanoseconds precision"
7
- fails "Time#+ maintains precision"
8
- fails "Time#+ maintains subseconds precision"
9
- fails "Time#+ returns a time with the same fixed offset as self"
10
- fails "Time#+ tracks microseconds"
11
- fails "Time#+ tracks nanoseconds"
12
- fails "Time#- accepts arguments that can be coerced into Rational"
13
- fails "Time#- maintains microseconds precision"
14
- fails "Time#- maintains nanoseconds precision"
15
- fails "Time#- maintains precision"
16
- fails "Time#- maintains subseconds precision"
17
- fails "Time#- returns a time with nanoseconds precision between two time objects"
18
- fails "Time#- returns a time with the same fixed offset as self"
19
- fails "Time#- tracks microseconds"
20
- fails "Time#- tracks nanoseconds"
21
- fails "Time#<=> returns -1 if the first argument is a fraction of a microsecond before the second argument"
22
- fails "Time#<=> returns -1 if the first argument is a point in time before the second argument (down to a microsecond)"
23
- fails "Time#<=> returns 0 if time is the same as other, including fractional microseconds"
24
- fails "Time#<=> returns 1 if the first argument is a fraction of a microsecond after the second argument"
25
- fails "Time#<=> returns 1 if the first argument is a point in time after the second argument (down to a microsecond)"
26
- fails "Time#day returns the day of the month (1..n) for a local Time"
27
- fails "Time#day returns the day of the month for a Time with a fixed offset"
28
- fails "Time#dst? dst? returns whether time is during daylight saving time"
29
- fails "Time#dup returns a subclass instance"
30
- fails "Time#eql? returns false if self and other have differing fractional microseconds"
31
- fails "Time#eql? returns false if self and other have differing numbers of microseconds"
32
- fails "Time#getgm returns a new time which is the utc representation of time"
33
- fails "Time#getlocal raises ArgumentError if the argument represents a value greater than or equal to 86400 seconds"
34
- fails "Time#getlocal raises ArgumentError if the argument represents a value less than or equal to -86400 seconds"
35
- fails "Time#getlocal raises ArgumentError if the String argument is not of the form (+|-)HH:MM"
36
- fails "Time#getlocal returns a new time which is the local representation of time"
37
- fails "Time#getlocal returns a new time with the correct utc_offset according to the set timezone"
38
- fails "Time#getlocal returns a Time with a UTC offset of the specified number of Rational seconds"
39
- fails "Time#getlocal returns a Time with a UTC offset specified as +HH:MM"
40
- fails "Time#getlocal returns a Time with a UTC offset specified as -HH:MM"
41
- fails "Time#getlocal returns a Time with UTC offset specified as an Integer number of seconds"
42
- fails "Time#getlocal with an argument that responds to #to_int coerces using #to_int"
43
- fails "Time#getlocal with an argument that responds to #to_r coerces using #to_r"
44
- fails "Time#getlocal with an argument that responds to #to_str coerces using #to_str"
45
- fails "Time#getutc returns a new time which is the utc representation of time"
46
- fails "Time#gmtime returns the utc representation of time"
47
- fails "Time#gmtoff given negative offset returns a negative offset"
48
- fails "Time#gmtoff given positive offset returns a positive offset"
49
- fails "Time#gmtoff returns offset as Rational"
50
- fails "Time#gmtoff returns the correct offset for Hawaii around daylight savings time change"
51
- fails "Time#gmtoff returns the correct offset for New Zealand around daylight savings time change"
52
- fails "Time#gmtoff returns the correct offset for US Eastern time zone around daylight savings time change"
53
- fails "Time#gmtoff returns the offset in seconds between the timezone of time and UTC"
54
- fails "Time#gmt_offset given negative offset returns a negative offset"
55
- fails "Time#gmt_offset given positive offset returns a positive offset"
56
- fails "Time#gmt_offset returns offset as Rational"
57
- fails "Time#gmt_offset returns the correct offset for Hawaii around daylight savings time change"
58
- fails "Time#gmt_offset returns the correct offset for New Zealand around daylight savings time change"
59
- fails "Time#gmt_offset returns the correct offset for US Eastern time zone around daylight savings time change"
60
- fails "Time#gmt_offset returns the offset in seconds between the timezone of time and UTC"
61
- fails "Time#hash returns a Fixnum"
62
- fails "Time#hour returns the hour of the day (0..23) for a local Time"
63
- fails "Time#hour returns the hour of the day for a Time with a fixed offset"
64
- fails "Time#isdst dst? returns whether time is during daylight saving time"
65
- fails "Time#localtime changes the timezone according to the set one"
66
- fails "Time#localtime converts self to local time, modifying the receiver"
67
- fails "Time#localtime converts time to the UTC offset specified as an Integer number of seconds"
68
- fails "Time#localtime raises ArgumentError if the argument represents a value greater than or equal to 86400 seconds"
69
- fails "Time#localtime raises ArgumentError if the argument represents a value less than or equal to -86400 seconds"
70
- fails "Time#localtime raises ArgumentError if the String argument is not of the form (+|-)HH:MM"
71
- fails "Time#localtime returns a Time with a UTC offset of the specified number of Rational seconds"
72
- fails "Time#localtime returns a Time with a UTC offset specified as +HH:MM"
73
- fails "Time#localtime returns a Time with a UTC offset specified as -HH:MM"
74
- fails "Time#localtime returns self"
75
- fails "Time#localtime with an argument that responds to #to_int coerces using #to_int"
76
- fails "Time#localtime with an argument that responds to #to_r coerces using #to_r"
77
- fails "Time#localtime with an argument that responds to #to_str coerces using #to_str"
78
- fails "Time#mday returns the day of the month (1..n) for a local Time"
79
- fails "Time#mday returns the day of the month for a Time with a fixed offset"
80
- fails "Time#min returns the minute of the hour (0..59) for a local Time"
81
- fails "Time#min returns the minute of the hour for a Time with a fixed offset"
82
- fails "Time#mon returns the four digit year for a Time with a fixed offset"
83
- fails "Time#mon returns the month of the year for a local Time"
84
- fails "Time#month returns the four digit year for a Time with a fixed offset"
85
- fails "Time#month returns the month of the year for a local Time"
86
- fails "Time#nsec returns 0 for a Time constructed with a whole number of seconds"
87
- fails "Time#nsec returns the nanoseconds part of a Time constructed with a Float number of seconds"
88
- fails "Time#nsec returns the nanoseconds part of a Time constructed with a Rational number of seconds"
89
- fails "Time#nsec returns the nanoseconds part of a Time constructed with an Float number of microseconds"
90
- fails "Time#nsec returns the nanoseconds part of a Time constructed with an Integer number of microseconds"
91
- fails "Time#nsec returns the nanoseconds part of a Time constructed with an Rational number of microseconds"
92
- fails "Time#strftime with %L formats the milliseconds of the second"
93
- fails "Time#strftime with %z formats a local time with negative UTC offset as '-HHMM'"
94
- fails "Time#strftime with %z formats a local time with positive UTC offset as '+HHMM'"
95
- fails "Time#strftime with %z formats a time with fixed negative offset as '-HHMM'"
96
- fails "Time#strftime with %z formats a time with fixed offset as '+/-HH:MM' with ':' specifier"
97
- fails "Time#strftime with %z formats a time with fixed offset as '+/-HH:MM:SS' with '::' specifier"
98
- fails "Time#strftime with %z formats a time with fixed positive offset as '+HHMM'"
99
- fails "Time#strftime with %z formats a UTC time offset as '+0000'"
100
- fails "Time#subsec returns 0 as a Fixnum for a Time with a whole number of seconds"
101
- fails "Time#subsec returns the fractional seconds as a Rational for a Time constructed with a Float number of seconds"
102
- fails "Time#subsec returns the fractional seconds as a Rational for a Time constructed with a Rational number of seconds"
103
- fails "Time#subsec returns the fractional seconds as a Rational for a Time constructed with an Float number of microseconds"
104
- fails "Time#subsec returns the fractional seconds as a Rational for a Time constructed with an Integer number of microseconds"
105
- fails "Time#subsec returns the fractional seconds as a Rational for a Time constructed with an Rational number of microseconds"
106
- fails "Time#to_a returns a 10 element array representing the deconstructed time"
107
- fails "Time#to_r returns a Rational even for a whole number of seconds"
108
- fails "Time#to_r returns the a Rational representing seconds and subseconds since the epoch"
109
- fails "Time#usec returns 0 for a Time constructed with an Rational number of microseconds < 1"
110
- fails "Time#usec returns the microseconds for time created by Time#local"
111
- fails "Time#usec returns the microseconds part of a Time constructed with a Rational number of seconds"
112
- fails "Time#usec returns the microseconds part of a Time constructed with an Float number of microseconds > 1"
113
- fails "Time#usec returns the microseconds part of a Time constructed with an Integer number of microseconds"
114
- fails "Time#usec returns the microseconds part of a Time constructed with an Rational number of microseconds > 1"
115
- fails "Time#utc returns the utc representation of time"
116
- fails "Time#utc_offset given negative offset returns a negative offset"
117
- fails "Time#utc_offset given positive offset returns a positive offset"
118
- fails "Time#utc_offset returns offset as Rational"
119
- fails "Time#utc_offset returns the correct offset for Hawaii around daylight savings time change"
120
- fails "Time#utc_offset returns the correct offset for New Zealand around daylight savings time change"
121
- fails "Time#utc_offset returns the correct offset for US Eastern time zone around daylight savings time change"
122
- fails "Time#utc_offset returns the offset in seconds between the timezone of time and UTC"
123
- fails "Time#wday returns an integer representing the day of the week, 0..6, with Sunday being 0"
124
- fails "Time#year returns the four digit year for a local Time as an Integer"
125
- fails "Time#year returns the four digit year for a Time with a fixed offset"
126
- fails "Time#zone Encoding.default_internal is set doesn't raise errors for a Time with a fixed offset"
127
- fails "Time#zone Encoding.default_internal is set returns the string with the default internal encoding"
128
- fails "Time#zone returns nil for a Time with a fixed offset"
129
- fails "Time#zone returns nil when getting the local time with a fixed offset"
130
- fails "Time#zone returns the correct timezone for a local time"
131
- fails "Time#zone returns the time zone used for time"
132
- fails "Time#zone returns UTC when called on a UTC time"
133
- fails "Time.at passed non-Time, non-Numeric with an argument that responds to #to_r coerces using #to_r"
134
- fails "Time.at passed Numeric returns a subclass instance on a Time subclass"
135
- fails "Time.at passed Time returns a subclass instance"
136
- fails "Time.at passed [Integer, Numeric] returns a Time object representing the given number of seconds and Float microseconds since 1970-01-01 00:00:00 UTC"
137
- fails "Time.at with a second argument that responds to #to_r coerces using #to_r"
138
- fails "Time.gm handles fractional microseconds as a Float"
139
- fails "Time.gm handles fractional microseconds as a Rational"
140
- fails "Time.gm handles fractional seconds as a Rational"
141
- fails "Time.gm handles microseconds"
142
- fails "Time.gm ignores fractional seconds if a passed fractional number of microseconds"
143
- fails "Time.gm ignores fractional seconds if a passed whole number of microseconds"
144
- fails "Time.gm returns subclass instances"
145
- fails "Time.local creates a time based on given C-style gmtime arguments, interpreted in the local time zone"
146
- fails "Time.local creates a time based on given values, interpreted in the local time zone"
147
- fails "Time.local creates the correct time just after dst change"
148
- fails "Time.local creates the correct time just before dst change"
149
- fails "Time.local handles fractional microseconds as a Float"
150
- fails "Time.local handles fractional microseconds as a Rational"
151
- fails "Time.local handles fractional seconds as a Rational"
152
- fails "Time.local handles microseconds"
153
- fails "Time.local ignores fractional seconds if a passed fractional number of microseconds"
154
- fails "Time.local ignores fractional seconds if a passed whole number of microseconds"
155
- fails "Time.local respects rare old timezones"
156
- fails "Time.local returns subclass instances"
157
- fails "Time.local timezone changes correctly adjusts the timezone change to 'CEST' on 'Europe/Amsterdam'"
158
- fails "Time.local timezone changes correctly adjusts the timezone change to 'EET' on 'Europe/Istanbul'"
159
- fails "Time.mktime creates a time based on given C-style gmtime arguments, interpreted in the local time zone"
160
- fails "Time.mktime creates a time based on given values, interpreted in the local time zone"
161
- fails "Time.mktime creates the correct time just after dst change"
162
- fails "Time.mktime creates the correct time just before dst change"
163
- fails "Time.mktime handles fractional microseconds as a Float"
164
- fails "Time.mktime handles fractional microseconds as a Rational"
165
- fails "Time.mktime handles fractional seconds as a Rational"
166
- fails "Time.mktime handles microseconds"
167
- fails "Time.mktime ignores fractional seconds if a passed fractional number of microseconds"
168
- fails "Time.mktime ignores fractional seconds if a passed whole number of microseconds"
169
- fails "Time.mktime respects rare old timezones"
170
- fails "Time.mktime returns subclass instances"
171
- fails "Time.mktime timezone changes correctly adjusts the timezone change to 'CEST' on 'Europe/Amsterdam'"
172
- fails "Time.mktime timezone changes correctly adjusts the timezone change to 'EET' on 'Europe/Istanbul'"
173
- fails "Time.new creates a subclass instance if called on a subclass"
174
- fails "Time.new creates a time based on given values, interpreted in the local time zone"
175
- fails "Time.new handles fractional seconds as a Rational"
176
- fails "Time.new respects rare old timezones"
177
- fails "Time.new returns subclass instances"
178
- fails "Time.new timezone changes correctly adjusts the timezone change to 'CEST' on 'Europe/Amsterdam'"
179
- fails "Time.new timezone changes correctly adjusts the timezone change to 'EET' on 'Europe/Istanbul'"
180
- fails "Time.new with a utc_offset argument adds one hour if the offset minute value is greater than 59"
181
- fails "Time.new with a utc_offset argument raises ArgumentError if the argument represents a value greater than or equal to 86400 seconds"
182
- fails "Time.new with a utc_offset argument raises ArgumentError if the argument represents a value less than or equal to -86400 seconds"
183
- fails "Time.new with a utc_offset argument raises ArgumentError if the hour value is greater than 23"
184
- fails "Time.new with a utc_offset argument raises ArgumentError if the String argument is not of the form (+|-)HH:MM"
185
- fails "Time.new with a utc_offset argument returns a local Time if the argument is nil"
186
- fails "Time.new with a utc_offset argument returns a non-UTC time"
187
- fails "Time.new with a utc_offset argument returns a Time with a UTC offset of the specified number of Integer seconds"
188
- fails "Time.new with a utc_offset argument returns a Time with a UTC offset of the specified number of Rational seconds"
189
- fails "Time.new with a utc_offset argument returns a Time with a UTC offset specified as +HH:MM"
190
- fails "Time.new with a utc_offset argument returns a Time with a UTC offset specified as -HH:MM"
191
- fails "Time.new with a utc_offset argument with an argument that responds to #to_int coerces using #to_int"
192
- fails "Time.new with a utc_offset argument with an argument that responds to #to_r coerces using #to_r"
193
- fails "Time.new with a utc_offset argument with an argument that responds to #to_str coerces using #to_str"
194
- fails "Time.now creates a subclass instance if called on a subclass"
195
- fails "Time.utc handles fractional microseconds as a Float"
196
- fails "Time.utc handles fractional microseconds as a Rational"
197
- fails "Time.utc handles fractional seconds as a Rational"
198
- fails "Time.utc handles microseconds"
199
- fails "Time.utc ignores fractional seconds if a passed fractional number of microseconds"
200
- fails "Time.utc ignores fractional seconds if a passed whole number of microseconds"
201
- fails "Time.utc returns subclass instances"
202
- end
@@ -1,27 +0,0 @@
1
- require 'lib/spec_helper'
2
- require 'opal/builder_processors'
3
-
4
- describe Opal::Builder::RubyProcessor do
5
- it 'compiles ruby to js' do
6
- processor = described_class.new('puts 5', '-e')
7
- expect(processor.to_s).to include('$puts(5)')
8
- end
9
-
10
- describe ':requirable option' do
11
- it 'is respected' do
12
- processor = described_class.new('puts 5', '-e', requirable: true)
13
- expect(processor.to_s).to include('Opal.modules[')
14
- end
15
-
16
- it 'defaults to "false"' do
17
- processor = described_class.new('puts 5', '-e')
18
- expect(processor.to_s).not_to include('Opal.modules[')
19
- end
20
- end
21
-
22
- it 'fills required_trees' do
23
- processor = described_class.new('require_tree "./pippo"', '-e')
24
- expect(processor.required_trees).to eq(['pippo'])
25
- end
26
- end
27
-
@@ -1,72 +0,0 @@
1
- require 'lib/spec_helper'
2
- require 'opal/builder'
3
- require 'lib/shared/path_reader_shared'
4
-
5
- describe Opal::Builder do
6
- subject(:builder) { described_class.new(options) }
7
- let(:options) { {} }
8
-
9
- it 'compiles opal' do
10
- expect(builder.build('opal').to_s).to match('(Opal);')
11
- end
12
-
13
- it 'respect #require_tree calls' do
14
- builder.append_paths(File.expand_path('..', __FILE__))
15
- expect(builder.build('fixtures/require_tree_test').to_s).to include('Opal.modules["fixtures/required_tree_test/required_file1"]')
16
- end
17
-
18
- describe ':stubs' do
19
- let(:options) { {stubs: ['foo']} }
20
-
21
- it 'compiles them as empty files' do
22
- source = 'require "foo"'
23
- expect(builder.default_processor).to receive('new').with(source, anything, anything).once.and_call_original
24
- expect(builder.default_processor).to receive('new').with('', anything, anything).once.and_call_original
25
-
26
- builder.build_str(source, 'bar.rb')
27
- end
28
- end
29
-
30
- describe ':prerequired' do
31
- let(:options) { {prerequired: ['foo']} }
32
-
33
- it 'compiles them as empty files' do
34
- source = 'require "foo"'
35
- builder.build_str(source, 'bar.rb')
36
- end
37
- end
38
-
39
- describe ':preload' do
40
- let(:options) { {preload: ['base64']} }
41
-
42
- it 'compiles them as empty files' do
43
- source = 'puts 5'
44
- expect(builder.default_processor).to receive('new').with(anything, 'base64', anything).once.and_call_original
45
- expect(builder.default_processor).to receive('new').with(source, anything, anything).once.and_call_original
46
-
47
- builder.build_str(source, 'bar.rb')
48
- end
49
- end
50
-
51
- describe 'dup' do
52
- it 'duplicates internal structures' do
53
- b2 = builder.dup
54
- b2.should_not equal(builder)
55
- [:stubs, :preload, :processors, :path_reader, :prerequired, :compiler_options, :processed].each do |m|
56
- b2.send(m).should_not equal(builder.send(m))
57
- end
58
- end
59
- end
60
-
61
- describe 'requiring a native .js file' do
62
- it 'can be required without specifying extension' do
63
- builder.build_str('require "corelib/runtime"', 'foo')
64
- expect(builder.to_s).to start_with('(function(undefined)')
65
- end
66
-
67
- it 'can be required specifying extension' do
68
- builder.build_str('require "corelib/runtime.js"', 'foo')
69
- expect(builder.to_s).to start_with('(function(undefined)')
70
- end
71
- end
72
- end
@@ -1,39 +0,0 @@
1
- require 'lib/spec_helper'
2
- require 'opal/cli_runners/phantomjs'
3
- require 'stringio'
4
-
5
- describe Opal::CliRunners::Phantomjs do
6
- # FIXME: Unfotunately there are some issues on jruby and 1.9.3, probably
7
- # related to IO.pipe and process spawning in general.
8
- before { pending if RUBY_PLATFORM == 'java' or RUBY_VERSION == '1.9.3' }
9
-
10
- it 'accepts arguments' do
11
- expect(output_of(%{
12
- var ARGV = JSON.parse(callPhantom(['argv']));
13
- callPhantom(['stdout', JSON.stringify(ARGV)]);
14
- callPhantom(['exit', 0]);
15
- }, ['foo', 'bar'])).to eq('["foo","bar"]')
16
- end
17
-
18
- it 'sets env' do
19
- ENV['FOO'] = 'BAR'
20
- expect(output_of(%{
21
- var ENV = JSON.parse(callPhantom(['env']));
22
- callPhantom(['stdout', JSON.stringify(ENV)]);
23
- callPhantom(['exit', 0]);
24
- }, [])).to include(%{"FOO":"BAR"})
25
- end
26
-
27
-
28
- private
29
-
30
- def output_of(*args)
31
- read, write = IO.pipe
32
- runner = described_class.new(output: write)
33
-
34
- runner.run(*args)
35
- write.close
36
-
37
- return read.read
38
- end
39
- end
data/spec/lib/cli_spec.rb DELETED
@@ -1,211 +0,0 @@
1
- require 'lib/spec_helper'
2
- require 'opal/cli'
3
- require 'stringio'
4
-
5
- describe Opal::CLI do
6
- let(:fake_stdout) { StringIO.new }
7
- let(:file) { File.expand_path('../fixtures/opal_file.rb', __FILE__) }
8
- let(:options) { {} }
9
- subject(:cli) { described_class.new(options) }
10
-
11
- context 'with a file' do
12
- let(:options) { {:file => File.open(file)} }
13
-
14
- it 'runs the file' do
15
- expect_output_of{ subject.run }.to eq("hi from opal!\n")
16
- end
17
-
18
- context 'with lib_only: true' do
19
- let(:options) { super().merge lib_only: true }
20
-
21
- it 'raises ArgumentError' do
22
- expect{subject.run}.to raise_error(ArgumentError)
23
- end
24
- end
25
- end
26
-
27
- describe ':evals option' do
28
- context 'without evals and paths' do
29
- it 'raises ArgumentError' do
30
- expect { subject.run }.to raise_error(ArgumentError)
31
- end
32
-
33
- context 'with lib_only: true' do
34
- let(:options) { super().merge lib_only: true }
35
-
36
- it 'does not raise an error' do
37
- expect{subject.run}.not_to raise_error
38
- end
39
- end
40
- end
41
-
42
- context 'with one eval' do
43
- let(:options) { {:evals => ['puts "hello"']} }
44
-
45
- it 'executes the code' do
46
- expect_output_of{ subject.run }.to eq("hello\n")
47
- end
48
-
49
- context 'with lib_only: true' do
50
- let(:options) { super().merge lib_only: true }
51
-
52
- it 'raises ArgumentError' do
53
- expect{subject.run}.to raise_error(ArgumentError)
54
- end
55
- end
56
- end
57
-
58
- context 'with many evals' do
59
- let(:options) { {:evals => ['puts "hello"', 'puts "ciao"']} }
60
-
61
- it 'executes the code' do
62
- expect_output_of{ subject.run }.to eq("hello\nciao\n")
63
- end
64
- end
65
- end
66
-
67
- describe ':no_exit option' do
68
- context 'when false' do
69
- let(:options) { {no_exit: false, compile: true, evals: ['']} }
70
- it 'appends a Kernel#exit at the end of the source' do
71
- expect_output_of{ subject.run }.to include(".$exit()")
72
- end
73
- end
74
-
75
- context 'when true' do
76
- let(:options) { {no_exit: true, compile: true, evals: ['']} }
77
- it 'appends a Kernel#exit at the end of the source' do
78
- expect_output_of{ subject.run }.not_to include(".$exit();")
79
- end
80
- end
81
- end
82
-
83
- describe ':lib_only option' do
84
- context 'when false' do
85
- let(:options) { {lib_only: false, compile: true, evals: [''], skip_opal_require: true, no_exit: true} }
86
- it 'appends an empty code block at the end of the source' do
87
- expect_output_of{ subject.run }.to include("function(Opal)")
88
- end
89
- end
90
-
91
- context 'when true' do
92
- let(:options) { {lib_only: true, compile: true, skip_opal_require: true, no_exit: true} }
93
-
94
- it 'does not append code block at the end of the source' do
95
- expect_output_of{ subject.run }.to eq("\n")
96
- end
97
- end
98
- end
99
-
100
- describe ':requires options' do
101
- context 'with an absolute path' do
102
- let(:options) { {:requires => [file], :evals => ['']} }
103
- it 'requires the file' do
104
- expect_output_of{ subject.run }.to eq("hi from opal!\n")
105
- end
106
- end
107
-
108
- context 'with a path relative to a load path' do
109
- let(:dir) { File.dirname(file) }
110
- let(:filename) { File.basename(file) }
111
- let(:options) { {:load_paths => [dir], :requires => [filename], :evals => ['']} }
112
- it 'requires the file' do
113
- expect_output_of{ subject.run }.to eq("hi from opal!\n")
114
- end
115
- end
116
- end
117
-
118
- describe ':gems options' do
119
- context 'with a Gem name' do
120
- let(:dir) { File.dirname(file) }
121
- let(:filename) { File.basename(file) }
122
- let(:gem_name) { 'mspec' }
123
- let(:options) { {:gems => [gem_name], :evals => ['']} }
124
-
125
- it "adds the gem's lib paths to Opal.path" do
126
- builder = cli.build
127
-
128
- spec = Gem::Specification.find_by_name(gem_name)
129
- spec.require_paths.each do |require_path|
130
- require_path = File.join(spec.gem_dir, require_path)
131
- expect(builder.path_reader.send(:file_finder).paths).to include(require_path)
132
- end
133
- end
134
- end
135
- end
136
-
137
- describe ':stubs options' do
138
- context 'with a stubbed file' do
139
- let(:dir) { File.dirname(file) }
140
- let(:filename) { File.basename(file) }
141
- let(:stub_name) { 'an_unparsable_lib' }
142
- let(:options) { {:stubs => [stub_name], :evals => ["require #{stub_name.inspect}"]} }
143
-
144
- it "adds the gem's lib paths to Opal.path" do
145
- expect_output_of{ subject.run }.to eq('')
146
- end
147
- end
148
- end
149
-
150
- describe ':verbose option' do
151
- let(:options) { {:verbose => true, :evals => ['']} }
152
-
153
- it 'sets the verbose flag (currently unused)' do
154
- expect(cli.verbose).to eq(true)
155
- end
156
- end
157
-
158
- describe ':compile option' do
159
- let(:options) { {:compile => true, :evals => ['puts 2342']} }
160
-
161
- it 'outputs the compiled javascript' do
162
- expect_output_of{ subject.run }.to include(".$puts(2342)")
163
- expect_output_of{ subject.run }.not_to include("2342\n")
164
- end
165
- end
166
-
167
- describe ':load_paths options' do
168
- let(:dir) { File.dirname(file) }
169
- let(:filename) { File.basename(file) }
170
- let(:options) { {:load_paths => [dir], :requires => [filename], :evals => ['']} }
171
- it 'requires files' do
172
- expect_output_of{ subject.run }.to eq("hi from opal!\n")
173
- end
174
- end
175
-
176
- describe ':sexp option' do
177
- let(:options) { {evals: ['puts 4'], sexp: true} }
178
- it 'prints syntax expressions for the given code' do
179
- expect_output_of{ subject.run }.to eq("(:call, nil, :puts, (:arglist, (:int, 4)))\n")
180
- end
181
- end
182
-
183
- describe ':map option' do
184
- let(:options) { {:map => true, :evals => ['foo']} }
185
-
186
- it 'sets the verbose flag (currently unused)' do
187
- expect_output_of{ subject.run }.to include(%{"version"=>3})
188
- end
189
- end
190
-
191
-
192
-
193
-
194
-
195
- private
196
-
197
- def expect_output_of
198
- @output, _result = output_and_result_of { yield }
199
- expect(@output)
200
- end
201
-
202
- def output_and_result_of
203
- stdout = described_class.stdout
204
- described_class.stdout = fake_stdout
205
- result = yield
206
- output = fake_stdout.tap(&:rewind).read
207
- return output, result
208
- ensure
209
- described_class.stdout = stdout
210
- end
211
- end