spork-rdebugide-testunit 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in log4r-gelf.gemspec
4
+ gemspec
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
data/bin/dtestdrb ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'drb'
4
+ DRb.start_service("druby://127.0.0.1:0") # this allows Ruby to do some magical stuff so you can pass an output stream over DRb.
5
+ test_server = DRbObject.new_with_uri("druby://127.0.0.1:8988")
6
+ result = test_server.run(ARGV, $stderr, $stdout)
@@ -0,0 +1 @@
1
+ require 'spork/test_framework/rdebug_ide_test_unit'
@@ -0,0 +1,5 @@
1
+ module Spork
2
+ module RdebugIdeTestUnit
3
+ VERSION = "0.1.0"
4
+ end
5
+ end
@@ -0,0 +1,102 @@
1
+ require "ruby-debug-base"
2
+ require "ruby-debug-ide"
3
+ require "spork/test_framework/test_unit"
4
+
5
+ class Spork::TestFramework::RdebugIdeTestUnit < Spork::TestFramework::TestUnit
6
+
7
+ def run_tests(argv, stderr, stdout)
8
+ setup_rdebug(argv) do
9
+ super(argv, stderr, stdout)
10
+ end
11
+ rescue => e
12
+ puts "-"*30
13
+ puts "Error executing #{argv.join(' ')}"
14
+ puts e.message
15
+ puts e.backtrace
16
+ puts "-"*30
17
+ end
18
+
19
+ def setup_rdebug(argv)
20
+
21
+ if argv.grep(/rdebug-ide/).size > 0
22
+
23
+ while argv.shift !~ /rdebug-ide/; end
24
+
25
+ options = OpenStruct.new(
26
+ 'frame_bind' => false,
27
+ 'host' => nil,
28
+ 'load_mode' => false,
29
+ 'port' => 1234,
30
+ 'stop' => false,
31
+ 'tracing' => false
32
+ )
33
+
34
+ opts = OptionParser.new do |opts|
35
+ opts.banner = <<-EOB
36
+ Using ruby-debug-base #{Debugger::VERSION}
37
+ Usage: rdebug-ide is supposed to be called from RDT, NetBeans or RubyMine. The
38
+ command line interface to ruby-debug is rdebug.
39
+ EOB
40
+ opts.separator ""
41
+ opts.separator "Options:"
42
+ opts.on("-h", "--host HOST", "Host name used for remote debugging") {|host| options.host = host}
43
+ opts.on("-p", "--port PORT", Integer, "Port used for remote debugging") {|port| options.port = port}
44
+ opts.on('--stop', 'stop when the script is loaded') {options.stop = true}
45
+ opts.on("-x", "--trace", "turn on line tracing") {options.tracing = true}
46
+ opts.on("-l", "--load-mode", "load mode (experimental)") {options.load_mode = true}
47
+ opts.on("-d", "--debug", "Debug self - prints information for debugging ruby-debug itself") do
48
+ Debugger.cli_debug = true
49
+ end
50
+ opts.on("--xml-debug", "Debug self - sends information <message>s for debugging ruby-debug itself") do
51
+ Debugger.xml_debug = true
52
+ end
53
+ opts.on("-I", "--include PATH", String, "Add PATH to $LOAD_PATH") do |path|
54
+ $LOAD_PATH.unshift(path)
55
+ end
56
+
57
+ opts.on("--keep-frame-binding", "Keep frame bindings") {options.frame_bind = true}
58
+ opts.separator ""
59
+ opts.separator "Common options:"
60
+ opts.on_tail("-v", "--version", "Show version") do
61
+ puts "Using ruby-debug-base #{Debugger::VERSION}"
62
+ exit
63
+ end
64
+ end
65
+
66
+ begin
67
+ opts.parse! argv
68
+ rescue StandardError => e
69
+ puts opts
70
+ puts
71
+ puts e.message
72
+ exit(1)
73
+ end
74
+
75
+ if argv.empty?
76
+ puts opts
77
+ puts
78
+ puts "Must specify a script to run"
79
+ exit(1)
80
+ end
81
+
82
+ # install interruption handler
83
+ trap('INT') { Debugger.interrupt_last }
84
+
85
+ # set options
86
+ Debugger.keep_frame_binding = options.frame_bind
87
+ Debugger.tracing = options.tracing
88
+
89
+ Debugger.start_server(options.host, options.port)
90
+ Debugger.start do
91
+ yield
92
+ end
93
+
94
+ else
95
+
96
+ yield
97
+
98
+ end
99
+
100
+ end
101
+
102
+ end
@@ -0,0 +1,33 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "spork-rdebugide-testunit/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "spork-rdebugide-testunit"
7
+ s.version = Spork::RdebugIdeTestUnit::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Matt Conway"]
10
+ s.email = ["matt@conwaysplace.com"]
11
+ s.homepage = ""
12
+ s.summary = %q{Test Unit runner for spork with rdebug-ide integration (for rubymine)}
13
+ s.description = %q{Test Unit runner for spork with rdebug-ide integration (for rubymine)}
14
+
15
+ s.rubyforge_project = "spork-rdebugide-testunit"
16
+
17
+ s.files = %w{
18
+ Gemfile
19
+ Rakefile
20
+ bin/dtestdrb
21
+ lib/spork-rdebugide-testunit.rb
22
+ lib/spork-rdebugide-testunit/version.rb
23
+ lib/spork/test_framework/rdebug_ide_test_unit.rb
24
+ spork-rdebugide-testunit.gemspec
25
+ }
26
+ s.test_files = []
27
+ s.executables = ["dtestdrb"]
28
+ s.require_paths = ["lib"]
29
+
30
+ s.add_dependency("spork", '~> 0.9.0.rc3')
31
+ s.add_dependency("spork-testunit", '~> 0.0.4')
32
+
33
+ end
metadata ADDED
@@ -0,0 +1,84 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spork-rdebugide-testunit
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 0.1.0
6
+ platform: ruby
7
+ authors:
8
+ - Matt Conway
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2011-02-24 00:00:00 -05:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: spork
18
+ prerelease: false
19
+ requirement: &id001 !ruby/object:Gem::Requirement
20
+ none: false
21
+ requirements:
22
+ - - ~>
23
+ - !ruby/object:Gem::Version
24
+ version: 0.9.0.rc3
25
+ type: :runtime
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
28
+ name: spork-testunit
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
31
+ none: false
32
+ requirements:
33
+ - - ~>
34
+ - !ruby/object:Gem::Version
35
+ version: 0.0.4
36
+ type: :runtime
37
+ version_requirements: *id002
38
+ description: Test Unit runner for spork with rdebug-ide integration (for rubymine)
39
+ email:
40
+ - matt@conwaysplace.com
41
+ executables:
42
+ - dtestdrb
43
+ extensions: []
44
+
45
+ extra_rdoc_files: []
46
+
47
+ files:
48
+ - Gemfile
49
+ - Rakefile
50
+ - bin/dtestdrb
51
+ - lib/spork-rdebugide-testunit.rb
52
+ - lib/spork-rdebugide-testunit/version.rb
53
+ - lib/spork/test_framework/rdebug_ide_test_unit.rb
54
+ - spork-rdebugide-testunit.gemspec
55
+ has_rdoc: true
56
+ homepage: ""
57
+ licenses: []
58
+
59
+ post_install_message:
60
+ rdoc_options: []
61
+
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: "0"
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: "0"
76
+ requirements: []
77
+
78
+ rubyforge_project: spork-rdebugide-testunit
79
+ rubygems_version: 1.5.0
80
+ signing_key:
81
+ specification_version: 3
82
+ summary: Test Unit runner for spork with rdebug-ide integration (for rubymine)
83
+ test_files: []
84
+