opal 1.6.1 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +17 -0
  3. data/CHANGELOG.md +35 -1
  4. data/Gemfile +1 -0
  5. data/HACKING.md +47 -26
  6. data/benchmark/benchmarks +415 -103
  7. data/benchmark/bm_call_overhead.yml +28 -0
  8. data/benchmark/run.rb +61 -40
  9. data/docs/cdp_common.json +3364 -0
  10. data/docs/cdp_common.md +18 -0
  11. data/docs/{headless_chrome.md → headless_browsers.md} +31 -12
  12. data/lib/opal/ast/builder.rb +1 -1
  13. data/lib/opal/builder.rb +6 -1
  14. data/lib/opal/builder_processors.rb +5 -3
  15. data/lib/opal/cache.rb +1 -7
  16. data/lib/opal/cli_options.rb +72 -58
  17. data/lib/opal/cli_runners/chrome.rb +47 -9
  18. data/lib/opal/cli_runners/chrome_cdp_interface.rb +238 -112
  19. data/lib/opal/cli_runners/compiler.rb +146 -13
  20. data/lib/opal/cli_runners/deno.rb +32 -0
  21. data/lib/opal/cli_runners/firefox.rb +350 -0
  22. data/lib/opal/cli_runners/firefox_cdp_interface.rb +212 -0
  23. data/lib/opal/cli_runners/node_modules/.bin/chrome-remote-interface.cmd +17 -0
  24. data/lib/opal/cli_runners/node_modules/.bin/chrome-remote-interface.ps1 +28 -0
  25. data/lib/opal/cli_runners/node_modules/.package-lock.json +41 -0
  26. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/LICENSE +1 -1
  27. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/README.md +322 -182
  28. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/bin/client.js +99 -114
  29. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/chrome-remote-interface.js +1 -11
  30. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/index.js +16 -11
  31. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/api.js +41 -33
  32. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/chrome.js +224 -214
  33. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/devtools.js +71 -191
  34. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/external-request.js +26 -6
  35. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/protocol.json +20788 -9049
  36. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/lib/websocket-wrapper.js +10 -3
  37. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/package.json +59 -123
  38. data/lib/opal/cli_runners/node_modules/chrome-remote-interface/webpack.config.js +25 -32
  39. data/lib/opal/cli_runners/node_modules/commander/History.md +298 -0
  40. data/lib/opal/cli_runners/node_modules/commander/LICENSE +22 -0
  41. data/lib/opal/cli_runners/node_modules/commander/Readme.md +217 -61
  42. data/lib/opal/cli_runners/node_modules/commander/index.js +431 -145
  43. data/lib/opal/cli_runners/node_modules/commander/package.json +16 -79
  44. data/lib/opal/cli_runners/node_modules/ws/README.md +334 -98
  45. data/lib/opal/cli_runners/node_modules/ws/browser.js +8 -0
  46. data/lib/opal/cli_runners/node_modules/ws/index.js +5 -10
  47. data/lib/opal/cli_runners/node_modules/ws/lib/buffer-util.js +129 -0
  48. data/lib/opal/cli_runners/node_modules/ws/lib/constants.js +10 -0
  49. data/lib/opal/cli_runners/node_modules/ws/lib/event-target.js +184 -0
  50. data/lib/opal/cli_runners/node_modules/ws/lib/extension.js +223 -0
  51. data/lib/opal/cli_runners/node_modules/ws/lib/limiter.js +55 -0
  52. data/lib/opal/cli_runners/node_modules/ws/lib/permessage-deflate.js +518 -0
  53. data/lib/opal/cli_runners/node_modules/ws/lib/receiver.js +607 -0
  54. data/lib/opal/cli_runners/node_modules/ws/lib/sender.js +409 -0
  55. data/lib/opal/cli_runners/node_modules/ws/lib/stream.js +180 -0
  56. data/lib/opal/cli_runners/node_modules/ws/lib/validation.js +104 -0
  57. data/lib/opal/cli_runners/node_modules/ws/lib/websocket-server.js +447 -0
  58. data/lib/opal/cli_runners/node_modules/ws/lib/websocket.js +1195 -0
  59. data/lib/opal/cli_runners/node_modules/ws/package.json +40 -106
  60. data/lib/opal/cli_runners/package-lock.json +62 -0
  61. data/lib/opal/cli_runners/package.json +1 -1
  62. data/lib/opal/cli_runners.rb +26 -4
  63. data/lib/opal/nodes/args/prepare_post_args.rb +2 -2
  64. data/lib/opal/nodes/def.rb +8 -8
  65. data/lib/opal/nodes/iter.rb +12 -12
  66. data/lib/opal/nodes/logic.rb +1 -1
  67. data/lib/opal/nodes/masgn.rb +2 -2
  68. data/lib/opal/parser/with_ruby_lexer.rb +1 -1
  69. data/lib/opal/paths.rb +14 -0
  70. data/lib/opal/rewriter.rb +2 -0
  71. data/lib/opal/rewriters/forward_args.rb +52 -4
  72. data/lib/opal/rewriters/targeted_patches.rb +94 -0
  73. data/lib/opal/version.rb +1 -1
  74. data/opal/corelib/basic_object.rb +1 -1
  75. data/opal/corelib/boolean.rb +2 -2
  76. data/opal/corelib/class.rb +11 -0
  77. data/opal/corelib/constants.rb +3 -3
  78. data/opal/corelib/enumerable.rb +4 -0
  79. data/opal/corelib/enumerator.rb +1 -1
  80. data/opal/corelib/hash.rb +2 -2
  81. data/opal/corelib/helpers.rb +1 -1
  82. data/opal/corelib/kernel.rb +3 -3
  83. data/opal/corelib/method.rb +1 -1
  84. data/opal/corelib/module.rb +29 -8
  85. data/opal/corelib/proc.rb +7 -5
  86. data/opal/corelib/runtime.js +141 -78
  87. data/opal/corelib/set.rb +252 -0
  88. data/opal/corelib/string.rb +2 -1
  89. data/opal/corelib/time.rb +2 -2
  90. data/opal/opal.rb +1 -0
  91. data/opal.gemspec +1 -0
  92. data/spec/filters/bugs/array.rb +22 -13
  93. data/spec/filters/bugs/base64.rb +5 -5
  94. data/spec/filters/bugs/basicobject.rb +16 -8
  95. data/spec/filters/bugs/bigdecimal.rb +161 -160
  96. data/spec/filters/bugs/binding.rb +10 -10
  97. data/spec/filters/bugs/class.rb +8 -8
  98. data/spec/filters/bugs/complex.rb +2 -1
  99. data/spec/filters/bugs/date.rb +79 -81
  100. data/spec/filters/bugs/datetime.rb +29 -29
  101. data/spec/filters/bugs/delegate.rb +1 -3
  102. data/spec/filters/bugs/encoding.rb +69 -69
  103. data/spec/filters/bugs/enumerable.rb +22 -20
  104. data/spec/filters/bugs/enumerator.rb +88 -85
  105. data/spec/filters/bugs/exception.rb +46 -40
  106. data/spec/filters/bugs/file.rb +32 -32
  107. data/spec/filters/bugs/float.rb +26 -21
  108. data/spec/filters/bugs/freeze.rb +88 -0
  109. data/spec/filters/bugs/hash.rb +39 -38
  110. data/spec/filters/bugs/integer.rb +57 -44
  111. data/spec/filters/bugs/io.rb +1 -1
  112. data/spec/filters/bugs/kernel.rb +349 -269
  113. data/spec/filters/bugs/language.rb +220 -188
  114. data/spec/filters/bugs/main.rb +5 -3
  115. data/spec/filters/bugs/marshal.rb +38 -38
  116. data/spec/filters/bugs/math.rb +2 -1
  117. data/spec/filters/bugs/method.rb +73 -62
  118. data/spec/filters/bugs/module.rb +163 -143
  119. data/spec/filters/bugs/numeric.rb +6 -6
  120. data/spec/filters/bugs/objectspace.rb +16 -16
  121. data/spec/filters/bugs/openstruct.rb +1 -1
  122. data/spec/filters/bugs/pack_unpack.rb +51 -51
  123. data/spec/filters/bugs/pathname.rb +7 -7
  124. data/spec/filters/bugs/proc.rb +63 -63
  125. data/spec/filters/bugs/random.rb +7 -6
  126. data/spec/filters/bugs/range.rb +12 -9
  127. data/spec/filters/bugs/rational.rb +8 -7
  128. data/spec/filters/bugs/regexp.rb +49 -48
  129. data/spec/filters/bugs/ruby-32.rb +56 -0
  130. data/spec/filters/bugs/set.rb +30 -30
  131. data/spec/filters/bugs/singleton.rb +4 -4
  132. data/spec/filters/bugs/string.rb +187 -99
  133. data/spec/filters/bugs/stringio.rb +7 -0
  134. data/spec/filters/bugs/stringscanner.rb +68 -68
  135. data/spec/filters/bugs/struct.rb +11 -9
  136. data/spec/filters/bugs/symbol.rb +1 -1
  137. data/spec/filters/bugs/time.rb +78 -63
  138. data/spec/filters/bugs/trace_point.rb +4 -4
  139. data/spec/filters/bugs/unboundmethod.rb +32 -17
  140. data/spec/filters/bugs/warnings.rb +8 -12
  141. data/spec/filters/unsupported/array.rb +24 -107
  142. data/spec/filters/unsupported/basicobject.rb +12 -12
  143. data/spec/filters/unsupported/bignum.rb +27 -52
  144. data/spec/filters/unsupported/class.rb +1 -2
  145. data/spec/filters/unsupported/delegator.rb +3 -3
  146. data/spec/filters/unsupported/enumerable.rb +2 -9
  147. data/spec/filters/unsupported/enumerator.rb +2 -11
  148. data/spec/filters/unsupported/file.rb +1 -1
  149. data/spec/filters/unsupported/float.rb +28 -47
  150. data/spec/filters/unsupported/hash.rb +8 -14
  151. data/spec/filters/unsupported/integer.rb +75 -91
  152. data/spec/filters/unsupported/kernel.rb +17 -35
  153. data/spec/filters/unsupported/language.rb +11 -19
  154. data/spec/filters/unsupported/marshal.rb +22 -41
  155. data/spec/filters/unsupported/matchdata.rb +28 -52
  156. data/spec/filters/unsupported/math.rb +1 -1
  157. data/spec/filters/unsupported/privacy.rb +229 -285
  158. data/spec/filters/unsupported/range.rb +1 -5
  159. data/spec/filters/unsupported/regexp.rb +40 -66
  160. data/spec/filters/unsupported/set.rb +2 -2
  161. data/spec/filters/unsupported/singleton.rb +4 -4
  162. data/spec/filters/unsupported/string.rb +305 -508
  163. data/spec/filters/unsupported/struct.rb +3 -4
  164. data/spec/filters/unsupported/symbol.rb +15 -18
  165. data/spec/filters/unsupported/thread.rb +1 -7
  166. data/spec/filters/unsupported/time.rb +159 -202
  167. data/spec/filters/unsupported/usage_of_files.rb +170 -259
  168. data/spec/lib/builder_spec.rb +4 -4
  169. data/spec/lib/rewriters/forward_args_spec.rb +32 -12
  170. data/spec/mspec-opal/runner.rb +2 -0
  171. data/spec/ruby_specs +4 -0
  172. data/stdlib/deno/base.rb +28 -0
  173. data/stdlib/deno/file.rb +340 -0
  174. data/stdlib/{headless_chrome.rb → headless_browser/base.rb} +1 -1
  175. data/stdlib/headless_browser/file.rb +15 -0
  176. data/stdlib/headless_browser.rb +4 -0
  177. data/stdlib/native.rb +1 -1
  178. data/stdlib/nodejs/file.rb +5 -0
  179. data/stdlib/opal/platform.rb +8 -6
  180. data/stdlib/opal-platform.rb +14 -8
  181. data/stdlib/set.rb +1 -258
  182. data/tasks/benchmarking.rake +62 -19
  183. data/tasks/performance.rake +1 -1
  184. data/tasks/testing.rake +5 -3
  185. data/test/nodejs/test_file.rb +29 -10
  186. data/test/opal/http_server.rb +28 -11
  187. data/test/opal/unsupported_and_bugs.rb +2 -1
  188. metadata +89 -50
  189. data/lib/opal/cli_runners/node_modules/ultron/LICENSE +0 -22
  190. data/lib/opal/cli_runners/node_modules/ultron/index.js +0 -138
  191. data/lib/opal/cli_runners/node_modules/ultron/package.json +0 -112
  192. data/lib/opal/cli_runners/node_modules/ws/SECURITY.md +0 -33
  193. data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.fallback.js +0 -56
  194. data/lib/opal/cli_runners/node_modules/ws/lib/BufferUtil.js +0 -15
  195. data/lib/opal/cli_runners/node_modules/ws/lib/ErrorCodes.js +0 -28
  196. data/lib/opal/cli_runners/node_modules/ws/lib/EventTarget.js +0 -158
  197. data/lib/opal/cli_runners/node_modules/ws/lib/Extensions.js +0 -69
  198. data/lib/opal/cli_runners/node_modules/ws/lib/PerMessageDeflate.js +0 -339
  199. data/lib/opal/cli_runners/node_modules/ws/lib/Receiver.js +0 -520
  200. data/lib/opal/cli_runners/node_modules/ws/lib/Sender.js +0 -438
  201. data/lib/opal/cli_runners/node_modules/ws/lib/Validation.fallback.js +0 -9
  202. data/lib/opal/cli_runners/node_modules/ws/lib/Validation.js +0 -17
  203. data/lib/opal/cli_runners/node_modules/ws/lib/WebSocket.js +0 -705
  204. data/lib/opal/cli_runners/node_modules/ws/lib/WebSocketServer.js +0 -336
  205. data/spec/filters/bugs/boolean.rb +0 -3
  206. data/spec/filters/bugs/matrix.rb +0 -3
  207. data/spec/filters/unsupported/fixnum.rb +0 -15
  208. data/spec/filters/unsupported/freeze.rb +0 -102
  209. data/spec/filters/unsupported/pathname.rb +0 -4
  210. data/spec/filters/unsupported/proc.rb +0 -4
  211. data/spec/filters/unsupported/random.rb +0 -5
  212. data/spec/filters/unsupported/taint.rb +0 -162
