trepanning 0.0.6 → 0.0.8

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 (79) hide show
  1. data/ChangeLog +214 -0
  2. data/NEWS +12 -0
  3. data/README.textile +1 -7
  4. data/Rakefile +13 -0
  5. data/app/default.rb +5 -4
  6. data/app/disassemble.rb +25 -3
  7. data/app/run.rb +0 -18
  8. data/bin/trepan +4 -6
  9. data/data/irbrc +3 -17
  10. data/io/base_io.rb +3 -1
  11. data/io/null_output.rb +41 -0
  12. data/lib/trepanning.rb +10 -13
  13. data/processor/command/backtrace.rb +7 -6
  14. data/processor/command/base/subcmd.rb +4 -0
  15. data/processor/command/base/submgr.rb +1 -1
  16. data/processor/command/base/subsubmgr.rb +1 -1
  17. data/processor/command/break.rb +12 -4
  18. data/processor/command/continue.rb +2 -2
  19. data/processor/command/delete.rb +1 -1
  20. data/processor/command/disable.rb +1 -1
  21. data/processor/command/disassemble.rb +1 -1
  22. data/processor/command/finish.rb +3 -3
  23. data/processor/command/info_subcmd/iseq.rb +9 -0
  24. data/processor/command/info_subcmd/registers_subcmd/dfp.rb +7 -16
  25. data/processor/command/info_subcmd/registers_subcmd/lfp.rb +5 -17
  26. data/processor/command/info_subcmd/registers_subcmd/pc.rb +6 -19
  27. data/processor/command/info_subcmd/registers_subcmd/sp.rb +14 -24
  28. data/processor/command/list.rb +34 -19
  29. data/processor/command/reload.rb +1 -1
  30. data/processor/command/restart.rb +8 -9
  31. data/processor/command/set_subcmd/auto.rb +1 -2
  32. data/processor/command/set_subcmd/auto_subcmd/eval.rb +6 -19
  33. data/processor/command/set_subcmd/auto_subcmd/irb.rb +7 -23
  34. data/processor/command/set_subcmd/auto_subcmd/list.rb +5 -22
  35. data/processor/command/set_subcmd/basename.rb +6 -20
  36. data/processor/command/set_subcmd/debug.rb +1 -1
  37. data/processor/command/set_subcmd/debug_subcmd/dbgr.rb +9 -22
  38. data/processor/command/set_subcmd/debug_subcmd/except.rb +8 -20
  39. data/processor/command/set_subcmd/debug_subcmd/macro.rb +7 -19
  40. data/processor/command/set_subcmd/debug_subcmd/skip.rb +5 -18
  41. data/processor/command/set_subcmd/debug_subcmd/stack.rb +5 -18
  42. data/processor/command/set_subcmd/hidelevel.rb +60 -0
  43. data/processor/command/set_subcmd/max.rb +1 -1
  44. data/processor/command/set_subcmd/max_subcmd/list.rb +12 -23
  45. data/processor/command/set_subcmd/max_subcmd/stack.rb +8 -31
  46. data/processor/command/set_subcmd/substitute.rb +1 -1
  47. data/processor/command/set_subcmd/substitute_subcmd/eval.rb +1 -1
  48. data/processor/command/set_subcmd/substitute_subcmd/path.rb +1 -1
  49. data/processor/command/set_subcmd/substitute_subcmd/string.rb +6 -18
  50. data/processor/command/set_subcmd/timer.rb +1 -1
  51. data/processor/command/set_subcmd/trace.rb +1 -1
  52. data/processor/command/set_subcmd/trace_subcmd/buffer.rb +1 -1
  53. data/processor/command/set_subcmd/trace_subcmd/print.rb +5 -21
  54. data/processor/command/set_subcmd/trace_subcmd/var.rb +1 -1
  55. data/processor/command/show_subcmd/args.rb +9 -27
  56. data/processor/command/show_subcmd/auto_subcmd/eval.rb +3 -15
  57. data/processor/command/show_subcmd/auto_subcmd/irb.rb +3 -15
  58. data/processor/command/show_subcmd/auto_subcmd/list.rb +3 -18
  59. data/processor/command/show_subcmd/basename.rb +3 -1
  60. data/processor/command/show_subcmd/hidelevel.rb +41 -0
  61. data/processor/command/show_subcmd/max.rb +1 -1
  62. data/processor/command/show_subcmd/trace_subcmd/buffer.rb +1 -1
  63. data/processor/command/show_subcmd/trace_subcmd/print.rb +1 -1
  64. data/processor/command/source.rb +6 -5
  65. data/processor/command/undisplay.rb +0 -1
  66. data/processor/default.rb +6 -2
  67. data/processor/frame.rb +2 -21
  68. data/processor/location.rb +44 -18
  69. data/processor/main.rb +0 -11
  70. data/processor/mock.rb +25 -0
  71. data/processor/validate.rb +34 -18
  72. data/test/functional/fn_helper.rb +14 -4
  73. data/test/functional/test-break.rb +35 -73
  74. data/test/functional/test-condition.rb +9 -10
  75. data/test/functional/test-delete.rb +5 -3
  76. data/test/unit/test-app-disassemble.rb +15 -3
  77. data/test/unit/test-app-run.rb +0 -4
  78. data/test/unit/test-cmd-break.rb +3 -0
  79. metadata +15 -11
