ruby-debug 0.10.0 → 0.10.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.
Files changed (152) hide show
  1. data/CHANGES +94 -2
  2. data/ChangeLog +5225 -0
  3. data/README +30 -1
  4. data/Rakefile +55 -24
  5. data/bin/rdebug +249 -128
  6. data/cli/ruby-debug/command.rb +30 -3
  7. data/cli/ruby-debug/commands/breakpoints.rb +54 -24
  8. data/cli/ruby-debug/commands/catchpoint.rb +13 -12
  9. data/cli/ruby-debug/commands/condition.rb +49 -0
  10. data/cli/ruby-debug/commands/continue.rb +32 -0
  11. data/cli/ruby-debug/commands/control.rb +19 -43
  12. data/cli/ruby-debug/commands/disassemble.RB +38 -0
  13. data/cli/ruby-debug/commands/display.rb +1 -1
  14. data/cli/ruby-debug/commands/edit.rb +48 -0
  15. data/cli/ruby-debug/commands/enable.rb +78 -35
  16. data/cli/ruby-debug/commands/eval.rb +6 -5
  17. data/cli/ruby-debug/commands/finish.rb +42 -0
  18. data/cli/ruby-debug/commands/frame.rb +64 -33
  19. data/cli/ruby-debug/commands/help.rb +19 -15
  20. data/cli/ruby-debug/commands/info.rb +295 -36
  21. data/cli/ruby-debug/commands/irb.rb +3 -1
  22. data/cli/ruby-debug/commands/list.rb +27 -50
  23. data/cli/ruby-debug/commands/quit.rb +38 -0
  24. data/cli/ruby-debug/commands/reload.rb +40 -0
  25. data/cli/ruby-debug/commands/save.rb +80 -0
  26. data/cli/ruby-debug/commands/{settings.rb → set.rb} +50 -12
  27. data/cli/ruby-debug/commands/show.rb +83 -27
  28. data/cli/ruby-debug/commands/source.rb +36 -0
  29. data/cli/ruby-debug/commands/stepping.rb +36 -72
  30. data/cli/ruby-debug/commands/threads.rb +32 -23
  31. data/cli/ruby-debug/commands/variables.rb +34 -4
  32. data/cli/ruby-debug/helper.rb +10 -75
  33. data/cli/ruby-debug/interface.rb +72 -9
  34. data/cli/ruby-debug/processor.rb +203 -100
  35. data/doc/rdebug.1 +7 -2
  36. data/rdbg.rb +33 -0
  37. data/test/{test-ruby-debug-base.rb → base/base.rb} +27 -29
  38. data/test/base/binding.rb +31 -0
  39. data/test/base/catchpoint.rb +26 -0
  40. data/test/base/load.rb +40 -0
  41. data/test/data/annotate.cmd +29 -0
  42. data/test/data/annotate.right +137 -0
  43. data/test/data/break_bad.cmd +18 -0
  44. data/test/data/break_bad.right +28 -0
  45. data/test/data/breakpoints.cmd +38 -0
  46. data/test/data/breakpoints.right +98 -0
  47. data/test/data/condition.cmd +28 -0
  48. data/test/data/condition.right +65 -0
  49. data/test/data/ctrl.cmd +23 -0
  50. data/test/data/ctrl.right +69 -0
  51. data/test/{display.cmd → data/display.cmd} +7 -1
  52. data/test/{display.right → data/display.right} +13 -6
  53. data/test/data/dollar-0.right +2 -0
  54. data/test/data/dollar-0a.right +2 -0
  55. data/test/data/dollar-0b.right +2 -0
  56. data/test/data/edit.cmd +12 -0
  57. data/test/data/edit.right +19 -0
  58. data/test/{breakpoints.cmd → data/emacs_basic.cmd} +0 -0
  59. data/test/{breakpoints.right → data/emacs_basic.right} +24 -12
  60. data/test/data/enable.cmd +20 -0
  61. data/test/data/enable.right +36 -0
  62. data/test/data/finish.cmd +16 -0
  63. data/test/data/finish.right +43 -0
  64. data/test/{frame.cmd → data/frame.cmd} +2 -0
  65. data/test/{frame.right → data/frame.right} +8 -2
  66. data/test/{help.cmd → data/help.cmd} +8 -0
  67. data/test/data/help.right +21 -0
  68. data/test/data/history.right +7 -0
  69. data/test/data/info-thread.cmd +13 -0
  70. data/test/data/info-thread.right +37 -0
  71. data/test/data/info-var-bug2.cmd +5 -0
  72. data/test/data/info-var-bug2.right +10 -0
  73. data/test/{info-var.cmd → data/info-var.cmd} +3 -3
  74. data/test/{info-var.right → data/info-var.right} +20 -15
  75. data/test/{info.cmd → data/info.cmd} +10 -1
  76. data/test/data/info.right +65 -0
  77. data/test/data/linetrace.cmd +6 -0
  78. data/test/data/linetrace.right +32 -0
  79. data/test/data/linetracep.cmd +7 -0
  80. data/test/data/linetracep.right +25 -0
  81. data/test/data/list.cmd +19 -0
  82. data/test/data/list.right +127 -0
  83. data/test/data/noquit.right +1 -0
  84. data/test/data/output.cmd +6 -0
  85. data/test/data/output.right +41 -0
  86. data/test/data/post-mortem-next.cmd +8 -0
  87. data/test/data/post-mortem-next.right +14 -0
  88. data/test/data/post-mortem-osx.right +31 -0
  89. data/test/data/post-mortem.cmd +13 -0
  90. data/test/data/post-mortem.right +31 -0
  91. data/test/{quit.cmd → data/quit.cmd} +2 -5
  92. data/test/data/quit.right +9 -0
  93. data/test/data/raise.cmd +11 -0
  94. data/test/data/raise.right +26 -0
  95. data/test/{setshow.cmd → data/setshow.cmd} +0 -1
  96. data/test/{setshow.right → data/setshow.right} +0 -1
  97. data/test/data/source.cmd +5 -0
  98. data/test/data/source.right +15 -0
  99. data/test/{stepping.cmd → data/stepping.cmd} +6 -2
  100. data/test/{stepping.right → data/stepping.right} +13 -3
  101. data/test/data/test-init-cygwin.right +7 -0
  102. data/test/data/test-init-osx.right +4 -0
  103. data/test/data/test-init.right +5 -0
  104. data/test/data/trace.right +23 -0
  105. data/test/dollar-0.rb +5 -0
  106. data/test/except-bug2.rb +7 -0
  107. data/test/gcd-dbg-nox.rb +31 -0
  108. data/test/gcd-dbg.rb +30 -0
  109. data/test/helper.rb +44 -14
  110. data/test/info-var-bug.rb +2 -0
  111. data/test/info-var-bug2.rb +2 -0
  112. data/test/null.rb +1 -0
  113. data/test/output.rb +2 -0
  114. data/test/pm-base.rb +22 -0
  115. data/test/pm.rb +11 -0
  116. data/test/raise.rb +3 -0
  117. data/test/tdebug.rb +88 -40
  118. data/test/test-annotate.rb +25 -0
  119. data/test/test-break-bad.rb +25 -0
  120. data/test/test-breakpoints.rb +14 -17
  121. data/test/test-condition.rb +25 -0
  122. data/test/test-ctrl.rb +54 -0
  123. data/test/test-display.rb +15 -15
  124. data/test/test-dollar-0.rb +39 -0
  125. data/test/test-edit.rb +26 -0
  126. data/test/test-emacs-basic.rb +26 -0
  127. data/test/test-enable.rb +25 -0
  128. data/test/test-finish.rb +34 -0
  129. data/test/test-frame.rb +15 -16
  130. data/test/test-help.rb +34 -18
  131. data/test/test-hist.rb +68 -0
  132. data/test/test-info-thread.rb +32 -0
  133. data/test/test-info-var.rb +28 -14
  134. data/test/test-info.rb +15 -17
  135. data/test/test-init.rb +41 -0
  136. data/test/test-list.rb +25 -0
  137. data/test/test-output.rb +26 -0
  138. data/test/test-pm.rb +46 -0
  139. data/test/test-quit.rb +19 -17
  140. data/test/test-raise.rb +25 -0
  141. data/test/test-setshow.rb +14 -13
  142. data/test/test-source.rb +25 -0
  143. data/test/test-stepping.rb +14 -14
  144. data/test/test-trace.rb +63 -0
  145. data/test/thread1.rb +26 -0
  146. metadata +125 -31
  147. data/cli/ruby-debug/commands/script.rb +0 -64
  148. data/runner.sh +0 -7
  149. data/test/help.right +0 -4
  150. data/test/info.right +0 -35
  151. data/test/quit.right +0 -22
  152. data/test/test-columnize.rb +0 -46