@@ -1,96 +1,94 @@
1
1
  # NOTE: run bin/format-filters after changing this file
2
2
  opal_filter "Date" do
3
- fails "Date#>> returns the day of the reform if date falls within calendar reform"
4
- fails "Date#ajd determines the Astronomical Julian day"
5
- fails "Date#amjd determines the Astronomical Modified Julian day"
6
- fails "Date#civil creates a Date for different calendar reform dates"
7
- fails "Date#civil doesn't create dates for invalid arguments"
8
- fails "Date#commercial creates a Date for Julian Day Number day 0 by default"
3
+ fails "Date#>> returns the day of the reform if date falls within calendar reform" # Expected #<Date:0x28ea @date=1582-10-09 00:00:00 +0124, @start=2299161> == #<Date:0x28e6 @date=1582-10-04 00:00:00 +0124, @start=2299161> to be truthy but was false
4
+ fails "Date#ajd determines the Astronomical Julian day" # NoMethodError: undefined method `ajd' for #<Date:0x9f5b0 @date=2007-01-17 00:00:00 +0100 @start=2299161>
5
+ fails "Date#amjd determines the Astronomical Modified Julian day" # NoMethodError: undefined method `amjd' for #<Date:0x9f5ba @date=2007-01-17 00:00:00 +0100 @start=2299161>
6
+ fails "Date#civil creates a Date for different calendar reform dates" # Expected 5 == 15 to be truthy but was false
7
+ fails "Date#civil doesn't create dates for invalid arguments" # Expected ArgumentError but no exception was raised (#<Date:0x73d98 @date=2001-01-31 00:00:00 +0100, @start=2299161> was returned)
8
+ fails "Date#commercial creates a Date for Julian Day Number day 0 by default" # NoMethodError: undefined method `commercial' for Date
9
9
  fails "Date#commercial creates a Date for the correct day given the year, week and day number" # NoMethodError: undefined method `commercial' for Date