@@ -14,22 +14,9 @@ end
14
14
  if __FILE__ == $0
15
15
  # Demo it.
16
16
  require_relative '../../../mock'
17
- require_relative '../../../subcmd'
18
- name = File.basename(__FILE__, '.rb')
19
-
20
- # FIXME: DRY the below code
21
- dbgr, dbg_cmd = MockDebugger::setup('set')
22
- debug_cmd = Trepan::SubSubcommand::SetDebug.new(dbgr.core.processor,
23
- dbg_cmd)
24
- # FIXME: remove the 'join' below
25
- cmd_name = Trepan::SubSubcommand::SetDebugSkip::PREFIX.join('')
26
- debugx_cmd = Trepan::SubSubcommand::SetDebugSkip.new(dbg_cmd.proc,
27
- debug_cmd,
28
- cmd_name)
29
- # require_relative '../../../../lib/trepanning'
30
- # dbgr = Trepan.new(:set_restart => true)
31
- # dbgr.debugger
32
- debugx_cmd.run([name])
33
- debugx_cmd.run([name, 'on'])
34
- debugx_cmd.run([name, 'off'])
17
+ require_relative '../debug'
18
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetDebug,
19
+ Trepan::SubSubcommand::SetDebugSkip)
20
+ %w(off on 0 1).each { |arg| cmd.run([cmd.name, arg]) }
21
+ puts '-' * 10
35
22
  end
@@ -24,22 +24,9 @@ end
24
24
  if __FILE__ == $0
25
25
  # Demo it.
26
26
  require_relative '../../../mock'
27
- require_relative '../../../subcmd'
28
- name = File.basename(__FILE__, '.rb')
29
-
30
- # FIXME: DRY the below code
31
- dbgr, set_cmd = MockDebugger::setup('set')
32
- debug_cmd = Trepan::SubSubcommand::SetDebug.new(dbgr.core.processor,
33
- set_cmd)
34
- # FIXME: remove the 'join' below
35
- cmd_name = Trepan::SubSubcommand::SetDebugStack::PREFIX.join('')
36
- debugx_cmd = Trepan::SubSubcommand::SetDebugStack.new(set_cmd.proc,
37
- debug_cmd,
38
- cmd_name)
39
- # require_relative '../../../../lib/trepanning'
40
- # dbgr = Trepan.new(:set_restart => true)
41
- # dbgr.debugger
42
- debugx_cmd.run([name])
43
- debugx_cmd.run([name, 'off'])
44
- debugx_cmd.run([name, 'on'])
27
+ require_relative '../debug'
28
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetDebug,
29
+ Trepan::SubSubcommand::SetDebugStack)
30
+ %w(off on 0 1).each { |arg| cmd.run([cmd.name, arg]) }
31
+ puts '-' * 10
45
32
  end