data/test/test-edit.rb ADDED
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test 'edit' command handling.
8
+ class TestEdit < Test::Unit::TestCase
9
+
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
16
+ def test_basic
17
+ testname='edit'
18
+ Dir.chdir(@@SRC_DIR) do
19
+ script = File.join('data', testname + '.cmd')
20
+ ENV['EDITOR']='echo FAKE-EDITOR '
21
+ assert_equal(true,
22
+ run_debugger(testname,
23
+ "--script #{script} -- gcd.rb 3 5"))
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test the --emacs-basic option.
8
+ class TestEmacsBasic < Test::Unit::TestCase
9
+
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper.rb')
14
+
15
+ include TestHelper
16
+
17
+ def test_basic
18
+ testname='emacs_basic'
19
+ Dir.chdir(@@SRC_DIR) do
20
+ script = File.join('data', testname + '.cmd')
21
+ assert_equal(true,
22
+ run_debugger(testname,
23
+ "--emacs-basic --script #{script} -- gcd.rb 3 5"))
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test enable and disable commands
8
+ class TestEnable < Test::Unit::TestCase
9
+
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
16
+ def test_basic
17
+ testname='enable'
18
+ Dir.chdir(@@SRC_DIR) do
19
+ script = File.join('data', testname + '.cmd')
20
+ assert_equal(true,
21
+ run_debugger(testname,
22
+ "--script #{script} -- gcd.rb 3 5"))
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # require 'rubygems'
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test finish command
8
+ class TestFinish < Test::Unit::TestCase
9
+
10
+ @@src_dir = File.dirname(__FILE__) unless
11
+ defined?(@@src_dir)
12
+
13
+ require File.join(@@src_dir, 'helper')
14
+ include TestHelper
15
+
16
+ def test_basic
17
+ testname='finish'
18
+ # Ruby 1.8.6 and earlier have a trace-line number bug for return
19
+ # statements.
20
+ filter = Proc.new{|got_lines, correct_lines|
21
+ [got_lines[31], got_lines[34]].flatten.each do |s|
22
+ s.sub!(/gcd.rb:\d+/, 'gcd.rb:13')
23
+ end
24
+ got_lines[32] = 'return a'
25
+ }
26
+ Dir.chdir(@@src_dir) do
27
+ script = File.join('data', testname + '.cmd')
28
+ assert_equal(true,
29
+ run_debugger(testname,
30
+ "--script #{script} -- gcd.rb 3 5",
31
+ nil, filter))
32
+ end
33
+ end
34
+ end
data/test/test-frame.rb CHANGED
@@ -1,27 +1,26 @@
1
1
  #!/usr/bin/env ruby