10
10
  fails "Date#commercial creates a Date for the monday in the year and week given" # NoMethodError: undefined method `commercial' for Date
11
- fails "Date#commercial creates only Date objects for valid weeks"
12
- fails "Date#cwyear determines the commercial year"
13
- fails "Date#day_fraction determines the day fraction"
14
- fails "Date#england converts a date object into another with the English calendar reform"
15
- fails "Date#gregorian converts a date object into another with the Gregorian calendar"
16
- fails "Date#gregorian? marks a day after the calendar reform as Julian"
17
- fails "Date#gregorian? marks a day before the calendar reform as Julian"
18
- fails "Date#hash returns the same value for equal dates"
19
- fails "Date#italy converts a date object into another with the Italian calendar reform"
20
- fails "Date#julian converts a date object into another with the Julian calendar"
21
- fails "Date#julian? marks a day before the calendar reform as Julian"
22
- fails "Date#ld determines the Modified Julian day"
23
- fails "Date#mjd determines the Modified Julian day"
24
- fails "Date#new_start converts a date object into another with a new calendar reform"
11
+ fails "Date#commercial creates only Date objects for valid weeks" # Expected ArgumentError but got: NoMethodError (undefined method `commercial' for Date)
12
+ fails "Date#cwyear determines the commercial year" # NoMethodError: undefined method `cwyear' for #<Date:0x9f61a @date=2007-01-17 00:00:00 +0100 @start=2299161>
13
+ fails "Date#day_fraction determines the day fraction" # NoMethodError: undefined method `day_fraction' for #<Date:0x9f5c4 @date=2007-01-17 00:00:00 +0100 @start=2299161>
14
+ fails "Date#england converts a date object into another with the English calendar reform" # NoMethodError: undefined method `england' for #<Date:0x74ac6 @date=1582-10-15 00:00:00 +0124 @start=2299161>
15
+ fails "Date#gregorian converts a date object into another with the Gregorian calendar" # NoMethodError: undefined method `gregorian' for #<Date:0x74ada @date=1582-10-04 00:00:00 +0124 @start=2299161>
16
+ fails "Date#gregorian? marks a day after the calendar reform as Julian" # NoMethodError: undefined method `gregorian?' for #<Date:0x54cc @date=2007-02-27 00:00:00 +0100 @start=2299161>
17
+ fails "Date#gregorian? marks a day before the calendar reform as Julian" # NoMethodError: undefined method `gregorian?' for #<Date:0x54d4 @date=1007-02-27 00:00:00 +0124 @start=2299161>
18
+ fails "Date#hash returns the same value for equal dates" # Expected 624408 == 624412 to be truthy but was false
19
+ fails "Date#italy converts a date object into another with the Italian calendar reform" # NoMethodError: undefined method `italy' for #<Date:0x74abc @date=1582-10-04 00:00:00 +0124 @start=2361222>
20
+ fails "Date#julian converts a date object into another with the Julian calendar" # NoMethodError: undefined method `julian' for #<Date:0x74ad0 @date=1582-10-15 00:00:00 +0124 @start=2299161>
21
+ fails "Date#julian? marks a day before the calendar reform as Julian" # Expected false to be true
22
+ fails "Date#ld determines the Modified Julian day" # NoMethodError: undefined method `ld' for #<Date:0x9f5d8 @date=2007-01-17 00:00:00 +0100 @start=2299161>
23
+ fails "Date#mjd determines the Modified Julian day" # NoMethodError: undefined method `mjd' for #<Date:0x9f5ce @date=2007-01-17 00:00:00 +0100 @start=2299161>
24
+ fails "Date#new_start converts a date object into another with a new calendar reform" # ArgumentError: [Date#new_start] wrong number of arguments (given 0, expected 1)
25
25
  fails "Date#parse coerces using to_str" # ArgumentError: invalid date