@@ -0,0 +1,60 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Copyright (C) 2010 Rocky Bernstein <rockyb@rubyforge.net>
3
+ require_relative '../base/subcmd'
4
+
5
+ class Trepan::Subcommand::SetHidelevel < Trepan::Subcommand
6
+ unless defined?(HELP)
7
+ HELP = "
8
+ set hidelevel [NUM]
9
+
10
+ Hide this many stack frames from the bottom (or least-recent) frame.
11
+
12
+ Often the bottom-most frames are setup frames that one doesn't think
13
+ of as being part of one's program but are part of the overhead loading
14
+ or debugging the program. As such generally they are unintersting in
15
+ a backtrace command and one wants these omitted.
16
+
17
+ If NUM is 0, no stack frames are hidden. If NUM is < 0 or omitted,
18
+ then use value the program sets automatically. If the value is larger
19
+ than the current number of entries in the stack, i.e. the stack shown
20
+ would be otherwise be, empty then we show all entries, or take NUM to
21
+ be 0.
22
+
23
+ Examples:
24
+ set hidelevel # Use the default value and hide 'uninteresting' ones
25
+ set hidelevel 0 # Show all stack entries, even from loading the program
26
+ # or initial stack entries the debugger created to
27
+ # debug the program.
28
+ set hidelevel 1 # Hide only the bottom-most or least-recent stack frame.
29
+
30
+ See also 'backtrace' and 'show hidelevel'.
31
+ ."
32
+
33
+ IN_LIST = true
34
+ MIN_ABBREV = 'hide'.size
35
+ NAME = File.basename(__FILE__, '.rb')
36
+ PREFIX = %W(set #{NAME})
37
+ SHORT_HELP = "Set the number of bottom frames to hide."
38
+ end
39
+
40
+ def run(args)
41
+ if args.size == 2
42
+ val = nil
43
+ else
44
+ val = @proc.get_an_int(args[2])
45
+ return unless val
46
+ end
47
+ @proc.hide_level = @proc.settings[:hidelevel] = val
48
+ @proc.run_command('show hidelevel')
49
+ end
50
+
51
+ end
52
+
53
+ if __FILE__ == $0
54
+ # Demo it.
55
+ $0 = __FILE__ + 'notagain' # So we don't run this agin
56
+ require_relative '../../mock'
57
+ cmd = MockDebugger::sub_setup(Trepan::Subcommand::SetHidelevel, false)
58
+ cmd.run(cmd.prefix + %w(10))
59
+ cmd.run(cmd.prefix)
60
+ end
@@ -30,6 +30,6 @@ if __FILE__ == $0
30
30
  set_cmd.instance_variable_set('@last_args', cmd_args)
31
31
  command.run(cmd_args)
32
32
  require_relative '../../../lib/trepanning'
33
- # Trepan.debug(:set_restart => true)
33
+ # Trepan.debug
34
34
  command.run(['set', name, 'string', 30])
35
35
  end
@@ -4,13 +4,13 @@ require_relative '../../base/subsubcmd'
4
4
 
5
5
  class Trepan::SubSubcommand::SetMaxList < Trepan::SubSubcommand
6
6
  unless defined?(HELP)
7
- HELP = 'Set max[imum] list NUMBER
7
+ NAME = File.basename(__FILE__, '.rb')
8
+ HELP = "Set max[imum] #{NAME} NUMBER
8
9
 
9
- Set number of source-code lines to list by default.'
10
+ Set number of source-code lines to list by default."
10
11
  IN_LIST = true
11
12
  MIN_ABBREV = 'lis'.size
12
- NAME = File.basename(__FILE__, '.rb')
13
- PREFIX = %w(set max list)
13
+ PREFIX = %W(set max #{NAME})
14
14
  SHORT_HELP = 'Set number of lines to list'
15
15
  end
16
16
 
@@ -28,23 +28,12 @@ end
28
28
  if __FILE__ == $0
29
29
  # Demo it.
30
30
  require_relative '../../../mock'
31
- name = File.basename(__FILE__, '.rb')
32
-
33
- dbgr, set_cmd = MockDebugger::setup('set')
34
- max_cmd = Trepan::SubSubcommand::SetMax.new(dbgr.core.processor,
35
- set_cmd)
36
- cmd_ary = Trepan::SubSubcommand::SetMaxWidth::PREFIX
37
- cmd_name = cmd_ary.join('')
38
- subcmd = Trepan::SubSubcommand::SetMaxList.new(set_cmd.proc,
39
- max_cmd,
40
- cmd_name)
41
- prefix_run = cmd_ary[1..-1]
42
- subcmd.run(prefix_run)
43
- subcmd.run(prefix_run + %w(0))
44
- subcmd.run(prefix_run + %w(20))
45
- name = File.basename(__FILE__, '.rb')
46
- subcmd.summary_help(name)
47
- puts
48
- puts '-' * 20
49
- puts subcmd.save_command
31
+ require_relative '../max'
32
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetMax,
33
+ Trepan::SubSubcommand::SetMaxList, false)
34
+ prefix_run = cmd.prefix[1..-1]
35
+ cmd.run(prefix_run)
36
+ cmd.run(prefix_run + %w(0))
37
+ cmd.run(prefix_run + %w(20))
38
+ puts cmd.save_command
50
39
  end
@@ -26,35 +26,12 @@ end
26
26
  if __FILE__ == $0
27
27
  # Demo it.
28
28
  require_relative '../../../mock'
29
- dbgr, set_cmd = MockDebugger::setup('set')
30
- max_cmd = Trepan::SubSubcommand::SetMax.new(dbgr.core.processor,
31
- set_cmd)
32
- # FIXME: remove the 'join' below
33
- cmd_name = Trepan::SubSubcommand::SetMaxStack::PREFIX.join('')
34
- subcmd = Trepan::SubSubcommand::SetMaxStack.new(set_cmd.proc,
35
- max_cmd,
36
- cmd_name)
37
- name = File.basename(__FILE__, '.rb')
38
-
39
- # FIXME: DRY the below code
40
- dbgr, set_cmd = MockDebugger::setup('set')
41
- max_cmd = Trepan::SubSubcommand::SetMax.new(dbgr.core.processor,
42
- set_cmd)
43
- cmd_ary = Trepan::SubSubcommand::SetMaxStack::PREFIX
44
- cmd_name = cmd_ary.join(' ')
45
- subcmd = Trepan::SubSubcommand::SetMaxStack.new(set_cmd.proc,
46
- max_cmd,
47
- cmd_name)
48
-
49
- prefix_run = cmd_ary[1..-1]
50
- subcmd.run(prefix_run)
51
- subcmd.run(prefix_run + %w(0))
52
- subcmd.run(prefix_run + %w(10))
53
- name = File.basename(__FILE__, '.rb')
54
- subcmd.summary_help(name)
55
- puts
56
- puts '-' * 20
57
-
58
- require_relative '../../../../lib/trepanning'
59
- puts subcmd.save_command
29
+ require_relative '../max'
30
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetMax,
31
+ Trepan::SubSubcommand::SetMaxStack, false)
32
+ prefix_run = cmd.prefix[1..-1]
33
+ cmd.run(prefix_run)
34
+ cmd.run(prefix_run + %w(0))
35
+ cmd.run(prefix_run + %w(10))
36
+ puts cmd.save_command
60
37
  end
