mvz-live_ast 2.0.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES.rdoc +9 -0
- data/README.rdoc +14 -0
- data/lib/live_ast/base.rb +7 -9
- data/lib/live_ast/irb_spy.rb +1 -1
- data/lib/live_ast/replace_caller.rb +14 -0
- data/lib/live_ast/version.rb +1 -1
- metadata +85 -120
- data/Rakefile +0 -62
- data/devel/levitate.rb +0 -184
- data/devel/levitate_config.rb +0 -4
- data/test/alias_test.rb +0 -25
- data/test/ast_eval/ast_eval_test.rb +0 -13
- data/test/ast_load/ast_load_test.rb +0 -47
- data/test/attr_test.rb +0 -26
- data/test/backtrace_test.rb +0 -161
- data/test/base/noninvasive_test.rb +0 -55
- data/test/base/reload_test.rb +0 -43
- data/test/covert_define_method_test.rb +0 -25
- data/test/def_test.rb +0 -37
- data/test/define_method_test.rb +0 -69
- data/test/define_singleton_method_test.rb +0 -17
- data/test/encoding_test/bad.rb +0 -1
- data/test/encoding_test/cp932.rb +0 -6
- data/test/encoding_test/default.rb +0 -5
- data/test/encoding_test/eucjp.rb +0 -6
- data/test/encoding_test/koi8.rb +0 -6
- data/test/encoding_test/koi8_shebang.rb +0 -7
- data/test/encoding_test/koi8_with_utf8bom.rb +0 -6
- data/test/encoding_test/usascii.rb +0 -6
- data/test/encoding_test/usascii_with_utf8bom.rb +0 -6
- data/test/encoding_test/utf8.rb +0 -6
- data/test/encoding_test/utf8bom.rb +0 -6
- data/test/encoding_test/utf8bom_only.rb +0 -5
- data/test/encoding_test/utf8dos.rb +0 -6
- data/test/encoding_test/utf8mac.rb +0 -6
- data/test/encoding_test/utf8mac_alt.rb +0 -6
- data/test/encoding_test/utf8unix.rb +0 -6
- data/test/encoding_test.rb +0 -54
- data/test/error_test.rb +0 -118
- data/test/eval_test.rb +0 -271
- data/test/flush_cache_test.rb +0 -102
- data/test/full/ast_reload_test.rb +0 -41
- data/test/full/replace_eval_test.rb +0 -433
- data/test/irb_test.rb +0 -43
- data/test/lambda_test.rb +0 -65
- data/test/load_path_test.rb +0 -77
- data/test/load_test.rb +0 -125
- data/test/main.rb +0 -134
- data/test/nested_test.rb +0 -31
- data/test/readme_test.rb +0 -16
- data/test/recursive_eval_test.rb +0 -53
- data/test/redefine_method_test.rb +0 -85
- data/test/rubygems_test.rb +0 -27
- data/test/rubyspec_test.rb +0 -39
- data/test/singleton_test.rb +0 -27
- data/test/stdlib_test.rb +0 -15
- data/test/thread_test.rb +0 -45
- data/test/to_ast/to_ast_feature_test.rb +0 -13
- data/test/to_ruby/to_ruby_feature_test.rb +0 -13
- data/test/to_ruby/to_ruby_test.rb +0 -101
@@ -1,101 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "main"
|
4
|
-
|
5
|
-
if LiveAST.parser::Test.respond_to?(:unparser_matches_ruby2ruby?) &&
|
6
|
-
LiveAST.parser::Test.unparser_matches_ruby2ruby?
|
7
|
-
class ToRubyTest < RegularTest
|
8
|
-
def setup
|
9
|
-
super
|
10
|
-
require "live_ast/to_ruby"
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_lambda_one
|
14
|
-
src = %{lambda { "moo" }}
|
15
|
-
dst = ast_eval(src, binding).to_ruby
|
16
|
-
assert_equal src, dst
|
17
|
-
end
|
18
|
-
|
19
|
-
def test_lambda_two
|
20
|
-
src = %{lambda { |x| (x ** 2) }}
|
21
|
-
dst = ast_eval(src, binding).to_ruby
|
22
|
-
assert_equal src, dst
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_lambda_three
|
26
|
-
src = %{lambda { |x, y| (x + y) }}
|
27
|
-
dst = ast_eval(src, binding).to_ruby
|
28
|
-
assert_equal src, dst
|
29
|
-
end
|
30
|
-
|
31
|
-
def test_proc_one
|
32
|
-
src = %{proc { "moo" }}
|
33
|
-
dst = ast_eval(src, binding).to_ruby
|
34
|
-
assert_equal src, dst
|
35
|
-
end
|
36
|
-
|
37
|
-
def test_proc_two
|
38
|
-
src = %{proc { |x| (x ** 2) }}
|
39
|
-
dst = ast_eval(src, binding).to_ruby
|
40
|
-
assert_equal src, dst
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_proc_three
|
44
|
-
src = %{proc { |x, y| (x * y) }}
|
45
|
-
dst = ast_eval(src, binding).to_ruby
|
46
|
-
assert_equal src, dst
|
47
|
-
end
|
48
|
-
|
49
|
-
def test_block_one
|
50
|
-
src = %{return_block { "moo" }}
|
51
|
-
dst = ast_eval(src, binding).to_ruby
|
52
|
-
assert_equal src, dst
|
53
|
-
end
|
54
|
-
|
55
|
-
def test_block_two
|
56
|
-
src = %{return_block { |x| (x ** 2) }}
|
57
|
-
dst = ast_eval(src, binding).to_ruby
|
58
|
-
assert_equal src, dst
|
59
|
-
end
|
60
|
-
|
61
|
-
def test_block_three
|
62
|
-
src = %{return_block { |x, y| (x - y) }}
|
63
|
-
dst = ast_eval(src, binding).to_ruby
|
64
|
-
assert_equal src, dst
|
65
|
-
end
|
66
|
-
|
67
|
-
def test_method_one
|
68
|
-
src = %{def f\n "moo"\nend}
|
69
|
-
dst = Class.new do
|
70
|
-
ast_eval(src, binding)
|
71
|
-
end.instance_method(:f).to_ruby
|
72
|
-
assert_equal src, dst
|
73
|
-
end
|
74
|
-
|
75
|
-
def test_method_two
|
76
|
-
src = %{def f(x)\n (x ** 2)\nend}
|
77
|
-
dst = Class.new do
|
78
|
-
ast_eval(src, binding)
|
79
|
-
end.instance_method(:f).to_ruby
|
80
|
-
assert_equal src, dst
|
81
|
-
end
|
82
|
-
|
83
|
-
def test_method_three
|
84
|
-
src = %{def f(x, y)\n (x / y)\nend}
|
85
|
-
dst = Class.new do
|
86
|
-
ast_eval(src, binding)
|
87
|
-
end.instance_method(:f).to_ruby
|
88
|
-
assert_equal src, dst
|
89
|
-
end
|
90
|
-
|
91
|
-
def test_to_ast_after_to_ruby
|
92
|
-
src = %{lambda { "moo" }}
|
93
|
-
expected_ast = ast_eval(src, binding).to_ast
|
94
|
-
|
95
|
-
lmb = ast_eval(src, binding)
|
96
|
-
lmb.to_ruby
|
97
|
-
|
98
|
-
assert_equal expected_ast, lmb.to_ast
|
99
|
-
end
|
100
|
-
end
|
101
|
-
end
|