2
- require "test/unit"
3
- require "fileutils"
2
+ require 'test/unit'
4
3
 
5
- # require "rubygems"
6
- # require "ruby-debug"; Debugger.start
7
-
8
- SRC_DIR = File.expand_path(File.dirname(__FILE__)) + "/" unless
9
- defined?(SRC_DIR)
10
-
11
- require File.join(SRC_DIR, "helper.rb")
12
-
13
- include TestHelper
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
14
6
 
15
7
  # Test frame commands
16
8
  class TestFrame < Test::Unit::TestCase
17
- require 'stringio'
18
9
 
19
- # Test commands in stepping.rb
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
16
+ # Test commands in frame.rb
20
17
  def test_basic
21
- Dir.chdir(SRC_DIR) do
18
+ testname='frame'
19
+ Dir.chdir(@@SRC_DIR) do
20
+ script = File.join('data', testname + '.cmd')
22
21
  assert_equal(true,
23
- run_debugger("frame",
24
- "--script frame.cmd -- gcd.rb 3 5"))
22
+ run_debugger(testname,
23
+ "--script #{script} -- gcd.rb 3 5"))
25
24
  end
26
25
  end
27
26
  end
data/test/test-help.rb CHANGED
@@ -1,18 +1,21 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- # require "rubygems"
4
- # require "ruby-debug" ; Debugger.start
3
+ # begin require 'rubygems' rescue LoadError end
4
+ # require 'ruby-debug' ; Debugger.start
5
5
 
6
- require "test/unit"
7
- SRC_DIR = File.expand_path(File.dirname(__FILE__)) + "/" unless
6
+ require 'test/unit'
7
+ SRC_DIR = File.dirname(__FILE__) unless
8
8
  defined?(SRC_DIR)
9
9
  %w(ext lib cli).each do |dir|
10
- $: << File.join(SRC_DIR, "..", dir)
10
+ $:.unshift File.join(SRC_DIR, '..', dir)
11
11
  end
12
- require "ruby_debug"
13
- require SRC_DIR + "/../cli/ruby-debug.rb"
12
+ require 'ruby_debug'
13
+
14
+ require File.join(SRC_DIR, '..', 'cli', 'ruby-debug')
15
+ $:.shift; $:.shift; $:.shift
14
16
 