@@ -20,6 +20,6 @@ if __FILE__ == $0
20
20
  cmd_args = ['set', name]
21
21
  set_cmd.instance_variable_set('@last_args', cmd_args)
22
22
  # require_relative '../../../lib/trepanning'
23
- # Trepan.debug(:set_restart => true)
23
+ # Trepan.debug
24
24
  command.run(cmd_args)
25
25
  end
@@ -89,7 +89,7 @@ if __FILE__ == $0
89
89
  cmd_name)
90
90
  setx_cmd.run([])
91
91
  # require_relative '../../../../lib/trepanning'
92
- # dbgr = Trepan.new(:set_restart => true)
92
+ # dbgr = Trepan.new
93
93
  # dbgr.debugger
94
94
  eval('set_cmd.proc.frame_setup(RubyVM::ThreadFrame::current); setx_cmd.run([])')
95
95
 
@@ -46,7 +46,7 @@ if __FILE__ == $0
46
46
  set_cmd,
47
47
  cmd_name)
48
48
  # require_relative '../../../../lib/trepanning'
49
- # dbgr = Trepan.new(:set_restart => true)
49
+ # dbgr = Trepan.new
50
50
  # dbgr.debugger
51
51
  setx_cmd.run([])
52
52
 
@@ -51,22 +51,10 @@ end
51
51
 
52
52
  if __FILE__ == $0
53
53
  # Demo it.