26
- fails "Date#parse parses a day name into a Date object"
27
- fails "Date#parse parses a month day into a Date object"
28
- fails "Date#parse parses a month name into a Date object"
29
- fails "Date#parse raises a TypeError trying to parse non-String-like object" # ArgumentError: invalid date
30
- fails "Date#strftime should be able to print the commercial year with leading zeroes"
31
- fails "Date#strftime should be able to print the commercial year with only two digits"
32
- fails "Date#strftime should be able to show a full notation"
33
- fails "Date#strftime should be able to show the commercial week day"
34
- fails "Date#strftime should be able to show the number of seconds since the unix epoch for a date" # Expected "954964800" to equal "954979200"
35
- fails "Date#strftime should be able to show the timezone of the date with a : separator"
36
- fails "Date#strftime should be able to show the timezone with a : separator"
37
- fails "Date#strftime should be able to show the week number with the week starting on Sunday (%U) and Monday (%W)"
38
- fails "Date#strftime shows the number of milliseconds since epoch"
39
- fails "Date#strptime parses a century"
40
- fails "Date#strptime parses a commercial week day"
41
- fails "Date#strptime parses a commercial week"
42
- fails "Date#strptime parses a commercial year with leading zeroes"
43
- fails "Date#strptime parses a commercial year with only two digits"
44
- fails "Date#strptime parses a date given MM/DD/YY"
45
- fails "Date#strptime parses a date given as YYYY-MM-DD"
46
- fails "Date#strptime parses a date given in full notation"
47
- fails "Date#strptime parses a date with slashes"
48
- fails "Date#strptime parses a full date"
49
- fails "Date#strptime parses a full day name"
50
- fails "Date#strptime parses a full month name"
51
- fails "Date#strptime parses a month day with leading spaces"
52
- fails "Date#strptime parses a month day with leading zeroes"
53
- fails "Date#strptime parses a month with leading zeroes"
54
- fails "Date#strptime parses a short day name"
55
- fails "Date#strptime parses a short month name"
56
- fails "Date#strptime parses a week day"
57
- fails "Date#strptime parses a week number for a week starting on Monday"
58
- fails "Date#strptime parses a week number for a week starting on Sunday"
59
- fails "Date#strptime parses a year day with leading zeroes"
60
- fails "Date#strptime parses a year in YY format"
61
- fails "Date#strptime parses a year in YYYY format"
62
- fails "Date#strptime returns January 1, 4713 BCE when given no arguments"
63
- fails "Date#strptime uses the default format when not given a date format"
64
- fails "Date#valid_civil? handles negative months and days"
65
- fails "Date#valid_civil? returns false if it is not a valid civil date"
66
- fails "Date#valid_civil? returns true if it is a valid civil date"
67
- fails "Date#valid_commercial? handles negative week and day numbers"
68
- fails "Date#valid_commercial? returns false it is not a valid commercial date"
69
- fails "Date#valid_commercial? returns true if it is a valid commercial date"
70
- fails "Date#valid_date? handles negative months and days"
71
- fails "Date#valid_date? returns false if it is not a valid civil date"
72
- fails "Date#valid_date? returns true if it is a valid civil date"
26
+ fails "Date#parse parses a day name into a Date object" # NoMethodError: undefined method `cwyear' for #<Date:0x9fddc @start=2299161 @date=2022-12-09 00:00:00 +0100>
27
+ fails "Date#parse parses a month day into a Date object" # ArgumentError: invalid date
28
+ fails "Date#parse parses a month name into a Date object" # ArgumentError: invalid date
29
+ fails "Date#parse raises a TypeError trying to parse non-String-like object" # Expected TypeError but got: ArgumentError (invalid date)
30
+ fails "Date#strftime should be able to print the commercial year with leading zeroes" # Expected "200" == "0200" to be truthy but was false
31
+ fails "Date#strftime should be able to print the commercial year with only two digits" # TypeError: no implicit conversion of Range into Integer
32
+ fails "Date#strftime should be able to show a full notation" # Expected "%+" == "Sun Apr 9 00:00:00 +00:00 2000" to be truthy but was false
33
+ fails "Date#strftime should be able to show the commercial week day" # Expected "1" == "7" to be truthy but was false
34
+ fails "Date#strftime should be able to show the number of seconds since the unix epoch for a date" # Expected "954972000" == "954979200" to be truthy but was false
35
+ fails "Date#strftime should be able to show the timezone of the date with a : separator" # Expected "+0200" == "+0000" to be truthy but was false
36
+ fails "Date#strftime should be able to show the timezone with a : separator" # Expected "Central European Summer Time" == "+00:00" to be truthy but was false
37
+ fails "Date#strftime should be able to show the week number with the week starting on Sunday (%U) and Monday (%W)" # Expected "%U" == "14" to be truthy but was false
38
+ fails "Date#strftime shows the number of milliseconds since epoch" # Expected "%Q" == "0" to be truthy but was false
39
+ fails "Date#strptime parses a century" # NoMethodError: undefined method `strptime' for Date
40
+ fails "Date#strptime parses a commercial week day" # NoMethodError: undefined method `strptime' for Date
41
+ fails "Date#strptime parses a commercial week" # NoMethodError: undefined method `cwyear' for #<Date:0x6b2 @start=2299161 @date=2022-12-07 05:15:38 +0100>
42
+ fails "Date#strptime parses a commercial year with leading zeroes" # NoMethodError: undefined method `strptime' for Date
43
+ fails "Date#strptime parses a commercial year with only two digits" # NoMethodError: undefined method `strptime' for Date
44
+ fails "Date#strptime parses a date given MM/DD/YY" # NoMethodError: undefined method `strptime' for Date
45
+ fails "Date#strptime parses a date given as YYYY-MM-DD" # NoMethodError: undefined method `strptime' for Date
46
+ fails "Date#strptime parses a date given in full notation" # NoMethodError: undefined method `strptime' for Date
47
+ fails "Date#strptime parses a date with slashes" # NoMethodError: undefined method `strptime' for Date
48
+ fails "Date#strptime parses a full date" # NoMethodError: undefined method `strptime' for Date
49
+ fails "Date#strptime parses a full day name" # NoMethodError: undefined method `cwyear' for #<Date:0x6e6 @start=2299161 @date=2022-12-07 05:15:38 +0100>
50
+ fails "Date#strptime parses a full month name" # NoMethodError: undefined method `strptime' for Date
51
+ fails "Date#strptime parses a month day with leading spaces" # NoMethodError: undefined method `strptime' for Date
52
+ fails "Date#strptime parses a month day with leading zeroes" # NoMethodError: undefined method `strptime' for Date
53
+ fails "Date#strptime parses a month with leading zeroes" # NoMethodError: undefined method `strptime' for Date
54
+ fails "Date#strptime parses a short day name" # NoMethodError: undefined method `cwyear' for #<Date:0x6b8 @start=2299161 @date=2022-12-07 05:15:38 +0100>
55
+ fails "Date#strptime parses a short month name" # NoMethodError: undefined method `strptime' for Date
56
+ fails "Date#strptime parses a week day" # NoMethodError: undefined method `strptime' for Date
57
+ fails "Date#strptime parses a week number for a week starting on Monday" # NoMethodError: undefined method `strptime' for Date
58
+ fails "Date#strptime parses a week number for a week starting on Sunday" # NoMethodError: undefined method `strptime' for Date
59
+ fails "Date#strptime parses a year day with leading zeroes" # NoMethodError: undefined method `strptime' for Date
60
+ fails "Date#strptime parses a year in YY format" # NoMethodError: undefined method `strptime' for Date
61
+ fails "Date#strptime parses a year in YYYY format" # NoMethodError: undefined method `strptime' for Date
62
+ fails "Date#strptime returns January 1, 4713 BCE when given no arguments" # NoMethodError: undefined method `strptime' for Date
63
+ fails "Date#strptime uses the default format when not given a date format" # NoMethodError: undefined method `strptime' for Date
64
+ fails "Date#valid_civil? handles negative months and days" # NoMethodError: undefined method `valid_civil?' for Date
65
+ fails "Date#valid_civil? returns false if it is not a valid civil date" # NoMethodError: undefined method `valid_civil?' for Date
66
+ fails "Date#valid_civil? returns true if it is a valid civil date" # NoMethodError: undefined method `valid_civil?' for Date
67
+ fails "Date#valid_commercial? handles negative week and day numbers" # NoMethodError: undefined method `valid_commercial?' for Date
68
+ fails "Date#valid_commercial? returns false it is not a valid commercial date" # NoMethodError: undefined method `valid_commercial?' for Date
69
+ fails "Date#valid_commercial? returns true if it is a valid commercial date" # NoMethodError: undefined method `valid_commercial?' for Date
70
+ fails "Date#valid_date? handles negative months and days" # NoMethodError: undefined method `valid_date?' for Date
71
+ fails "Date#valid_date? returns false if it is not a valid civil date" # NoMethodError: undefined method `valid_date?' for Date
72
+ fails "Date#valid_date? returns true if it is a valid civil date" # NoMethodError: undefined method `valid_date?' for Date
73
73
  fails "Date._iso8601 returns an empty hash if the argument is a invalid Date" # NoMethodError: undefined method `_iso8601' for Date