15
17
  def cheap_diff(got_lines, correct_lines)
18
+ puts got_lines if $DEBUG
16
19
  correct_lines.each_with_index do |line, i|
17
20
  correct_lines[i].chomp!
18
21
  if got_lines[i] != correct_lines[i]
@@ -21,24 +24,37 @@ def cheap_diff(got_lines, correct_lines)
21
24
  puts "need: #{correct_lines[i]}"
22
25
  return false
23
26
  end
24
- return correct_lines.size == got_lines.size
27
+ if correct_lines.size != got_lines.size
28
+ puts("difference in number of lines: " +
29
+ "#{correct_lines.size} vs. #{got_lines.size}")
30
+ return false
31
+ end
32
+ return true
25
33
  end
26
34
  end
27
35
 
28
- # Test of C extension ruby_debug.so
29
- class TestCmd < Test::Unit::TestCase
36
+ # Test Help commands
37
+ class TestHelp < Test::Unit::TestCase
30
38
  require 'stringio'
31
39
 
32
40
  # Test initial variables and setting/getting state.
33
41
  def test_basic
34
42
  testbase = 'help'
35
- op = StringIO.new("", "w")
36
- script = File.join(SRC_DIR, "#{testbase}.cmd")
37
- Debugger.const_set('Version', "unit testing")
38
- Debugger.run_script(script, op)
39
- got_lines = op.string.split("\n")
40
- right_file = File.join(SRC_DIR, "#{testbase}.right")
41
- correct_lines = File.readlines(right_file)
42
- assert cheap_diff(got_lines, correct_lines)
43
+ op = StringIO.new('', 'w')
44
+ Dir.chdir(SRC_DIR) do
45
+ script = File.join('data', "#{testbase}.cmd")
46
+ Debugger.const_set('Version', 'unit testing')
47
+ Debugger.run_script(script, op)
48
+ got_lines = op.string.split("\n")
49
+ right_file = File.join('data', "#{testbase}.right")
50
+ correct_lines = File.readlines(right_file)
51
+ result = cheap_diff(got_lines, correct_lines)
52
+ unless result
53
+ puts '-' * 80
54
+ puts got_lines
55
+ puts '-' * 80
56
+ end
57
+ assert result
58
+ end
43
59
  end
44
60
  end
data/test/test-hist.rb ADDED
@@ -0,0 +1,68 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test history commands
8
+
9
+ class TestHistory < Test::Unit::TestCase
10
+
11
+ @@SRC_DIR = File.dirname(__FILE__) unless
12
+ defined?(@@SRC_DIR)
13
+
14
+ require File.join(@@SRC_DIR, 'helper')
15
+ include TestHelper
16
+
17
+ unless defined?(@@FILE_HISTORY)
18
+ @@FILE_HISTORY = '.rdebug_hist'
19
+ end
20
+
21
+ def test_basic
22
+
23
+ # Set up history file to read from.
24
+ ENV['HOME']=@@SRC_DIR
25
+ ENV['RDEBUG'] = nil
26
+
27
+ debugger_commands = ['show commands',
28
+ 'set history save on',
29
+ 'show history',
30
+ 'quit unconditionally']
31
+ debugger_output = 'test-history.out'
32
+
33
+ Dir.chdir(@@SRC_DIR) do
34
+ correct_lines = File.read(File.join('data', 'history.right')).split(/\n/)
35
+ f = File.open(@@FILE_HISTORY, 'w')
36
+ correct_lines[0.. -(debugger_commands.length+1)].each do |line|
37
+ f.puts line
38
+ end
39
+ f.close
40
+
41
+ # Now that we've set up a history file, run the debugger
42
+ # and check that it's reading that correctly.
43
+ debug_pgm=File.join('..', 'rdbg.rb')
44
+ debugged=File.join('gcd.rb')
45
+ IO.popen("#{debug_pgm} #{debugged} 3 5 >#{debugger_output}", 'w') do
46
+ |pipe|
47
+ debugger_commands.each do |cmd|
48
+ pipe.puts cmd
49
+ end
50
+ end
51
+
52
+ # Compare output
53
+ got_lines = File.read(@@FILE_HISTORY).split(/\n/)
54
+ # FIXME: Disable for now.
55
+ assert true, 'FIXME'
56
+ return
57
+ if cheap_diff(got_lines, correct_lines)
58
+ assert true
59
+ FileUtils.rm(debugger_output)
60
+ FileUtils.rm(@@FILE_HISTORY)
61
+ else
62
+ assert nil, 'Output differs'
63
+ end
64
+ end
65
+ end
66
+ end
67
+
68
+
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
6
+
7
+ # Test simple thread commands
8
+ class TestInfoThread < Test::Unit::TestCase
9
+
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
16
+ def test_basic
17
+ testname='info-thread'
18
+ Dir.chdir(@@SRC_DIR) do
19
+ filter = Proc.new{|got_lines, correct_lines|
20
+ [got_lines, correct_lines].each do |a|
21
+ a.each do |s|
22
+ s.sub!(/Thread:0x[0-9a-f]+/, 'Thread:0x12345678')
23
+ end
24
+ end
25
+ }
26
+ script = File.join('data', testname + '.cmd')
27
+ assert_equal(true,
28
+ run_debugger(testname,
29
+ "--script #{script} -- gcd.rb 3 5", nil, filter))
30
+ end
31
+ end
32
+ end
@@ -1,33 +1,47 @@
1
1
  #!/usr/bin/env ruby