54
- require_relative '/../../../mock'
55
- require_relative '../../../subcmd'
56
- name = File.basename(__FILE__, '.rb')
57
-
58
- # FIXME: DRY the below code
59
- dbgr, set_cmd = MockDebugger::setup('set')
60
- testcmdMgr = Trepan::Subcmd.new(set_cmd)
61
- cmd_name = Trepan::SubSubcommand::SetSubstituteString::PREFIX.join('')
62
- setx_cmd = Trepan::SubSubcommand::SetSubstituteString.new(set_cmd.proc,
63
- set_cmd,
64
- cmd_name)
65
- # require_relative '../../../../lib/trepanning'
66
- # dbgr = Trepan.new(:set_restart => true)
67
- # dbgr.debugger
68
- setx_cmd.run([])
69
-
70
- # name = File.basename(__FILE__, '.rb')
71
- # subcommand.summary_help(name)
54
+ require_relative '../../../mock'
55
+ require_relative '../substitute'
56
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetSubstitute,
57
+ Trepan::SubSubcommand::SetSubstituteString,
58
+ false)
59
+ cmd.run([cmd.name, '/tmp/foo.rb', 'a=1;b=2'])
72
60
  end
@@ -60,7 +60,7 @@ if __FILE__ == $0
60
60
  subcommand.summary_help(name)
61
61
 
62
62
  # require 'trepanning'
63
- # Trepan.debug(:set_restart => true)
63
+ # Trepan.debug
64
64
  subcommand.run(['set', name])
65
65
  subcommand.run(['set', name, 'off'])
66
66
  subcommand.run(['set', name, 'on'])
@@ -37,7 +37,7 @@ if __FILE__ == $0
37
37
  cmd_args = ['set', name]
38
38
  set_cmd.instance_variable_set('@last_args', cmd_args)
39
39
  # require_relative '../../../lib/trepanning'
40
- # Trepan.debug(:set_restart => true)
40
+ # Trepan.debug
41
41
  command.run(cmd_args)
42
42
  command.run(['set', name, '*'])
43
43
  end
@@ -45,7 +45,7 @@ if __FILE__ == $0
45
45
  trace_cmd,
46
46
  cmd_name)
47
47
  # require_relative '../../../../lib/trepanning'
48
- # dbgr = Trepan.new(:set_restart => true)
48
+ # dbgr = Trepan.new
49
49
  # dbgr.debugger
50
50
 
51
51
  subcmd.run([cmd_name])
@@ -29,26 +29,10 @@ end
29
29
  if __FILE__ == $0
30
30
  # Demo it.
31
31
  require_relative '../../../mock'
32
- require_relative '../../../subcmd'
33
- name = File.basename(__FILE__, '.rb')
34
-
35
- # FIXME: DRY the below code
36
- dbgr, set_cmd = MockTrepan::setup('set')
37
- trace_cmd = Trepan::SubSubcommand::SetTrace.new(dbgr.core.processor,
38
- set_cmd)
39
-
40
- # FIXME: remove the 'join' below
41
- cmd_name = Trepan::SubSubcommand::SetTracePrint::PREFIX.join('')
42
- subcmd = Trepan::SubSubcommand::SetTracePrint.new(set_cmd.proc,
43
- trace_cmd,
44
- cmd_name)
45
- # require_relative '../../../../lib/trepanning'
46
- # dbgr = Trepan.new(:set_restart => true)
47
- # dbgr.debugger
48
-
49
- subcmd.run([cmd_name])
50
- %w(off on 1 0).each { |arg| subcmd.run([cmd_name, arg]) }
51
- puts subcmd.save_command()
52
-
32
+ require_relative '../trace'
33
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::SetTrace,
34
+ Trepan::SubSubcommand::SetTracePrint)
35
+ %w(off on 0 1).each { |arg| cmd.run([cmd.name, arg]) }
36
+ puts '-' * 10
53
37
  end
54
38
 
@@ -51,7 +51,7 @@ if __FILE__ == $0
51
51
  cmd_name)
52
52
  setx_cmd.run([])
53
53
  # require_relative '../../../../lib/bdbgr'
54
- # dbgr = Trepan.new(:set_restart => true)
54
+ # dbgr = Trepan.new
55
55
  # dbgr.debugger
56
56
  eval('set_cmd.proc.frame_setup(RubyVM::ThreadFrame::current); setx_cmd.run([])')
57
57
 
@@ -6,13 +6,14 @@ class Trepan::Subcommand::ShowArgs < Trepan::Subcommand
6
6
  unless defined?(HELP)
7
7
  HELP = 'Show argument list to give program when it is restarted'
8
8
  MIN_ABBREV = 'ar'.size
