opal 1.6.1 → 1.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/build.yml +17 -0
- data/CHANGELOG.md +35 -1
- data/Gemfile +1 -0
- data/HACKING.md +47 -26
- data/benchmark/benchmarks +415 -103
- data/benchmark/bm_call_overhead.yml +28 -0
- data/benchmark/run.rb +61 -40
- data/docs/cdp_common.json +3364 -0
- data/docs/cdp_common.md +18 -0
- data/docs/{headless_chrome.md → headless_browsers.md} +31 -12
- data/lib/opal/ast/builder.rb +1 -1
- data/lib/opal/builder.rb +6 -1
- data/lib/opal/builder_processors.rb +5 -3
- data/lib/opal/cache.rb +1 -7
- data/lib/opal/cli_options.rb +72 -58
- data/lib/opal/cli_runners/chrome.rb +47 -9
- data/lib/opal/cli_runners/chrome_cdp_interface.rb +238 -112
- data/lib/opal/cli_runners/compiler.rb +146 -13
- data/lib/opal/cli_runners/deno.rb +32 -0
- data/lib/opal/cli_runners/firefox.rb +350 -0
- data/lib/opal/cli_runners/firefox_cdp_interface.rb +212 -0
- data/lib/opal/cli_runners/node_modules/.bin/chrome-remote-interface.cmd +17 -0
- data/lib/opal/cli_runners/node_modules/.bin/chrome-remote-interface.ps1 +28 -0
- data/lib/opal/cli_runners/node_modules/.package-lock.json +41 -0
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/LICENSE +1 -1
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/README.md +322 -182
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/bin/client.js +99 -114
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/chrome-remote-interface.js +1 -11
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/index.js +16 -11
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/api.js +41 -33
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/chrome.js +224 -214
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/devtools.js +71 -191
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/external-request.js +26 -6
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/protocol.json +20788 -9049
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/websocket-wrapper.js +10 -3
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/package.json +59 -123
- data/lib/opal/cli_runners/node_modules/chrome-remote-interface/webpack.config.js +25 -32
- data/lib/opal/cli_runners/node_modules/commander/History.md +298 -0
- data/lib/opal/cli_runners/node_modules/commander/LICENSE +22 -0
- data/lib/opal/cli_runners/node_modules/commander/Readme.md +217 -61
- data/lib/opal/cli_runners/node_modules/commander/index.js +431 -145
- data/lib/opal/cli_runners/node_modules/commander/package.json +16 -79
- data/lib/opal/cli_runners/node_modules/ws/README.md +334 -98
- data/lib/opal/cli_runners/node_modules/ws/browser.js +8 -0
- data/lib/opal/cli_runners/node_modules/ws/index.js +5 -10
- data/lib/opal/cli_runners/node_modules/ws/lib/buffer-util.js +129 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/constants.js +10 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/event-target.js +184 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/extension.js +223 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/limiter.js +55 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/permessage-deflate.js +518 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/receiver.js +607 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/sender.js +409 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/stream.js +180 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/validation.js +104 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/websocket-server.js +447 -0
- data/lib/opal/cli_runners/node_modules/ws/lib/websocket.js +1195 -0
- data/lib/opal/cli_runners/node_modules/ws/package.json +40 -106
- data/lib/opal/cli_runners/package-lock.json +62 -0
- data/lib/opal/cli_runners/package.json +1 -1
- data/lib/opal/cli_runners.rb +26 -4
- data/lib/opal/nodes/args/prepare_post_args.rb +2 -2
- data/lib/opal/nodes/def.rb +8 -8
- data/lib/opal/nodes/iter.rb +12 -12
- data/lib/opal/nodes/logic.rb +1 -1
- data/lib/opal/nodes/masgn.rb +2 -2
- data/lib/opal/parser/with_ruby_lexer.rb +1 -1
- data/lib/opal/paths.rb +14 -0
- data/lib/opal/rewriter.rb +2 -0
- data/lib/opal/rewriters/forward_args.rb +52 -4
- data/lib/opal/rewriters/targeted_patches.rb +94 -0
- data/lib/opal/version.rb +1 -1
- data/opal/corelib/basic_object.rb +1 -1
- data/opal/corelib/boolean.rb +2 -2
- data/opal/corelib/class.rb +11 -0
- data/opal/corelib/constants.rb +3 -3
- data/opal/corelib/enumerable.rb +4 -0
- data/opal/corelib/enumerator.rb +1 -1
- data/opal/corelib/hash.rb +2 -2
- data/opal/corelib/helpers.rb +1 -1
- data/opal/corelib/kernel.rb +3 -3
- data/opal/corelib/method.rb +1 -1
- data/opal/corelib/module.rb +29 -8
- data/opal/corelib/proc.rb +7 -5
- data/opal/corelib/runtime.js +141 -78
- data/opal/corelib/set.rb +252 -0
- data/opal/corelib/string.rb +2 -1
- data/opal/corelib/time.rb +2 -2
- data/opal/opal.rb +1 -0
- data/opal.gemspec +1 -0
- data/spec/filters/bugs/array.rb +22 -13
- data/spec/filters/bugs/base64.rb +5 -5
- data/spec/filters/bugs/basicobject.rb +16 -8
- data/spec/filters/bugs/bigdecimal.rb +161 -160
- data/spec/filters/bugs/binding.rb +10 -10
- data/spec/filters/bugs/class.rb +8 -8
- data/spec/filters/bugs/complex.rb +2 -1
- data/spec/filters/bugs/date.rb +79 -81
- data/spec/filters/bugs/datetime.rb +29 -29
- data/spec/filters/bugs/delegate.rb +1 -3
- data/spec/filters/bugs/encoding.rb +69 -69
- data/spec/filters/bugs/enumerable.rb +22 -20
- data/spec/filters/bugs/enumerator.rb +88 -85
- data/spec/filters/bugs/exception.rb +46 -40
- data/spec/filters/bugs/file.rb +32 -32
- data/spec/filters/bugs/float.rb +26 -21
- data/spec/filters/bugs/freeze.rb +88 -0
- data/spec/filters/bugs/hash.rb +39 -38
- data/spec/filters/bugs/integer.rb +57 -44
- data/spec/filters/bugs/io.rb +1 -1
- data/spec/filters/bugs/kernel.rb +349 -269
- data/spec/filters/bugs/language.rb +220 -188
- data/spec/filters/bugs/main.rb +5 -3
- data/spec/filters/bugs/marshal.rb +38 -38
- data/spec/filters/bugs/math.rb +2 -1
- data/spec/filters/bugs/method.rb +73 -62
- data/spec/filters/bugs/module.rb +163 -143
- data/spec/filters/bugs/numeric.rb +6 -6
- data/spec/filters/bugs/objectspace.rb +16 -16
- data/spec/filters/bugs/openstruct.rb +1 -1
- data/spec/filters/bugs/pack_unpack.rb +51 -51
- data/spec/filters/bugs/pathname.rb +7 -7
- data/spec/filters/bugs/proc.rb +63 -63
- data/spec/filters/bugs/random.rb +7 -6
- data/spec/filters/bugs/range.rb +12 -9
- data/spec/filters/bugs/rational.rb +8 -7
- data/spec/filters/bugs/regexp.rb +49 -48
- data/spec/filters/bugs/ruby-32.rb +56 -0
- data/spec/filters/bugs/set.rb +30 -30
- data/spec/filters/bugs/singleton.rb +4 -4
- data/spec/filters/bugs/string.rb +187 -99
- data/spec/filters/bugs/stringio.rb +7 -0
- data/spec/filters/bugs/stringscanner.rb +68 -68
- data/spec/filters/bugs/struct.rb +11 -9
- data/spec/filters/bugs/symbol.rb +1 -1
- data/spec/filters/bugs/time.rb +78 -63
- data/spec/filters/bugs/trace_point.rb +4 -4
- data/spec/filters/bugs/unboundmethod.rb +32 -17
- data/spec/filters/bugs/warnings.rb +8 -12
- data/spec/filters/unsupported/array.rb +24 -107
- data/spec/filters/unsupported/basicobject.rb +12 -12
- data/spec/filters/unsupported/bignum.rb +27 -52
- data/spec/filters/unsupported/class.rb +1 -2
- data/spec/filters/unsupported/delegator.rb +3 -3
- data/spec/filters/unsupported/enumerable.rb +2 -9
- data/spec/filters/unsupported/enumerator.rb +2 -11
- data/spec/filters/unsupported/file.rb +1 -1
- data/spec/filters/unsupported/float.rb +28 -47
- data/spec/filters/unsupported/hash.rb +8 -14
- data/spec/filters/unsupported/integer.rb +75 -91
- data/spec/filters/unsupported/kernel.rb +17 -35
- data/spec/filters/unsupported/language.rb +11 -19
- data/spec/filters/unsupported/marshal.rb +22 -41
- data/spec/filters/unsupported/matchdata.rb +28 -52
- data/spec/filters/unsupported/math.rb +1 -1
- data/spec/filters/unsupported/privacy.rb +229 -285
- data/spec/filters/unsupported/range.rb +1 -5
- data/spec/filters/unsupported/regexp.rb +40 -66
- data/spec/filters/unsupported/set.rb +2 -2
- data/spec/filters/unsupported/singleton.rb +4 -4
- data/spec/filters/unsupported/string.rb +305 -508
- data/spec/filters/unsupported/struct.rb +3 -4
- data/spec/filters/unsupported/symbol.rb +15 -18
- data/spec/filters/unsupported/thread.rb +1 -7
- data/spec/filters/unsupported/time.rb +159 -202
- data/spec/filters/unsupported/usage_of_files.rb +170 -259
- data/spec/lib/builder_spec.rb +4 -4
- data/spec/lib/rewriters/forward_args_spec.rb +32 -12
- data/spec/mspec-opal/runner.rb +2 -0
- data/spec/ruby_specs +4 -0
- data/stdlib/deno/base.rb +28 -0
- data/stdlib/deno/file.rb +340 -0
- data/stdlib/{headless_chrome.rb → headless_browser/base.rb} +1 -1
- data/stdlib/headless_browser/file.rb +15 -0
- data/stdlib/headless_browser.rb +4 -0
- data/stdlib/native.rb +1 -1
- data/stdlib/nodejs/file.rb +5 -0
- data/stdlib/opal/platform.rb +8 -6
- data/stdlib/opal-platform.rb +14 -8
- data/stdlib/set.rb +1 -258
- data/tasks/benchmarking.rake +62 -19
- data/tasks/performance.rake +1 -1
- data/tasks/testing.rake +5 -3
- data/test/nodejs/test_file.rb +29 -10
- data/test/opal/http_server.rb +28 -11
- data/test/opal/unsupported_and_bugs.rb +2 -1
- metadata +89 -50
- data/lib/opal/cli_runners/node_modules/ultron/LICENSE +0 -22
- data/lib/opal/cli_runners/node_modules/ultron/index.js +0 -138
- data/lib/opal/cli_runners/node_modules/ultron/package.json +0 -112
- data/lib/opal/cli_runners/node_modules/ws/SECURITY.md +0 -33
- data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.fallback.js +0 -56
- data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.js +0 -15
- data/lib/opal/cli_runners/node_modules/ws/lib/ErrorCodes.js +0 -28
- data/lib/opal/cli_runners/node_modules/ws/lib/EventTarget.js +0 -158
- data/lib/opal/cli_runners/node_modules/ws/lib/Extensions.js +0 -69
- data/lib/opal/cli_runners/node_modules/ws/lib/PerMessageDeflate.js +0 -339
- data/lib/opal/cli_runners/node_modules/ws/lib/Receiver.js +0 -520
- data/lib/opal/cli_runners/node_modules/ws/lib/Sender.js +0 -438
- data/lib/opal/cli_runners/node_modules/ws/lib/Validation.fallback.js +0 -9
- data/lib/opal/cli_runners/node_modules/ws/lib/Validation.js +0 -17
- data/lib/opal/cli_runners/node_modules/ws/lib/WebSocket.js +0 -705
- data/lib/opal/cli_runners/node_modules/ws/lib/WebSocketServer.js +0 -336
- data/spec/filters/bugs/boolean.rb +0 -3
- data/spec/filters/bugs/matrix.rb +0 -3
- data/spec/filters/unsupported/fixnum.rb +0 -15
- data/spec/filters/unsupported/freeze.rb +0 -102
- data/spec/filters/unsupported/pathname.rb +0 -4
- data/spec/filters/unsupported/proc.rb +0 -4
- data/spec/filters/unsupported/random.rb +0 -5
- data/spec/filters/unsupported/taint.rb +0 -162
@@ -1,105 +1,89 @@
|
|
1
1
|
# NOTE: run bin/format-filters after changing this file
|
2
2
|
opal_unsupported_filter "Integer" do
|
3
|
-
fails "Integer#% bignum returns the modulus obtained from dividing self by the given argument" # Expected 0 to
|
3
|
+
fails "Integer#% bignum returns the modulus obtained from dividing self by the given argument" # Expected 0 == 18446744073709552000 to be truthy but was false
|
4
4
|
fails "Integer#& bignum raises a TypeError when passed a Float" # Expected TypeError but no exception was raised (0 was returned)
|
5
|
-
fails "Integer#& bignum returns self bitwise AND other when both operands are negative" # Expected 0 to
|
6
|
-
fails "Integer#& bignum returns self bitwise AND other when one operand is negative" # Expected 0 to
|
7
|
-
fails "Integer#& bignum returns self bitwise AND other" # Expected 0 to
|
8
|
-
fails "Integer#& fixnum returns self bitwise AND a bignum" # Expected 0 to
|
9
|
-
fails "Integer#& fixnum returns self bitwise AND other" #
|
10
|
-
fails "Integer#* bignum returns self multiplied by the given Integer" # Expected 8.507059173023462e+37 to equal 8.507059173023463e+37
|
5
|
+
fails "Integer#& bignum returns self bitwise AND other when both operands are negative" # Expected 0 == -23058430092136940000 to be truthy but was false
|
6
|
+
fails "Integer#& bignum returns self bitwise AND other when one operand is negative" # Expected 0 == 36893488147419103000 to be truthy but was false
|
7
|
+
fails "Integer#& bignum returns self bitwise AND other" # Expected 0 == 1 to be truthy but was false
|
8
|
+
fails "Integer#& fixnum returns self bitwise AND a bignum" # Expected 0 == 18446744073709552000 to be truthy but was false
|
9
|
+
fails "Integer#& fixnum returns self bitwise AND other" # Expected 0 == 65535 to be truthy but was false
|
11
10
|
fails "Integer#** fixnum can raise -1 to a bignum safely" # Expected 1 to have same value and type as -1
|
12
|
-
fails "Integer#- bignum returns self minus the given Integer" # Expected 0 to
|
11
|
+
fails "Integer#- bignum returns self minus the given Integer" # Expected 0 == 272 to be truthy but was false
|
13
12
|
fails "Integer#/ bignum raises a ZeroDivisionError if other is zero and not a Float" # Expected ZeroDivisionError but no exception was raised (Infinity was returned)
|
14
|
-
fails "Integer#/ bignum returns self divided by other" # Expected 10000000000 to
|
15
|
-
fails "Integer#< bignum returns true if self is less than the given argument" # Expected false to
|
16
|
-
fails "Integer#<< (with n << m) bignum calls #to_int to convert the argument to an Integer" # Expected 0
|
17
|
-
fails "Integer#<< (with n << m) bignum returns n shifted left m bits when n < 0, m > 0" # Expected 0
|
18
|
-
fails "Integer#<< (with n << m) bignum returns n shifted left m bits when n > 0, m > 0" # Expected 0
|
19
|
-
fails "Integer#<< (with n << m) bignum returns n shifted right m bits when n < 0, m < 0" # Expected 0 to
|
20
|
-
fails "Integer#<< (with n << m) bignum returns n shifted right m bits when n > 0, m < 0" # Expected 0 to
|
21
|
-
fails "Integer#<< (with n << m) bignum returns n when n < 0, m == 0" # Expected 0 to
|
22
|
-
fails "Integer#<< (with n << m) bignum returns n when n > 0, m == 0" # Expected 0 to
|
23
|
-
fails "Integer#<< (with n << m) fixnum returns 0 when m < 0 and m is a Bignum" # Expected 3 to
|
24
|
-
fails "Integer
|
25
|
-
fails "Integer
|
26
|
-
fails "Integer
|
27
|
-
fails "Integer#<=> bignum returns
|
28
|
-
fails "Integer#<=> bignum returns 1 when self is
|
29
|
-
fails "Integer#<=> bignum returns 1 when self is negative and other is
|
30
|
-
fails "Integer#<=> bignum with a Bignum when other is
|
31
|
-
fails "Integer#<=> bignum with a Bignum when other is
|
32
|
-
fails "Integer#<=> bignum with
|
33
|
-
fails "Integer#<=> bignum with a Bignum when other is positive returns 1 when other is smaller" # Expected 0 to equal 1
|
34
|
-
fails "Integer#<=> bignum with an Object returns -1 if the coerced value is larger" # Expected 0 to equal -1
|
13
|
+
fails "Integer#/ bignum returns self divided by other" # Expected 10000000000 == 9999999999 to be truthy but was false
|
14
|
+
fails "Integer#< bignum returns true if self is less than the given argument" # Expected false == true to be truthy but was false
|
15
|
+
fails "Integer#<< (with n << m) bignum calls #to_int to convert the argument to an Integer" # Expected 0 == 2.3611832414348226e+21 to be truthy but was false
|
16
|
+
fails "Integer#<< (with n << m) bignum returns n shifted left m bits when n < 0, m > 0" # Expected 0 == -7.555786372591432e+22 to be truthy but was false
|
17
|
+
fails "Integer#<< (with n << m) bignum returns n shifted left m bits when n > 0, m > 0" # Expected 0 == 2.3611832414348226e+21 to be truthy but was false
|
18
|
+
fails "Integer#<< (with n << m) bignum returns n shifted right m bits when n < 0, m < 0" # Expected 0 == -36893488147419103000 to be truthy but was false
|
19
|
+
fails "Integer#<< (with n << m) bignum returns n shifted right m bits when n > 0, m < 0" # Expected 0 == 73786976294838210000 to be truthy but was false
|
20
|
+
fails "Integer#<< (with n << m) bignum returns n when n < 0, m == 0" # Expected 0 == -147573952589676410000 to be truthy but was false
|
21
|
+
fails "Integer#<< (with n << m) bignum returns n when n > 0, m == 0" # Expected 0 == 147573952589676410000 to be truthy but was false
|
22
|
+
fails "Integer#<< (with n << m) fixnum returns 0 when m < 0 and m is a Bignum" # Expected 3 == 0 to be truthy but was false
|
23
|
+
fails "Integer#<= bignum returns false if compares with near float" # Expected true == false to be truthy but was false
|
24
|
+
fails "Integer#<=> bignum returns -1 when self is -Infinity and other is negative" # Expected 0 == -1 to be truthy but was false
|
25
|
+
fails "Integer#<=> bignum returns 1 when self is Infinity and other is a Bignum" # Expected 0 == 1 to be truthy but was false
|
26
|
+
fails "Integer#<=> bignum returns 1 when self is negative and other is -Infinity" # Expected 0 == 1 to be truthy but was false
|
27
|
+
fails "Integer#<=> bignum with a Bignum when other is negative returns -1 when self is negative and other is larger" # Expected 0 == -1 to be truthy but was false
|
28
|
+
fails "Integer#<=> bignum with a Bignum when other is negative returns 1 when self is negative and other is smaller" # Expected 0 == 1 to be truthy but was false
|
29
|
+
fails "Integer#<=> bignum with a Bignum when other is positive returns -1 when self is positive and other is larger" # Expected 0 == -1 to be truthy but was false
|
30
|
+
fails "Integer#<=> bignum with a Bignum when other is positive returns 1 when other is smaller" # Expected 0 == 1 to be truthy but was false
|
31
|
+
fails "Integer#<=> bignum with an Object returns -1 if the coerced value is larger" # Expected 0 == -1 to be truthy but was false
|
35
32
|
fails "Integer#<=> bignum with an Object returns nil if #coerce does not return an Array" # Expected 0 to be nil
|
36
|
-
fails "Integer#== bignum returns the result of 'other == self' as a boolean" # Expected "woot" to
|
37
|
-
fails "Integer#== bignum returns true if self has the same value as the given argument" # Expected true to
|
38
|
-
fails "Integer#=== bignum returns the result of 'other == self' as a boolean" # Expected "woot" to
|
39
|
-
fails "Integer#=== bignum returns true if self has the same value as the given argument" # Expected true to
|
40
|
-
fails "Integer#> bignum returns true if self is greater than the given argument" # Expected false to
|
41
|
-
fails "Integer#>= bignum returns true if self is greater than or equal to other" # Expected true to
|
42
|
-
fails "Integer#>> (with n >> m) bignum calls #to_int to convert the argument to an Integer" # Expected 0 to
|
43
|
-
fails "Integer#>> (with n >> m) bignum respects twos complement signed shifting for very large values" # Expected 0
|
44
|
-
fails "Integer#>> (with n >> m) bignum respects twos complement signed shifting" # Expected 101376 to
|
45
|
-
fails "Integer#>> (with n >> m) bignum returns n shifted left m bits when n < 0, m < 0" # Expected 0
|
46
|
-
fails "Integer#>> (with n >> m) bignum returns n shifted left m bits when n > 0, m < 0" # Expected 0 to
|
47
|
-
fails "Integer#>> (with n >> m) bignum returns n shifted right m bits when n < 0, m > 0" # Expected 0 to
|
48
|
-
fails "Integer#>> (with n >> m) bignum returns n shifted right m bits when n > 0, m > 0" # Expected 0 to
|
49
|
-
fails "Integer#>> (with n >> m) bignum returns n when n < 0, m == 0" # Expected 0 to
|
50
|
-
fails "Integer#>> (with n >> m) bignum returns n when n > 0, m == 0" # Expected 0 to
|
51
|
-
fails "Integer
|
52
|
-
fails "Integer
|
53
|
-
fails "Integer#>> (with n >> m) fixnum returns an Bignum == fixnum_min * 2 when fixnum_min >> -1 and n < 0" # NameError: uninitialized constant Bignum
|
54
|
-
fails "Integer#[] bignum returns the nth bit in the binary representation of self" # Expected 0 to equal 1
|
55
|
-
fails "Integer#[] bignum tries to convert the given argument to an Integer using #to_int" # Expected 0 to equal 1
|
33
|
+
fails "Integer#== bignum returns the result of 'other == self' as a boolean" # Expected "woot" == true to be truthy but was false
|
34
|
+
fails "Integer#== bignum returns true if self has the same value as the given argument" # Expected true == false to be truthy but was false
|
35
|
+
fails "Integer#=== bignum returns the result of 'other == self' as a boolean" # Expected "woot" == true to be truthy but was false
|
36
|
+
fails "Integer#=== bignum returns true if self has the same value as the given argument" # Expected true == false to be truthy but was false
|
37
|
+
fails "Integer#> bignum returns true if self is greater than the given argument" # Expected false == true to be truthy but was false
|
38
|
+
fails "Integer#>= bignum returns true if self is greater than or equal to other" # Expected true == false to be truthy but was false
|
39
|
+
fails "Integer#>> (with n >> m) bignum calls #to_int to convert the argument to an Integer" # Expected 0 == 36893488147419103000 to be truthy but was false
|
40
|
+
fails "Integer#>> (with n >> m) bignum respects twos complement signed shifting for very large values" # Expected 0 == 2.2204460502842888e+66 to be truthy but was false
|
41
|
+
fails "Integer#>> (with n >> m) bignum respects twos complement signed shifting" # Expected 101376 == -2621440001220703000 to be truthy but was false
|
42
|
+
fails "Integer#>> (with n >> m) bignum returns n shifted left m bits when n < 0, m < 0" # Expected 0 == -1.1805916207174113e+21 to be truthy but was false
|
43
|
+
fails "Integer#>> (with n >> m) bignum returns n shifted left m bits when n > 0, m < 0" # Expected 0 == 590295810358705700000 to be truthy but was false
|
44
|
+
fails "Integer#>> (with n >> m) bignum returns n shifted right m bits when n < 0, m > 0" # Expected 0 == -36893488147419103000 to be truthy but was false
|
45
|
+
fails "Integer#>> (with n >> m) bignum returns n shifted right m bits when n > 0, m > 0" # Expected 0 == 73786976294838210000 to be truthy but was false
|
46
|
+
fails "Integer#>> (with n >> m) bignum returns n when n < 0, m == 0" # Expected 0 == -147573952589676410000 to be truthy but was false
|
47
|
+
fails "Integer#>> (with n >> m) bignum returns n when n > 0, m == 0" # Expected 0 == 147573952589676410000 to be truthy but was false
|
48
|
+
fails "Integer#[] bignum returns the nth bit in the binary representation of self" # Expected 0 == 1 to be truthy but was false
|
49
|
+
fails "Integer#[] bignum tries to convert the given argument to an Integer using #to_int" # Expected 0 == 1 to be truthy but was false
|
56
50
|
fails "Integer#^ bignum raises a TypeError when passed a Float" # Expected TypeError but no exception was raised (14 was returned)
|
57
|
-
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when all bits are 1 and other value is negative" # Expected -1
|
58
|
-
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when both operands are negative" # Expected 0 to
|
59
|
-
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when one operand is negative" # Expected 0 to
|
60
|
-
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other" # Expected 2 to
|
61
|
-
fails "Integer#^ fixnum returns self bitwise EXCLUSIVE OR a bignum" # Expected -1 to
|
51
|
+
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when all bits are 1 and other value is negative" # Expected -1 == -9.903520314283042e+27 to be truthy but was false
|
52
|
+
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when both operands are negative" # Expected 0 == 55340232221128655000 to be truthy but was false
|
53
|
+
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other when one operand is negative" # Expected 0 == -55340232221128655000 to be truthy but was false
|
54
|
+
fails "Integer#^ bignum returns self bitwise EXCLUSIVE OR other" # Expected 2 == 18446744073709552000 to be truthy but was false
|
55
|
+
fails "Integer#^ fixnum returns self bitwise EXCLUSIVE OR a bignum" # Expected -1 == -18446744073709552000 to be truthy but was false
|
62
56
|
fails "Integer#bit_length bignum returns the position of the leftmost 0 bit of a negative number" # NoMethodError: undefined method `bit_length` for -Infinity:Float
|
63
|
-
fails "Integer#bit_length bignum returns the position of the leftmost bit of a positive number" # Expected 1 to
|
64
|
-
fails "Integer#coerce bignum
|
65
|
-
fails "Integer#
|
66
|
-
fails "Integer#
|
67
|
-
fails "Integer#div bignum
|
68
|
-
fails "Integer#
|
69
|
-
fails "Integer#
|
70
|
-
fails "Integer#divmod bignum
|
71
|
-
fails "Integer#divmod bignum
|
72
|
-
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a
|
73
|
-
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a
|
74
|
-
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a > 0, b < 0 and a < |b|" # Expected [-1, 0] to equal [-1, -1]
|
75
|
-
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a > 0, b < 0 and a > |b|" # Expected [-1, 0] to equal [-2, -9223372036854776000]
|
57
|
+
fails "Integer#bit_length bignum returns the position of the leftmost bit of a positive number" # Expected 1 == 1000 to be truthy but was false
|
58
|
+
fails "Integer#coerce bignum raises a TypeError when not passed a Fixnum or Bignum" # Expected TypeError but got: ArgumentError (invalid value for Float(): "test")
|
59
|
+
fails "Integer#div bignum calls #coerce and #div if argument responds to #coerce" # Mock 'x' expected to receive div(#<MockObject:0x4098c @name="y" @null=nil>) exactly 1 times but received it 0 times
|
60
|
+
fails "Integer#div bignum looses precision if passed Float argument" # Expected 18446744073709552000 == 18446744073709552000 to be falsy but was true
|
61
|
+
fails "Integer#div bignum returns self divided by other" # Expected 10000000000 == 9999999999 to be truthy but was false
|
62
|
+
fails "Integer#divmod bignum raises a TypeError when the given argument is not an Integer" # Expected TypeError but got: NoMethodError (undefined method `nan?' for #<MockObject:0x438bc @name="10" @null=nil>)
|
63
|
+
fails "Integer#divmod bignum returns an Array containing quotient and modulus obtained from dividing self by the given argument" # Expected [4611686018427388000, 0] == [4611686018427388000, 3] to be truthy but was false
|
64
|
+
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a < 0, b < 0 and |a| < |b|" # Expected [1, -0.0] == [0, -18446744073709552000] to be truthy but was false
|
65
|
+
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a < 0, b > 0 and |a| < b" # Expected [-1, 0] == [-1, 1] to be truthy but was false
|
66
|
+
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a > 0, b < 0 and a < |b|" # Expected [-1, -0.0] == [-1, -1] to be truthy but was false
|
67
|
+
fails "Integer#divmod bignum with q = floor(x/y), a = q*b + r, returns [q,r] when a > 0, b < 0 and a > |b|" # Expected [-1, -0.0] == [-2, -18446744073709552000] to be truthy but was false
|
76
68
|
fails "Integer#even? fixnum returns true for a Bignum when it is an even number" # Expected true to be false
|
77
|
-
fails "Integer#
|
78
|
-
fails "Integer#modulo bignum returns the modulus obtained from dividing self by the given argument" # Expected 0 to equal 9223372036854776000
|
69
|
+
fails "Integer#modulo bignum returns the modulus obtained from dividing self by the given argument" # Expected 0 == 18446744073709552000 to be truthy but was false
|
79
70
|
fails "Integer#odd? bignum returns false if self is even and negative" # Expected true to be false
|
80
71
|
fails "Integer#odd? bignum returns true if self is odd and positive" # Expected false to be true
|
81
|
-
fails "Integer#pow one argument is passed bignum
|
82
|
-
fails "Integer#pow one argument is passed
|
83
|
-
fails "Integer#pow one argument is passed
|
84
|
-
fails "Integer#pow
|
85
|
-
fails "Integer#
|
86
|
-
fails "Integer#
|
87
|
-
fails "Integer#
|
88
|
-
fails "Integer#
|
89
|
-
fails "Integer#pow two arguments are passed ensures all arguments are integers" # Depends on the difference between Integer and Float
|
90
|
-
fails "Integer#pow two arguments are passed works well with bignums" # NoMethodError: undefined method `pow' for 2
|
91
|
-
fails "Integer#remainder bignum does raises ZeroDivisionError if other is zero and a Float" # NoMethodError: undefined method `remainder' for 9223372036854776000
|
92
|
-
fails "Integer#remainder bignum raises a ZeroDivisionError if other is zero and not a Float" # NoMethodError: undefined method `remainder' for 9223372036854776000
|
93
|
-
fails "Integer#remainder bignum returns the remainder of dividing self by other" # NoMethodError: undefined method `remainder' for 9223372036854776000
|
94
|
-
fails "Integer#size bignum returns the number of bytes required to hold the unsigned bignum data" # Expected 4 to equal 8
|
72
|
+
fails "Integer#pow one argument is passed bignum switch to a Float when the values is too big" # Expected warning to match: /warning: in a\*\*b, b may be too big/ but got: ""
|
73
|
+
fails "Integer#pow one argument is passed fixnum can raise -1 to a bignum safely" # Expected 1 to have same value and type as -1
|
74
|
+
fails "Integer#pow one argument is passed fixnum returns Float::INFINITY for 0 ** -1.0" # ZeroDivisionError: divided by 0
|
75
|
+
fails "Integer#pow two arguments are passed ensures all arguments are integers" # Expected TypeError (/2nd argument not allowed unless all arguments are integers/) but no exception was raised (8 was returned)
|
76
|
+
fails "Integer#remainder bignum does raises ZeroDivisionError if other is zero and a Float" # Expected ZeroDivisionError but no exception was raised (NaN was returned)
|
77
|
+
fails "Integer#remainder bignum raises a ZeroDivisionError if other is zero and not a Float" # Expected ZeroDivisionError but no exception was raised (NaN was returned)
|
78
|
+
fails "Integer#remainder bignum returns the remainder of dividing self by other" # Expected 0 == 1 to be truthy but was false
|
79
|
+
fails "Integer#size bignum returns the number of bytes required to hold the unsigned bignum data" # Expected 4 == 8 to be truthy but was false
|
95
80
|
fails "Integer#| bignum raises a TypeError when passed a Float" # Expected TypeError but no exception was raised (9 was returned)
|
96
|
-
fails "Integer#| bignum returns self bitwise OR other when both operands are negative" # Expected 0 to
|
97
|
-
fails "Integer#| bignum returns self bitwise OR other when one operand is negative" # Expected 0 to
|
98
|
-
fails "Integer#| bignum returns self bitwise OR other" # Expected 2 to
|
99
|
-
fails "Integer#~ bignum returns self with each bit flipped" # Expected -1 to
|
81
|
+
fails "Integer#| bignum returns self bitwise OR other when both operands are negative" # Expected 0 == -1 to be truthy but was false
|
82
|
+
fails "Integer#| bignum returns self bitwise OR other when one operand is negative" # Expected 0 == -55340232221128655000 to be truthy but was false
|
83
|
+
fails "Integer#| bignum returns self bitwise OR other" # Expected 2 == 18446744073709552000 to be truthy but was false
|
84
|
+
fails "Integer#~ bignum returns self with each bit flipped" # Expected -1 == -18446744073709552000 to be truthy but was false
|
100
85
|
fails "Numeric#quo raises a ZeroDivisionError if the given argument is zero and not a Float" # Expected ZeroDivisionError but no exception was raised (Infinity was returned)
|
101
|
-
fails "String#to_r
|
102
|
-
fails "String#to_r
|
103
|
-
fails "String#to_r understands
|
104
|
-
fails "String#to_r understands decimal points" # Expected (1874623344892969/562949953421312) to equal (333/100)
|
86
|
+
fails "String#to_r ignores underscores between numbers" # Expected (-5228919960423629/274877906944) == (-190227/10) to be truthy but was false
|
87
|
+
fails "String#to_r understands a forward slash as separating the numerator from the denominator" # Expected (-896028675862255/140737488355328) == (-191/30) to be truthy but was false
|
88
|
+
fails "String#to_r understands decimal points" # Expected (1874623344892969/562949953421312) == (333/100) to be truthy but was false
|
105
89
|
end
|
@@ -1,46 +1,28 @@
|
|
1
1
|
# NOTE: run bin/format-filters after changing this file
|
2
2
|
opal_unsupported_filter "Kernel" do
|
3
|
-
fails "Kernel has private instance method Array()"
|
4
|
-
fails "Kernel has private instance method Hash()"
|
5
|
-
fails "Kernel#Float is a private method"
|
6
|
-
fails "Kernel#Float raises a TypeError if #to_f returns an Integer"
|
7
|
-
fails "Kernel#Integer
|
8
|
-
fails "Kernel#
|
9
|
-
fails "Kernel#Integer returns a Fixnum or Bignum object"
|
10
|
-
fails "Kernel#String is a private method"
|
3
|
+
fails "Kernel has private instance method Array()" # Expected Kernel to have private instance method 'Array' but it does not
|
4
|
+
fails "Kernel has private instance method Hash()" # Expected Kernel to have private instance method 'Hash' but it does not
|
5
|
+
fails "Kernel#Float is a private method" # Expected Kernel to have private instance method 'Float' but it does not
|
6
|
+
fails "Kernel#Float raises a TypeError if #to_f returns an Integer" # Expected TypeError but no exception was raised (123 was returned)
|
7
|
+
fails "Kernel#Integer is a private method" # Expected Kernel to have private instance method 'Integer' but it does not
|
8
|
+
fails "Kernel#String is a private method" # Expected Kernel to have private instance method 'String' but it does not
|
11
9
|
fails "Kernel#class returns the first non-singleton class" # TypeError: can't define singleton
|
12
|
-
fails "Kernel#
|
13
|
-
fails "Kernel#
|
14
|
-
fails "Kernel#
|
15
|
-
fails "Kernel#
|
16
|
-
fails "Kernel#
|
17
|
-
fails "Kernel#
|
18
|
-
fails "Kernel#
|
19
|
-
fails "Kernel#
|
20
|
-
fails "Kernel#format is a private method"
|
21
|
-
fails "Kernel#initialize_clone returns the receiver" # Expected nil == #<Object:0x63440> to be truthy but was false
|
22
|
-
fails "Kernel#initialize_dup returns the receiver" # Expected nil == #<Object:0x4c314> to be truthy but was false
|
23
|
-
fails "Kernel#inspect returns an untrusted string if self is untrusted"
|
24
|
-
fails "Kernel#raise is a private method"
|
25
|
-
fails "Kernel#sleep accepts a Rational"
|
26
|
-
fails "Kernel#sleep is a private method"
|
27
|
-
fails "Kernel#sleep pauses execution indefinitely if not given a duration"
|
28
|
-
fails "Kernel#sprintf is a private method"
|
29
|
-
fails "Kernel#to_s returns a tainted result if self is tainted"
|
30
|
-
fails "Kernel#to_s returns an untrusted result if self is untrusted"
|
10
|
+
fails "Kernel#eql? is a public instance method" # Expected Kernel to have public instance method 'eql?' but it does not
|
11
|
+
fails "Kernel#fail is a private method" # Expected Kernel to have private instance method 'fail' but it does not
|
12
|
+
fails "Kernel#format is a private method" # Expected Kernel to have private instance method 'format' but it does not
|
13
|
+
fails "Kernel#initialize_dup returns the receiver" # Expected nil == #<Object:0x6a424> to be truthy but was false
|
14
|
+
fails "Kernel#raise is a private method" # Expected Kernel to have private instance method 'raise' but it does not
|
15
|
+
fails "Kernel#sleep accepts a Rational" # TypeError: can't convert Rational into time interval
|
16
|
+
fails "Kernel#sleep is a private method" # Expected Kernel to have private instance method 'sleep' but it does not
|
17
|
+
fails "Kernel#sleep pauses execution indefinitely if not given a duration" # NotImplementedError: Thread creation not available
|
31
18
|
fails "Kernel#warn calls Warning.warn with category: nil if Warning.warn accepts keyword arguments" # NameError: uninitialized constant Warning
|
32
19
|
fails "Kernel#warn calls Warning.warn with given category keyword converted to a symbol" # NameError: uninitialized constant Warning
|
33
20
|
fails "Kernel#warn calls Warning.warn without keyword arguments if Warning.warn does not accept keyword arguments" # NameError: uninitialized constant Warning
|
34
|
-
fails "Kernel#warn is a private method"
|
35
|
-
fails "Kernel.Float raises a TypeError if #to_f returns an Integer"
|
36
|
-
fails "Kernel.Integer calls to_i on Rationals"
|
37
|
-
fails "Kernel.Integer returns a Fixnum or Bignum object"
|
38
|
-
fails "Kernel.fail is a private method"
|
21
|
+
fails "Kernel#warn is a private method" # Expected Kernel to have private instance method 'warn' but it does not
|
22
|
+
fails "Kernel.Float raises a TypeError if #to_f returns an Integer" # Expected TypeError but no exception was raised (123 was returned)
|
39
23
|
fails "Kernel.lambda when called without a literal block warns when proc isn't a lambda" # Expected warning: "ruby/core/kernel/lambda_spec.rb:142: warning: lambda without a literal block is deprecated; use the proc without lambda instead\n" but got: ""
|
40
24
|
fails "Kernel.printf formatting io is specified other formats s formats nil with width and precision" # Exception: format_string.indexOf is not a function
|
41
|
-
fails "Kernel.printf formatting io is specified other formats s formats nli with precision" # Exception: format_string.indexOf is not a function
|
42
|
-
fails "Kernel.printf formatting io is specified other formats s formats nli with width" # Exception: format_string.indexOf is not a function
|
43
25
|
fails "Kernel.printf formatting io is specified other formats s formats string with width and precision" # Exception: format_string.indexOf is not a function
|
44
26
|
fails "Kernel.printf formatting io is specified other formats s formats string with width" # Exception: format_string.indexOf is not a function
|
45
|
-
fails "Kernel.printf formatting io is specified other formats s substitutes '' for nil" # Exception: format_string.indexOf is not a function
|
27
|
+
fails "Kernel.printf formatting io is specified other formats s substitutes '' for nil" # Exception: format_string.indexOf is not a function
|
46
28
|
end
|
@@ -1,25 +1,17 @@
|
|
1
1
|
# NOTE: run bin/format-filters after changing this file
|
2
2
|
opal_unsupported_filter "language" do
|
3
|
-
fails "
|
4
|
-
fails "
|
5
|
-
fails "
|
6
|
-
fails "
|
7
|
-
fails "
|
8
|
-
fails "
|
9
|
-
fails "
|
10
|
-
fails "
|
11
|
-
fails "
|
12
|
-
fails "Ruby String literals with a magic frozen comment produce the same object each time"
|
13
|
-
fails "Ruby String literals with a magic frozen comment produce the same object for literals with the same content in different files"
|
14
|
-
fails "Ruby String literals with a magic frozen comment produce the same object for literals with the same content"
|
15
|
-
fails "The defined? keyword for pseudo-variables returns 'expression' for __ENCODING__"
|
16
|
-
fails "The defined? keyword when called with a method name having a module as receiver returns nil if the method is private"
|
17
|
-
fails "The defined? keyword when called with a method name having a module as receiver returns nil if the method is protected"
|
18
|
-
fails "The private keyword changes the visibility of the existing method in the subclass"
|
19
|
-
fails "The private keyword changes visibility of previously called method"
|
3
|
+
fails "Ruby String literals with a magic frozen comment produce different objects for literals with the same content in different files if the other file doesn't have the comment" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x14b20 @ip="xxx" @my_ip="xxx">
|
4
|
+
fails "Ruby String literals with a magic frozen comment produce different objects for literals with the same content in different files if they have different encodings" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x14b20 @ip="xxx" @my_ip="xxx">
|
5
|
+
fails "Ruby String literals with a magic frozen comment produce the same object each time" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x14b20 @ip="xxx" @my_ip="xxx">
|
6
|
+
fails "Ruby String literals with a magic frozen comment produce the same object for literals with the same content in different files" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x14b20 @ip="xxx" @my_ip="xxx">
|
7
|
+
fails "Ruby String literals with a magic frozen comment produce the same object for literals with the same content" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x14b20 @ip="xxx" @my_ip="xxx">
|
8
|
+
fails "The defined? keyword for pseudo-variables returns 'expression' for __ENCODING__" # Expected "constant" == "expression" to be truthy but was false
|
9
|
+
fails "The defined? keyword when called with a method name having a module as receiver returns nil if the method is private" # Expected "method" to be nil
|
10
|
+
fails "The private keyword changes the visibility of the existing method in the subclass" # Expected NoMethodError but no exception was raised ("foo" was returned)
|
11
|
+
fails "The private keyword changes visibility of previously called method" # Expected NoMethodError but no exception was raised ("foo" was returned)
|
20
12
|
fails "The private keyword changes visibility of previously called methods with same send/call site" # Expected NoMethodError but no exception was raised (2 was returned)
|
21
|
-
fails "The private keyword is overridden when a new class is opened"
|
22
|
-
fails "The private keyword marks following methods as being private"
|
13
|
+
fails "The private keyword is overridden when a new class is opened" # Expected NoMethodError but no exception was raised (1 was returned)
|
14
|
+
fails "The private keyword marks following methods as being private" # Expected ["foo", "bar", "to_json", "guard", "guard_not", "with_feature", "without_feature", "new_fd", "new_io", "should", "should_not", "version_is", "ruby_version_is", "kernel_version_is", "suppress_warning", "suppress_keyword_warning", "should_receive", "should_not_receive", "stub!", "mock", "mock_int", "mock_numeric", "evaluate", "before", "after", "describe", "it", "it_should_behave_like", "context", "specify", "it_behaves_like", "ruby_bug", "conflicts_with", "big_endian", "little_endian", "platform_is", "platform_is_not", "quarantine!", "not_supported_on", "as_superuser", "as_real_superuser", "as_user", "argf", "argv", "new_datetime", "with_timezone", "fixture", "flunk", "cp", "mkdir_p", "rm_r", "touch", "mock_to_path", "nan_value", "infinity_value", "bignum_value", "max_long", "min_long", "fixnum_max", "fixnum_min", "ruby_exe_options", "resolve_ruby_exe", "ruby_exe", "ruby_cmd", "opal_filter", "opal_unsupported_filter", "frozen_error_class", "pack_format", "DelegateClass", "unpack_format", "be_close_to_matrix", "module_specs_public_method_on_object", "module_specs_private_method_on_object", "module_specs_protected_method_on_object", "module_specs_private_method_on_object_for_kernel_public", "module_specs_public_method_on_object_for_kernel_protected", "module_specs_public_method_on_object_for_kernel_private", "check_autoload", "example_instance_method_of_object", "expect", "eq", "pretty_print", "pretty_print_cycle", "pretty_print_instance_variables", "pretty_print_inspect", "=~", "!~", "===", "<=>", "method", "methods", "public_methods", "Array", "at_exit", "caller", "caller_locations", "class", "copy_instance_variables", "copy_singleton_methods", "clone", "initialize_clone", "define_singleton_method", "dup", "initialize_dup", "enum_for", "equal?", "exit", "extend", "freeze", "frozen?", "gets", "hash", "initialize_copy", "inspect", "instance_of?", "instance_variable_defined?", "instance_variable_get", "instance_variable_set", "remove_instance_variable", "instance_variables", "Integer", "Float", "Hash", "is_a?", "itself", "lambda", "load", "loop", "nil?", "printf", "proc", "puts", "p", "print", "readline", "warn", "raise", "rand", "respond_to?", "respond_to_missing?", "require", "require_relative", "require_tree", "singleton_class", "sleep", "srand", "String", "tap", "to_proc", "to_s", "catch", "throw", "open", "yield_self", "fail", "kind_of?", "object_id", "public_send", "send", "then", "to_enum", "format", "sprintf", "Complex", "Rational", "taint", "untaint", "tainted?", "private_methods", "protected_methods", "private_instance_methods", "protected_instance_methods", "eval", "binding", "Pathname", "require_remote", "pretty_inspect", "pp", "opal_parse", "eval_js", "BigDecimal", "module_specs_public_method_on_kernel", "module_specs_alias_on_kernel", "__send__", "__id__", "==", "!", "initialize", "eql?", "!=", "instance_eval", "instance_exec", "singleton_method_added", "singleton_method_removed", "singleton_method_undefined", "method_missing"] not to include "bar"
|
23
15
|
fails "rescuing Interrupt raises an Interrupt when sent a signal SIGINT" # NoMethodError: undefined method `kill' for Process
|
24
16
|
fails "rescuing SignalException raises a SignalException when sent a signal" # NoMethodError: undefined method `kill' for Process
|
25
17
|
end
|
@@ -1,44 +1,25 @@
|
|
1
1
|
# NOTE: run bin/format-filters after changing this file
|
2
2
|
opal_unsupported_filter "Marshal" do
|
3
|
-
fails "Marshal.dump dumps subsequent appearances of a symbol as a link" #
|
4
|
-
fails "Marshal.dump raises a TypeError if dumping a IO/File instance"
|
5
|
-
fails "Marshal.dump
|
6
|
-
fails "Marshal.dump returns
|
7
|
-
fails "Marshal.dump
|
8
|
-
fails "Marshal.dump
|
9
|
-
fails "Marshal.dump
|
10
|
-
fails "Marshal.dump
|
11
|
-
fails "Marshal.dump
|
12
|
-
fails "Marshal.dump
|
13
|
-
fails "Marshal.dump
|
14
|
-
fails "Marshal.dump with a
|
15
|
-
fails "Marshal.dump with a
|
16
|
-
fails "Marshal.dump with
|
17
|
-
fails "Marshal.
|
18
|
-
fails "Marshal.
|
19
|
-
fails "Marshal.
|
20
|
-
fails "Marshal.
|
21
|
-
fails "Marshal.
|
22
|
-
fails "Marshal.
|
23
|
-
fails "Marshal.
|
24
|
-
fails "Marshal.load
|
25
|
-
fails "Marshal.load for a String loads a string having ivar with ref to self" # depends on string mutation
|
26
|
-
fails "Marshal.load for a String loads a string through StringIO stream"
|
27
|
-
fails "Marshal.load for a String loads a string with an ivar" # depends on string mutation
|
28
|
-
fails "Marshal.load for a wrapped C pointer loads"
|
29
|
-
fails "Marshal.load for a wrapped C pointer raises ArgumentError when the local class is a regular object"
|
30
|
-
fails "Marshal.load for a wrapped C pointer raises TypeError when the local class is missing _load_data"
|
31
|
-
fails "Marshal.load for an Array loads an array having ivar" # for some reason depends on String#instance_variable_set which is not supported. replaced with test in spec/opal
|
32
|
-
fails "Marshal.load loads a Random" # depends on the reading from the filesystem
|
33
|
-
fails "Marshal.load preserves taintedness of nested structure"
|
34
|
-
fails "Marshal.load raises EOFError on loading an empty file"
|
35
|
-
fails "Marshal.load raises a TypeError with bad Marshal version" # depends on String#[]=
|
36
|
-
fails "Marshal.load returns a trusted object if source is trusted"
|
37
|
-
fails "Marshal.load returns an untainted object if source is untainted"
|
38
|
-
fails "Marshal.load returns an untrusted object if source is untrusted"
|
39
|
-
fails "Marshal.load when source is tainted does not taint Bignums"
|
40
|
-
fails "Marshal.load when source is tainted does not taint Fixnums"
|
41
|
-
fails "Marshal.load when source is tainted does not taint Floats"
|
42
|
-
fails "Marshal.load when source is tainted does not taint Symbols"
|
43
|
-
fails "Marshal.load when source is tainted returns a tainted object"
|
3
|
+
fails "Marshal.dump dumps subsequent appearances of a symbol as a link" # Expected "\x04\b[\a\"\x06a@\x06" == "\x04\b[\a:\x06a;\x00" to be truthy but was false
|
4
|
+
fails "Marshal.dump raises a TypeError if dumping a IO/File instance" # Expected TypeError but got: Exception (Maximum call stack size exceeded)
|
5
|
+
fails "Marshal.dump when passed an IO raises an Error when the IO-Object does not respond to #write" # Expected TypeError but got: ArgumentError ([Marshal.dump] wrong number of arguments (given 2, expected 1))
|
6
|
+
fails "Marshal.dump when passed an IO returns the IO-Object" # ArgumentError: [Marshal.dump] wrong number of arguments (given 2, expected 1)
|
7
|
+
fails "Marshal.dump when passed an IO writes the serialized data to the IO-Object" # ArgumentError: [Marshal.dump] wrong number of arguments (given 2, expected 1)
|
8
|
+
fails "Marshal.dump with a Float dumps a Float" # Expected "\x04\bf\x060" to be computed by Marshal.dump from 0 (computed "\x04\bi\x00" instead)
|
9
|
+
fails "Marshal.dump with a Regexp dumps a Regexp in another encoding" # NameError: uninitialized constant Regexp::FIXEDENCODING
|
10
|
+
fails "Marshal.dump with a Regexp dumps a Regexp with flags" # Expected "\x04\b/\t(?:)\x00" == "\x04\bI/\x00\x05\x06:\x06EF" to be truthy but was false
|
11
|
+
fails "Marshal.dump with a Regexp dumps a Regexp" # Expected "\x04\b/\t^.\\Z\x00" == "\x04\bI/ \\A.\\Z\x00\x06:\x06EF" to be truthy but was false
|
12
|
+
fails "Marshal.dump with a Regexp dumps a UTF-8 Regexp" # NameError: uninitialized constant Regexp::FIXEDENCODING
|
13
|
+
fails "Marshal.dump with a Regexp dumps a binary Regexp" # NameError: uninitialized constant Regexp::FIXEDENCODING
|
14
|
+
fails "Marshal.dump with a Regexp dumps an extended Regexp" # Expected "\x04\be: Meths/\t(?:)\x00" == "\x04\bIe: Meths/\x00\x00\x06:\x06EF" to be truthy but was false
|
15
|
+
fails "Marshal.dump with a String dumps a String with instance variables" # Expected "\x04\b\"\x00" == "\x04\bI\"\x00\x06:\t@foo\"\bbar" to be truthy but was false
|
16
|
+
fails "Marshal.dump with an object responding to #marshal_dump dumps the object returned by #marshal_dump" # Expected "\x04\bU:\x10UserMarshal\"\tdata" == "\x04\bU:\x10UserMarshal:\tdata" to be truthy but was false
|
17
|
+
fails "Marshal.load for a Hash preserves hash ivars when hash contains a string having ivar" # Expected nil == "string ivar" to be truthy but was false
|
18
|
+
fails "Marshal.load for a String loads a string through StringIO stream" # TypeError: incompatible marshal file format (can't be read)
|
19
|
+
fails "Marshal.load for a wrapped C pointer loads" # NotImplementedError: Data type cannot be demarshaled
|
20
|
+
fails "Marshal.load for a wrapped C pointer raises ArgumentError when the local class is a regular object" # Expected ArgumentError but got: NotImplementedError (Data type cannot be demarshaled)
|
21
|
+
fails "Marshal.load for a wrapped C pointer raises TypeError when the local class is missing _load_data" # Expected TypeError but got: NotImplementedError (Data type cannot be demarshaled)
|
22
|
+
fails "Marshal.load loads a Random" # ArgumentError: marshal data too short
|
23
|
+
fails "Marshal.load raises EOFError on loading an empty file" # NoMethodError: undefined method `tmp' for #<MSpecEnv:0x444da @method="load" @object=nil @num_self_class=1 @data="\x04\bo:\x1ANamespaceTest::KaBoom\x00">
|
24
|
+
fails "Marshal.load raises a TypeError with bad Marshal version" # NotImplementedError: String#[]= not supported. Mutable String methods are not supported in Opal.
|
44
25
|
end
|
@@ -1,63 +1,39 @@
|
|
1
1
|
# NOTE: run bin/format-filters after changing this file
|
2
2
|
opal_unsupported_filter "MatchData" do
|
3
|
-
fails "MatchData#[Symbol]
|
4
|
-
fails "MatchData#[Symbol]
|
5
|
-
fails "MatchData#[Symbol] returns
|
6
|
-
fails "MatchData#
|
7
|
-
fails "MatchData#
|
8
|
-
fails "MatchData#
|
9
|
-
fails "MatchData#
|
10
|
-
fails "MatchData#
|
11
|
-
fails "MatchData#begin
|
12
|
-
fails "MatchData#begin returns the offset for multi
|
13
|
-
fails "MatchData#begin returns the offset for
|
14
|
-
fails "MatchData#begin returns the offset of the start of the nth element"
|
15
|
-
fails "MatchData#begin when passed a String argument return the character offset of the start of the named capture" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
16
|
-
fails "MatchData#begin when passed a String argument returns the character offset for multi byte strings" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
17
|
-
fails "MatchData#begin when passed a String argument returns the character offset for multi-byte names" # Exception: named captures are not supported in javascript: "(?<æ>.)(.)(?<b>\d+)(\d)"
|
18
|
-
fails "MatchData#begin when passed a String argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<a>\d+)(\d)"
|
19
|
-
fails "MatchData#begin when passed a Symbol argument return the character offset of the start of the named capture" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
20
|
-
fails "MatchData#begin when passed a Symbol argument returns the character offset for multi byte strings" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
21
|
-
fails "MatchData#begin when passed a Symbol argument returns the character offset for multi-byte names" # Exception: named captures are not supported in javascript: "(?<æ>.)(.)(?<b>\d+)(\d)"
|
22
|
-
fails "MatchData#begin when passed a Symbol argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<a>\d+)(\d)"
|
3
|
+
fails "MatchData#[Symbol] returns matches in the String's encoding" # ArgumentError: unknown encoding name - euc-jp
|
4
|
+
fails "MatchData#[Symbol] returns the last match when multiple named matches exist with the same name" # Exception: Invalid regular expression: /(?<word>hay)(?<word>stack)/: Duplicate capture group name
|
5
|
+
fails "MatchData#[Symbol] returns the matching version of multiple corresponding named match" # Exception: Invalid regular expression: /(?:A(?<word>\w+)|B(?<word>\w+))/: Duplicate capture group name
|
6
|
+
fails "MatchData#begin when passed a String argument return the character offset of the start of the named capture" # ArgumentError: MatchData#begin only supports 0th element
|
7
|
+
fails "MatchData#begin when passed a String argument returns the character offset for multi byte strings" # ArgumentError: MatchData#begin only supports 0th element
|
8
|
+
fails "MatchData#begin when passed a String argument returns the character offset for multi-byte names" # ArgumentError: MatchData#begin only supports 0th element
|
9
|
+
fails "MatchData#begin when passed a String argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: Invalid regular expression: /(?<a>.)(.)(?<a>\d+)(\d)/: Duplicate capture group name
|
10
|
+
fails "MatchData#begin when passed a Symbol argument return the character offset of the start of the named capture" # ArgumentError: MatchData#begin only supports 0th element
|
11
|
+
fails "MatchData#begin when passed a Symbol argument returns the character offset for multi byte strings" # ArgumentError: MatchData#begin only supports 0th element
|
12
|
+
fails "MatchData#begin when passed a Symbol argument returns the character offset for multi-byte names" # ArgumentError: MatchData#begin only supports 0th element
|
13
|
+
fails "MatchData#begin when passed a Symbol argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: Invalid regular expression: /(?<a>.)(.)(?<a>\d+)(\d)/: Duplicate capture group name
|
23
14
|
fails "MatchData#begin when passed an integer argument returns nil when the nth match isn't found" # ArgumentError: MatchData#begin only supports 0th element
|
24
15
|
fails "MatchData#begin when passed an integer argument returns the character offset for multi-byte strings" # ArgumentError: MatchData#begin only supports 0th element
|
25
16
|
fails "MatchData#begin when passed an integer argument returns the character offset of the start of the nth element" # ArgumentError: MatchData#begin only supports 0th element
|
26
17
|
fails "MatchData#begin when passed an integer argument tries to convert the passed argument to an Integer using #to_int" # ArgumentError: MatchData#begin only supports 0th element
|
27
|
-
fails "MatchData#end
|
28
|
-
fails "MatchData#end returns the offset for multi byte strings
|
29
|
-
fails "MatchData#end returns the offset for multi
|
30
|
-
fails "MatchData#end returns the offset
|
31
|
-
fails "MatchData#end when passed a
|
32
|
-
fails "MatchData#end when passed a
|
33
|
-
fails "MatchData#end when passed a
|
34
|
-
fails "MatchData#end when passed a
|
35
|
-
fails "MatchData#end when passed a Symbol argument return the character offset of the start of the named capture" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
36
|
-
fails "MatchData#end when passed a Symbol argument returns the character offset for multi byte strings" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<b>\d+)(\d)"
|
37
|
-
fails "MatchData#end when passed a Symbol argument returns the character offset for multi-byte names" # Exception: named captures are not supported in javascript: "(?<æ>.)(.)(?<b>\d+)(\d)"
|
38
|
-
fails "MatchData#end when passed a Symbol argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: named captures are not supported in javascript: "(?<a>.)(.)(?<a>\d+)(\d)"
|
18
|
+
fails "MatchData#end when passed a String argument return the character offset of the start of the named capture" # ArgumentError: MatchData#end only supports 0th element
|
19
|
+
fails "MatchData#end when passed a String argument returns the character offset for multi byte strings" # ArgumentError: MatchData#end only supports 0th element
|
20
|
+
fails "MatchData#end when passed a String argument returns the character offset for multi-byte names" # ArgumentError: MatchData#end only supports 0th element
|
21
|
+
fails "MatchData#end when passed a String argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: Invalid regular expression: /(?<a>.)(.)(?<a>\d+)(\d)/: Duplicate capture group name
|
22
|
+
fails "MatchData#end when passed a Symbol argument return the character offset of the start of the named capture" # ArgumentError: MatchData#end only supports 0th element
|
23
|
+
fails "MatchData#end when passed a Symbol argument returns the character offset for multi byte strings" # ArgumentError: MatchData#end only supports 0th element
|
24
|
+
fails "MatchData#end when passed a Symbol argument returns the character offset for multi-byte names" # ArgumentError: MatchData#end only supports 0th element
|
25
|
+
fails "MatchData#end when passed a Symbol argument returns the character offset for the farthest match when multiple named captures use the same name" # Exception: Invalid regular expression: /(?<a>.)(.)(?<a>\d+)(\d)/: Duplicate capture group name
|
39
26
|
fails "MatchData#end when passed an integer argument returns nil when the nth match isn't found" # ArgumentError: MatchData#end only supports 0th element
|
40
27
|
fails "MatchData#end when passed an integer argument returns the character offset for multi-byte strings" # ArgumentError: MatchData#end only supports 0th element
|
41
28
|
fails "MatchData#end when passed an integer argument returns the character offset of the end of the nth element" # ArgumentError: MatchData#end only supports 0th element
|
42
29
|
fails "MatchData#end when passed an integer argument tries to convert the passed argument to an Integer using #to_int" # ArgumentError: MatchData#end only supports 0th element
|
43
|
-
fails "MatchData#named_captures prefers later captures" # Exception:
|
44
|
-
fails "MatchData#named_captures returns
|
45
|
-
fails "MatchData#
|
46
|
-
fails "MatchData#names
|
47
|
-
fails "MatchData#
|
48
|
-
fails "MatchData#
|
49
|
-
fails "MatchData#
|
50
|
-
fails "MatchData#
|
51
|
-
fails "MatchData#names
|
52
|
-
fails "MatchData#offset returns [nil, nil] when the nth match isn't found"
|
53
|
-
fails "MatchData#offset returns a two element array with the begin and end of the nth match"
|
54
|
-
fails "MatchData#offset returns the offset for multi byte strings with unicode regexp"
|
55
|
-
fails "MatchData#offset returns the offset for multi byte strings"
|
56
|
-
fails "MatchData#post_match keeps taint status from the source string"
|
57
|
-
fails "MatchData#post_match keeps untrusted status from the source string"
|
58
|
-
fails "MatchData#pre_match keeps taint status from the source string"
|
59
|
-
fails "MatchData#pre_match keeps untrusted status from the source string"
|
60
|
-
fails "MatchData#regexp returns the pattern used in the match"
|
61
|
-
fails "MatchData#values_at slices captures with the given names" # Exception: named captures are not supported in javascript: "(?<a>.)(?<b>.)(?<c>.)"
|
62
|
-
fails "MatchData#values_at takes names and indices" # Exception: named captures are not supported in javascript: "^(?<a>.)(?<b>.)$"
|
30
|
+
fails "MatchData#named_captures prefers later captures" # Exception: Invalid regular expression: /^(?<a>.)(?<b>.)(?<b>.)(?<a>.)$/: Duplicate capture group name
|
31
|
+
fails "MatchData#named_captures returns the latest matched capture, even if a later one that does not match exists" # Exception: Invalid regular expression: /^(?<a>.)(?<b>.)(?<b>.)(?<a>.)?$/: Duplicate capture group name
|
32
|
+
fails "MatchData#names equals Regexp#names" # Exception: Invalid regular expression: /(?<hay>hay)(?<dot>.)(?<hay>tack)/: Duplicate capture group name
|
33
|
+
fails "MatchData#names returns each name only once" # Exception: Invalid regular expression: /(?<hay>hay)(?<dot>.)(?<hay>tack)/: Duplicate capture group name
|
34
|
+
fails "MatchData#offset returns [nil, nil] when the nth match isn't found" # ArgumentError: MatchData#offset only supports 0th element
|
35
|
+
fails "MatchData#offset returns a two element array with the begin and end of the nth match" # ArgumentError: MatchData#offset only supports 0th element
|
36
|
+
fails "MatchData#offset returns the offset for multi byte strings" # ArgumentError: MatchData#offset only supports 0th element
|
37
|
+
fails "MatchData#values_at slices captures with the given names" # TypeError: no implicit conversion of String into Integer
|
38
|
+
fails "MatchData#values_at takes names and indices" # TypeError: no implicit conversion of String into Integer
|
63
39
|
end
|