74
74
  fails "Date._rfc3339 returns an empty hash if the argument is a invalid Date" # NoMethodError: undefined method `_rfc3339' for Date
75
75
  fails "Date.iso8601 parses YYYY-MM-DD into a Date object" # NoMethodError: undefined method `iso8601' for Date
76
76
  fails "Date.iso8601 parses YYYYMMDD into a Date object" # NoMethodError: undefined method `iso8601' for Date
77
77
  fails "Date.iso8601 parses a StringSubclass into a Date object" # NoMethodError: undefined method `iso8601' for Date
78
- fails "Date.iso8601 parses a Symbol into a Date object" # NoMethodError: undefined method `iso8601' for Date
79
78
  fails "Date.iso8601 parses a negative Date" # NoMethodError: undefined method `iso8601' for Date
80
- fails "Date.iso8601 raises a TypeError when passed an Object" # NoMethodError: undefined method `iso8601' for Date
81
- fails "Date.iso8601 raises an ArgumentError when passed a Symbol without a valid Date" # NoMethodError: undefined method `iso8601' for Date
82
- fails "Date.jd constructs a Date object if passed a Julian day"
83
- fails "Date.jd constructs a Date object if passed a negative number"
84
- fails "Date.jd returns a Date object representing Julian day 0 (-4712-01-01) if no arguments passed"
85
- fails "Date.julian_leap? determines whether a year is a leap year in the Julian calendar"
86
- fails "Date.julian_leap? determines whether a year is not a leap year in the Julian calendar"
87
- fails "Date.new creates a Date for different calendar reform dates"
88
- fails "Date.new doesn't create dates for invalid arguments"
89
- fails "Date.ordinal constructs a Date object from an ordinal date"
79
+ fails "Date.iso8601 raises a TypeError when passed an Object" # Expected TypeError but got: NoMethodError (undefined method `iso8601' for Date)
80
+ fails "Date.jd constructs a Date object if passed a Julian day" # NoMethodError: undefined method `jd' for Date
81
+ fails "Date.jd constructs a Date object if passed a negative number" # NoMethodError: undefined method `jd' for Date
82
+ fails "Date.jd returns a Date object representing Julian day 0 (-4712-01-01) if no arguments passed" # NoMethodError: undefined method `jd' for Date
83
+ fails "Date.julian_leap? determines whether a year is a leap year in the Julian calendar" # NoMethodError: undefined method `julian_leap?' for Date
84
+ fails "Date.julian_leap? determines whether a year is not a leap year in the Julian calendar" # NoMethodError: undefined method `julian_leap?' for Date
85
+ fails "Date.new creates a Date for different calendar reform dates" # Expected 5 == 15 to be truthy but was false
86
+ fails "Date.new doesn't create dates for invalid arguments" # Expected ArgumentError but no exception was raised (#<Date:0x48b08 @date=2001-01-31 00:00:00 +0100, @start=2299161> was returned)
87
+ fails "Date.ordinal constructs a Date object from an ordinal date" # NoMethodError: undefined method `ordinal' for Date
90
88
  fails "Date.valid_jd? returns false if passed false" # NoMethodError: undefined method `valid_jd?' for Date