9
+ NAME = File.basename(__FILE__, '.rb')
10
+ PREFIX = %W(show #{NAME})
9
11
  end
10
12
 
11
13
  def run(args)
12
14
  dbgr = @proc.dbgr
13
- argv = dbgr.restart_argv
14
- msg("Restart directory: #{dbgr.initial_dir}") if dbgr.initial_dir
15
- msg("Restart args:\n\t#{argv.inspect}")
15
+ msg "Restart directory: #{RubyVM::OS_STARTUP_DIR}"
16
+ msg "Restart args:\n\t#{dbgr.restart_argv.inspect}"
16
17
  end
17
18
 
18
19
  end
@@ -20,29 +21,10 @@ end
20
21
  if __FILE__ == $0
21
22
  # Demo it.
22
23
  require_relative '../../mock'
23
- require_relative '../../subcmd'
24
- name = File.basename(__FILE__, '.rb')
25
-
26
- # FIXME: DRY the below code
27
- dbgr, cmd = MockDebugger::setup('show')
28
- subcommand = Trepan::Subcommand::ShowArgs.new(cmd)
29
- testcmdMgr = Trepan::Subcmd.new(subcommand)
30
-
31
- def subcommand.msg(message)
32
- puts message
33
- end
34
- def subcommand.msg_nocr(message)
35
- print message
36
- end
37
- def subcommand.errmsg(message)
38
- puts message
39
- end
40
- subcommand.run([])
41
- name = File.basename(__FILE__, '.rb')
42
- subcommand.summary_help(name)
24
+ cmd_ary = Trepan::Subcommand::ShowArgs::PREFIX
25
+ dbgr, parent_cmd = MockDebugger::setup(cmd_ary[0], false)
26
+ cmd = Trepan::Subcommand::ShowArgs.new(parent_cmd)
27
+ cmd.run([])
28
+ cmd.summary_help(cmd.name)
43
29
  puts
44
- dbgr.instance_variable_set('@initial_dir', Dir.pwd)
45
- dbgr.restart_argv = ARGV
46
- subcommand.run([])
47
-
48
30
  end
@@ -20,19 +20,7 @@ end
20
20
  if __FILE__ == $0
21
21
  # Demo it.
22
22
  require_relative '../../../mock'
23
-
24
- # FIXME: DRY the below code
25
- dbgr, show_cmd = MockDebugger::setup('show')
26
- testcmdMgr = Trepan::Subcmd.new(show_cmd)
27
- auto_cmd = Trepan::SubSubcommand::ShowAuto.new(dbgr.core.processor,
28
- show_cmd)
29
- # FIXME: remove the 'join' below
30
- cmd_name = Trepan::SubSubcommand::ShowAutoEval::PREFIX.join('')
31
- autox_cmd = Trepan::SubSubcommand::ShowAutoEval.new(show_cmd.proc, auto_cmd,
32
- cmd_name)
33
- # require_relative '../../../../lib/trepanning'
34
- # dbgr = Trepan.new(:set_restart => true)
35
- # dbgr.debugger
36
- autox_cmd.run([])
37
-
23
+ require_relative '../auto'
24
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::ShowAuto,
25
+ Trepan::SubSubcommand::ShowAutoEval)
38
26
  end
@@ -16,19 +16,7 @@ end
16
16
  if __FILE__ == $0
17
17
  # Demo it.
18
18
  require_relative '../../../mock'
19
- require_relative '../../../subcmd'
20
- name = File.basename(__FILE__, '.rb')
21
-
22
- # FIXME: DRY the below code
23
- dbgr, show_cmd = MockDebugger::setup('show')
24
- testcmdMgr = Trepan::Subcmd.new(show_cmd)
25
- auto_cmd = Trepan::SubSubcommand::ShowAuto.new(dbgr.core.processor,
26
- show_cmd)
27
-
28
- cmd_name = Trepan::SubSubcommand::ShowAutoIrb::PREFIX.join('')
29
- autox_cmd = Trepan::SubSubcommand::ShowAutoIrb.new(show_cmd.proc, auto_cmd,
30
- cmd_name)
31
- autox_cmd.run([])
32
- # name = File.basename(__FILE__, '.rb')
33
- # autox_cmd.summary_help(name)
19
+ require_relative '../auto'
20
+ cmd = MockDebugger::subsub_setup(Trepan::SubSubcommand::ShowAuto,
21
+ Trepan::SubSubcommand::ShowAutoIrb)
34
22
  end