2
- require "test/unit"
3
- require "fileutils"
2
+ require 'test/unit'
4
3
 
5
- # require "rubygems"
6
- # require "ruby-debug" ; Debugger.start
7
-
8
- SRC_DIR = File.expand_path(File.dirname(__FILE__)) + "/" unless
9
- defined?(SRC_DIR)
10
-
11
- require File.join(SRC_DIR, "helper.rb")
12
- include TestHelper
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
13
6
 
14
7
  # Test info variables command
15
8
  class TestInfoVar < Test::Unit::TestCase
16
9
 
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
17
16
  def test_info_variables
18
17
 
19
- Dir.chdir(SRC_DIR) do
18
+ Dir.chdir(@@SRC_DIR) do
20
19
 
21
20
  filter = Proc.new{|got_lines, correct_lines|
22
- [got_lines[12], correct_lines[12]].each do |s|
21
+ [got_lines[13-1], correct_lines[13-1]].each do |s|
23
22
  s.sub!(/Mine:0x[0-9,a-f]+/, 'Mine:')
24
23
  end
24
+ [got_lines, correct_lines].each do |a|
25
+ a.each do |s|
26
+ s.sub!(/Lousy_inspect:0x[0-9,a-f]+/, 'Lousy_inspect:')
27
+ s.sub!(/UnsuspectingClass:0x[0-9,a-f]+/, 'UnsuspectingClass:')
28
+ end
29
+ end
25
30
  }
26
31
 
32
+ testname='info-var'
33
+ script = File.join('data', testname + '.cmd')
27
34
  assert_equal(true,
28
- run_debugger("info-var",
29
- "--script info-var.cmd -- info-var-bug.rb",
35
+ run_debugger(testname,
36
+ "--script #{script} -- info-var-bug.rb",
30
37
  nil, filter))
38
+ testname='info-var-bug2'
39
+ script = File.join('data', testname + '.cmd')
40
+ assert_equal(true,
41
+ run_debugger(testname,
42
+ "--script #{script} -- info-var-bug2.rb",
43
+ nil))
44
+
31
45
  end
32
46
  end
33
47
  end
data/test/test-info.rb CHANGED
@@ -1,28 +1,26 @@
1
1
  #!/usr/bin/env ruby
2
- require "test/unit"
3
- require "fileutils"
2
+ require 'test/unit'
4
3
 
5
- # require "rubygems"
6
- # require "ruby-debug"
7
- # Debugger.start
8
-
9
- SRC_DIR = File.expand_path(File.dirname(__FILE__)) + "/" unless
10
- defined?(SRC_DIR)
11
-
12
- require File.join(SRC_DIR, "helper.rb")
13
-
14
- include TestHelper
4
+ # begin require 'rubygems' rescue LoadError end
5
+ # require 'ruby-debug'; Debugger.start
15
6
 
16
7
  # Test info commands
17
8
  class TestInfo < Test::Unit::TestCase
18
- require 'stringio'
19
9
 
20
- # Test commands in stepping.rb
10
+ @@SRC_DIR = File.dirname(__FILE__) unless
11
+ defined?(@@SRC_DIR)
12
+
13
+ require File.join(@@SRC_DIR, 'helper')
14
+ include TestHelper
15
+
16
+ # Test commands in info.rb
21
17
  def test_basic
22
- Dir.chdir(SRC_DIR) do
18
+ testname='info'
19
+ Dir.chdir(@@SRC_DIR) do
20
+ script = File.join('data', testname + '.cmd')
23
21
  assert_equal(true,
24
- run_debugger("info",
25
- "--script info.cmd -- gcd.rb 3 5"))
22
+ run_debugger(testname,
23
+ "--script #{script} -- gcd.rb 3 5"))
26
24
  end
27
25
  end
28
26
  end