91
- fails "Date.valid_jd? returns false if passed nil"
89
+ fails "Date.valid_jd? returns false if passed nil" # NoMethodError: undefined method `valid_jd?' for Date
92
90
  fails "Date.valid_jd? returns false if passed symbol" # NoMethodError: undefined method `valid_jd?' for Date
93
91
  fails "Date.valid_jd? returns true if passed a number value" # NoMethodError: undefined method `valid_jd?' for Date
94
- fails "Date.valid_ordinal? determines if the date is a valid ordinal date"
95
- fails "Date.valid_ordinal? handles negative day numbers"
92
+ fails "Date.valid_ordinal? determines if the date is a valid ordinal date" # NoMethodError: undefined method `valid_ordinal?' for Date
93
+ fails "Date.valid_ordinal? handles negative day numbers" # NoMethodError: undefined method `valid_ordinal?' for Date
96
94
  end
@@ -1,24 +1,24 @@
1
1
  # NOTE: run bin/format-filters after changing this file
2
2
  opal_filter "DateTime" do
3
3
  fails "DateTime#+ is able to add sub-millisecond precision values" # Expected 0 == 864864 to be truthy but was false
4
- fails "DateTime#- correctly calculates sub-millisecond time differences" # Expected 0 == 59.000001 to be truthy but was false
5
- fails "DateTime#- is able to subtract sub-millisecond precision values" # TypeError: TypeError
4
+ fails "DateTime#- correctly calculates sub-millisecond time differences" # Expected 5097600 == 59.000001 to be truthy but was false
5
+ fails "DateTime#- is able to subtract sub-millisecond precision values" # Expected 0 == (13717421/9600000000) to be truthy but was false
6
6
  fails "DateTime#hour adds 24 to negative hours" # ArgumentError: hour out of range: -10
7
7
  fails "DateTime#hour raises an error for Float" # Expected ArgumentError but no exception was raised (1 was returned)
8
- fails "DateTime#hour raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x74530 @date=-4712-01-01 00:00:00 UTC> was returned)
8
+ fails "DateTime#hour raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0xa6cca @date=-4712-01-01 00:00:00 UTC, @start=2299161> was returned)
9
9
  fails "DateTime#second adds 60 to negative values" # ArgumentError: sec out of range: -20
10
- fails "DateTime#second raises an error when minute is given as a rational" # Expected ArgumentError but no exception was raised (#<DateTime:0xa6acc @date=-4712-01-01 00:05:00 UTC> was returned)
11
- fails "DateTime#second raises an error, when the second is greater or equal than 60" # Expected ArgumentError but no exception was raised (#<DateTime:0xa69da @date=-4712-01-01 00:01:00 UTC> was returned)
12
- fails "DateTime#strftime returns the timezone with %Z" # Expected "Central European Summer Time" == "+02:00" to be truthy but was false
10
+ fails "DateTime#second raises an error when minute is given as a rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x4da4 @date=-4712-01-01 00:05:00 UTC, @start=2299161> was returned)
11
+ fails "DateTime#second raises an error, when the second is greater or equal than 60" # Expected ArgumentError but no exception was raised (#<DateTime:0x4c16 @date=-4712-01-01 00:01:00 UTC, @start=2299161> was returned)
12
+ fails "DateTime#strftime returns the timezone with %Z" # Expected "UTC" == "-00:00" to be truthy but was false
13
13
  fails "DateTime#strftime should be able to print the commercial year with leading zeroes" # Expected "200" == "0200" to be truthy but was false
14
14
  fails "DateTime#strftime should be able to print the commercial year with only two digits" # TypeError: no implicit conversion of Range into Integer
15
- fails "DateTime#strftime should be able to print the datetime with no argument" # ArgumentError: [Time#strftime] wrong number of arguments (given 0, expected 1)
15
+ fails "DateTime#strftime should be able to print the datetime with no argument" # Expected "2001-02-03T04:05:06-00:00" == "2001-02-03T04:05:06+00:00" to be truthy but was false
16
16
  fails "DateTime#strftime should be able to show a full notation" # Expected "%+" == "Sat Feb 3 04:05:06 +00:00 2001" to be truthy but was false
17
17
  fails "DateTime#strftime should be able to show default Logger format" # Expected "2001-12-03T04:05:06.000000 " == "2001-12-03T04:05:06.100000 " to be truthy but was false
18
18
  fails "DateTime#strftime should be able to show the commercial week day" # Expected "1" == "7" to be truthy but was false
19
19
  fails "DateTime#strftime should be able to show the number of seconds since the unix epoch" # ArgumentError: Opal doesn't support other types for a timezone argument than Integer and String
20
- fails "DateTime#strftime should be able to show the timezone of the date with a : separator" # Expected "+0200" == "+0000" to be truthy but was false
21
- fails "DateTime#strftime should be able to show the timezone with a : separator" # Expected "Central European Standard Time" == "+00:00" to be truthy but was false
20
+ fails "DateTime#strftime should be able to show the timezone of the date with a : separator" # Expected "-0000" == "+0000" to be truthy but was false
21
+ fails "DateTime#strftime should be able to show the timezone with a : separator" # Expected "UTC" == "+00:00" to be truthy but was false
22
22
  fails "DateTime#strftime should be able to show the week number with the week starting on Sunday (%U) and Monday (%W)" # Expected "%U" == "14" to be truthy but was false
23
23
  fails "DateTime#strftime shows the number of milliseconds since epoch" # Expected "%Q" == "0" to be truthy but was false
24
24
  fails "DateTime#strftime with %L formats the milliseconds of the second" # Expected "000" == "100" to be truthy but was false
@@ -36,30 +36,30 @@ opal_filter "DateTime" do
36
36
  fails "DateTime#strftime with %z formats a time with fixed positive offset as '+HHMM'" # ArgumentError: Opal doesn't support other types for a timezone argument than Integer and String
37
37
  fails "DateTime#to_time preserves the same time regardless of local time or zone" # Expected 180 == 10800 to be truthy but was false
38
38
  fails "DateTime.min adds 60 to negative minutes" # ArgumentError: min out of range: -20
39
- fails "DateTime.min raises an error for Float" # Expected ArgumentError but no exception was raised (#<DateTime:0x1c098 @date=-4712-01-01 00:05:00 UTC> was returned)
40
- fails "DateTime.min raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x1bee2 @date=-4712-01-01 02:00:00 UTC> was returned)
39
+ fails "DateTime.min raises an error for Float" # Expected ArgumentError but no exception was raised (#<DateTime:0x55fc @date=-4712-01-01 00:05:00 UTC, @start=2299161> was returned)
40
+ fails "DateTime.min raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x52ea @date=-4712-01-01 00:05:00 UTC, @start=2299161> was returned)
41
41
  fails "DateTime.minute adds 60 to negative minutes" # ArgumentError: min out of range: -20
42
- fails "DateTime.minute raises an error for Float" # Expected ArgumentError but no exception was raised (#<DateTime:0x365c2 @date=-4712-01-01 00:05:00 UTC> was returned)
43
- fails "DateTime.minute raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x3669a @date=-4712-01-01 02:00:00 UTC> was returned)
44
- fails "DateTime.new takes the seventh argument as an offset" # Expected 0.000008101851851851852 == 0.7 to be truthy but was false
42
+ fails "DateTime.minute raises an error for Float" # Expected ArgumentError but no exception was raised (#<DateTime:0x6922 @date=-4712-01-01 00:05:00 UTC, @start=2299161> was returned)
43
+ fails "DateTime.minute raises an error for Rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x6618 @date=-4712-01-01 02:00:00 UTC, @start=2299161> was returned)
44
+ fails "DateTime.new takes the seventh argument as an offset" # Expected 1.3503086419753086e-7 == 0.7 to be truthy but was false
45
45
  fails "DateTime.now grabs the local timezone" # Expected "+01:00" == "-08:00" to be truthy but was false
46
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format parses YYYY-MM-DDTHH:MM:SS into a DateTime object" # Expected #<DateTime:0x45dd0 @date=2012-11-08 15:43:59 +0100, @start=2299161> == #<DateTime:0x45dd4 @date=2012-11-08 15:43:59 UTC, @start=2299161> to be truthy but was false
47
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid day values" # Expected ArgumentError but no exception was raised (#<DateTime:0x18d2e @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN> was returned)
48
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid hour values" # Expected ArgumentError but no exception was raised (#<DateTime:0x18e00 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN> was returned)
49
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid minute values" # Expected ArgumentError but no exception was raised (#<DateTime:0x18ed8 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN> was returned)
50
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid month values" # Expected ArgumentError but no exception was raised (#<DateTime:0x18c5c @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN> was returned)
51
- fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid second values" # Expected ArgumentError but no exception was raised (#<DateTime:0x18b8a @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN> was returned)
52
- fails "DateTime.parse parses DD as month day number" # Expected #<DateTime:0x18582 @date=2001-10-01 00:00:00 +0200> == #<DateTime:0x1858a @date=2022-02-10 00:00:00 +0100> to be truthy but was false
53
- fails "DateTime.parse parses DDD as year day number" # Expected #<DateTime:0x18818 @date=100-01-01 00:00:00 +0124> == #<DateTime:0x18820 @date=2022-04-10 00:00:00 +0200> to be truthy but was false
54
- fails "DateTime.parse parses MMDD as month and day" # Expected #<DateTime:0x183d0 @date=1108-01-01 00:00:00 +0124> == #<DateTime:0x183d6 @date=2022-11-08 00:00:00 +0100> to be truthy but was false
55
- fails "DateTime.parse parses YYDDD as year and day number in 1969--2068" # Expected #<DateTime:0x189cc @date=10100-01-01 00:00:00 +0100> == #<DateTime:0x189d0 @date=2010-04-10 00:00:00 +0200> to be truthy but was false
56
- fails "DateTime.parse parses YYMMDD as year, month and day in 1969--2068" # Expected #<DateTime:0x18216 @date=201023-01-01 00:00:00 +0100> == #<DateTime:0x1821a @date=2020-10-23 00:00:00 +0200> to be truthy but was false
57
- fails "DateTime.parse parses a day name into a DateTime object" # NoMethodError: undefined method `cwyear' for #<DateTime:0x18808 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN>
58
- fails "DateTime.parse throws an argument error for a single digit" # Expected ArgumentError but no exception was raised (#<DateTime:0x18738 @date=2001-01-01 00:00:00 +0100> was returned)
46
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format parses YYYY-MM-DDTHH:MM:SS into a DateTime object" # Expected #<DateTime:0x8a68 @date=2012-11-08 15:43:59 +0100, @start=2299161> == #<DateTime:0x8a6c @date=2012-11-08 15:43:59 UTC, @start=2299161> to be truthy but was false
47
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid day values" # Expected ArgumentError but no exception was raised (#<DateTime:0x8d76 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN, @start=2299161> was returned)
48
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid hour values" # Expected ArgumentError but no exception was raised (#<DateTime:0x88ea @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN, @start=2299161> was returned)
49
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid minute values" # Expected ArgumentError but no exception was raised (#<DateTime:0x9076 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN, @start=2299161> was returned)
50
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid month values" # Expected ArgumentError but no exception was raised (#<DateTime:0x8ef6 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN, @start=2299161> was returned)
51
+ fails "DateTime.parse YYYY-MM-DDTHH:MM:SS format throws an argument error for invalid second values" # Expected ArgumentError but no exception was raised (#<DateTime:0x876a @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN, @start=2299161> was returned)
52
+ fails "DateTime.parse parses DD as month day number" # Expected #<DateTime:0x8146 @date=2001-10-01 00:00:00 +0200, @start=2299161> == #<DateTime:0x814e @date=2022-12-10 00:00:00 UTC, @start=2299161> to be truthy but was false
53
+ fails "DateTime.parse parses DDD as year day number" # Expected #<DateTime:0x799e @date=100-01-01 00:00:00 +0124, @start=2299161> == #<DateTime:0x79a6 @date=2022-04-10 00:00:00 UTC, @start=2299161> to be truthy but was false
54
+ fails "DateTime.parse parses MMDD as month and day" # Expected #<DateTime:0x7cb8 @date=1108-01-01 01:24:00 +0124, @start=2299161> == #<DateTime:0x7cbe @date=2022-11-08 00:00:00 UTC, @start=2299161> to be truthy but was false
55
+ fails "DateTime.parse parses YYDDD as year and day number in 1969--2068" # Expected #<DateTime:0x7684 @date=10100-01-01 00:00:00 +0100, @start=2299161> == #<DateTime:0x7688 @date=2010-04-10 00:00:00 UTC, @start=2299161> to be truthy but was false
56
+ fails "DateTime.parse parses YYMMDD as year, month and day in 1969--2068" # Expected #<DateTime:0x8456 @date=201023-01-01 00:00:00 +0100, @start=2299161> == #<DateTime:0x845a @date=2020-10-23 00:00:00 UTC, @start=2299161> to be truthy but was false
57
+ fails "DateTime.parse parses a day name into a DateTime object" # NoMethodError: undefined method `cwyear' for #<DateTime:0x767c @start=2299161 @date=NaN-NaN-NaN NaN:NaN:NaN -NaNNaN>
58
+ fails "DateTime.parse throws an argument error for a single digit" # Expected ArgumentError but no exception was raised (#<DateTime:0x7fc8 @date=2001-01-01 00:00:00 +0100, @start=2299161> was returned)
59
59
  fails "DateTime.parse(.) parses DD.MM.YYYY into a DateTime object" # Expected 10 == 1 to be truthy but was false
60
60
  fails "DateTime.parse(.) parses YY.MM.DD into a DateTime object using the year 20YY" # Expected 2007 == 2010 to be truthy but was false
61
61
  fails "DateTime.parse(.) parses YY.MM.DD using the year digits as 20YY when given true as additional argument" # ArgumentError: [DateTime.parse] wrong number of arguments (given 2, expected 1)
62
62
  fails "DateTime.sec adds 60 to negative values" # ArgumentError: sec out of range: -20
63
- fails "DateTime.sec raises an error when minute is given as a rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x1bccc @date=-4712-01-01 00:05:00 UTC> was returned)
64
- fails "DateTime.sec raises an error, when the second is greater or equal than 60" # Expected ArgumentError but no exception was raised (#<DateTime:0x1bdb8 @date=-4712-01-01 00:01:00 UTC> was returned)
63
+ fails "DateTime.sec raises an error when minute is given as a rational" # Expected ArgumentError but no exception was raised (#<DateTime:0x3e5a @date=-4712-01-01 00:05:00 UTC, @start=2299161> was returned)
64
+ fails "DateTime.sec raises an error, when the second is greater or equal than 60" # Expected ArgumentError but no exception was raised (#<DateTime:0x3cbe @date=-4712-01-01 00:01:00 UTC, @start=2299161> was returned)
65
65
  end
@@ -4,8 +4,6 @@ opal_filter "Delegate" do
4
4
  fails "Delegator#== is delegated in general" # Exception: Maximum call stack size exceeded
5
5
  fails "Delegator#method raises a NameError if method is no longer valid because object has changed" # Expected NameError but no exception was raised ("foo" was returned)
6
6
  fails "Delegator#method returns a method that respond_to_missing?" # NameError: undefined method `pub_too' for class `DelegateSpecs::Simple'
7
- fails "Delegator#methods includes instance methods of the Delegator class" # Expected ["singleton_method", "pub", "respond_to_missing?", "method_missing", "priv", "prot", "to_json", "guard", "guard_not", "with_feature", "without_feature", "new_fd", "new_io", "should", "should_not", "version_is", "ruby_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_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", "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", "unpack_format", "be_close_to_matrix", "example_instance_method_of_object", "check_autoload", "main_public_method", "main_public_method2", "main_private_method", "main_private_method2", "lang_send_rest_len", "toplevel_define_other_method", "some_toplevel_method", "public_toplevel_method", "defined_specs_method", "defined_specs_receiver", "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", "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?", "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", "freeze", "frozen?", "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", "__marshal__"] to include "extra"
7
+ fails "Delegator#methods includes instance methods of the Delegator class" # Expected ["singleton_method", "pub", "respond_to_missing?", "method_missing", "priv", "prot", "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", "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", "unpack_format", "toplevel_define_other_method", "some_toplevel_method", "public_toplevel_method", "shellsplit", "shellwords", "shellescape", "shelljoin", "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?", "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", "__marshal__"] to include "extra"
8
8
  fails "Delegator#tap yield the delegator object" # Expected 0 == 1 to be truthy but was false
9
- fails "SimpleDelegator can be marshalled with its instance variables intact" # Exception: Cannot create property 'foo' on string 'hello'
10
- fails "SimpleDelegator can be marshalled" # Expected String == SimpleDelegator to be truthy but was false
11
9
  end