specjour 0.2.5 → 0.3.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. data/History.markdown +51 -20
  2. data/README.markdown +53 -26
  3. data/Rakefile +3 -5
  4. data/VERSION +1 -1
  5. data/bin/specjour +1 -48
  6. data/lib/specjour/cli.rb +97 -0
  7. data/lib/specjour/configuration.rb +73 -0
  8. data/lib/specjour/connection.rb +1 -1
  9. data/lib/specjour/cucumber/distributed_formatter.rb +2 -5
  10. data/lib/specjour/cucumber/preloader.rb +13 -0
  11. data/lib/specjour/cucumber.rb +3 -2
  12. data/lib/specjour/db_scrub.rb +8 -1
  13. data/lib/specjour/dispatcher.rb +99 -36
  14. data/lib/specjour/manager.rb +63 -37
  15. data/lib/specjour/printer.rb +33 -11
  16. data/lib/specjour/quiet_fork.rb +11 -0
  17. data/lib/specjour/rspec/distributed_formatter.rb +4 -15
  18. data/lib/specjour/rspec/preloader.rb +8 -0
  19. data/lib/specjour/rspec.rb +1 -0
  20. data/lib/specjour/rsync_daemon.rb +1 -1
  21. data/lib/specjour/socket_helper.rb +28 -0
  22. data/lib/specjour/worker.rb +42 -25
  23. data/lib/specjour.rb +13 -5
  24. data/spec/spec_helper.rb +12 -0
  25. data/spec/specjour/cli_spec.rb +104 -0
  26. data/spec/specjour/configuration_spec.rb +112 -0
  27. data/spec/{cpu_spec.rb → specjour/cpu_spec.rb} +0 -0
  28. data/spec/{manager_spec.rb → specjour/manager_spec.rb} +2 -2
  29. data/spec/specjour/printer_spec.rb +101 -0
  30. data/spec/{rsync_daemon_spec.rb → specjour/rsync_daemon_spec.rb} +2 -0
  31. data/spec/specjour_spec.rb +13 -2
  32. data/specjour.gemspec +33 -26
  33. metadata +69 -31
  34. data/lib/specjour/cucumber/dispatcher.rb +0 -18
  35. data/lib/specjour/cucumber/printer.rb +0 -9
  36. data/lib/specjour/socket_helpers.rb +0 -11
  37. data/lib/specjour/tasks/dispatch.rake +0 -21
  38. data/lib/specjour/tasks/specjour.rb +0 -1
  39. data/rails/init.rb +0 -6
  40. data/spec/lib/specjour/worker_spec.rb +0 -14
metadata CHANGED
@@ -1,12 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: specjour
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 977940566
5
+ prerelease: true
5
6
  segments:
6
7
  - 0
7
- - 2
8
- - 5
9
- version: 0.2.5
8
+ - 3
9
+ - 0
10
+ - rc1
11
+ version: 0.3.0.rc1
10
12
  platform: ruby
11
13
  authors:
12
14
  - Sandro Turriate
@@ -14,16 +16,18 @@ autorequire:
14
16
  bindir: bin
15
17
  cert_chain: []
16
18
 
17
- date: 2010-05-13 00:00:00 -04:00
19
+ date: 2010-07-12 00:00:00 -04:00
18
20
  default_executable: specjour
19
21
  dependencies:
20
22
  - !ruby/object:Gem::Dependency
21
23
  name: dnssd
22
24
  prerelease: false
23
25
  requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
24
27
  requirements:
25
28
  - - "="
26
29
  - !ruby/object:Gem::Version
30
+ hash: 25
27
31
  segments:
28
32
  - 1
29
33
  - 3
@@ -35,56 +39,80 @@ dependencies:
35
39
  name: rspec
36
40
  prerelease: false
37
41
  requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
38
43
  requirements:
39
44
  - - ">="
40
45
  - !ruby/object:Gem::Version
46
+ hash: 3
41
47
  segments:
42
48
  - 0
43
49
  version: "0"
44
50
  type: :runtime
45
51
  version_requirements: *id002
46
52
  - !ruby/object:Gem::Dependency
47
- name: rspec
53
+ name: thor
48
54
  prerelease: false
49
55
  requirement: &id003 !ruby/object:Gem::Requirement
56
+ none: false
50
57
  requirements:
51
58
  - - "="
52
59
  - !ruby/object:Gem::Version
60
+ hash: 39
61
+ segments:
62
+ - 0
63
+ - 13
64
+ - 6
65
+ version: 0.13.6
66
+ type: :runtime
67
+ version_requirements: *id003
68
+ - !ruby/object:Gem::Dependency
69
+ name: rspec
70
+ prerelease: false
71
+ requirement: &id004 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - "="
75
+ - !ruby/object:Gem::Version
76
+ hash: 27
53
77
  segments:
54
78
  - 1
55
79
  - 3
56
80
  - 0
57
81
  version: 1.3.0
58
82
  type: :development
59
- version_requirements: *id003
83
+ version_requirements: *id004
60
84
  - !ruby/object:Gem::Dependency
61
85
  name: rr
62
86
  prerelease: false
63
- requirement: &id004 !ruby/object:Gem::Requirement
87
+ requirement: &id005 !ruby/object:Gem::Requirement
88
+ none: false
64
89
  requirements:
65
- - - "="
90
+ - - ">="
66
91
  - !ruby/object:Gem::Version
92
+ hash: 33
67
93
  segments:
68
94
  - 0
69
95
  - 10
70
96
  - 11
71
97
  version: 0.10.11
72
98
  type: :development
73
- version_requirements: *id004
99
+ version_requirements: *id005
74
100
  - !ruby/object:Gem::Dependency
75
101
  name: yard
76
102
  prerelease: false
77
- requirement: &id005 !ruby/object:Gem::Requirement
103
+ requirement: &id006 !ruby/object:Gem::Requirement
104
+ none: false
78
105
  requirements:
79
- - - "="
106
+ - - ">="
80
107
  - !ruby/object:Gem::Version
108
+ hash: 13
81
109
  segments:
82
110
  - 0
83
111
  - 5
84
112
  - 3
85
113
  version: 0.5.3
86
114
  type: :development
87
- version_requirements: *id005
115
+ version_requirements: *id006
88
116
  description: Distribute your spec suite amongst your LAN via Bonjour.
89
117
  email: sandro.turriate@gmail.com
90
118
  executables:
@@ -104,34 +132,36 @@ files:
104
132
  - VERSION
105
133
  - bin/specjour
106
134
  - lib/specjour.rb
135
+ - lib/specjour/cli.rb
136
+ - lib/specjour/configuration.rb
107
137
  - lib/specjour/connection.rb
108
138
  - lib/specjour/cpu.rb
109
139
  - lib/specjour/cucumber.rb
110
- - lib/specjour/cucumber/dispatcher.rb
111
140
  - lib/specjour/cucumber/distributed_formatter.rb
112
141
  - lib/specjour/cucumber/final_report.rb
113
- - lib/specjour/cucumber/printer.rb
142
+ - lib/specjour/cucumber/preloader.rb
114
143
  - lib/specjour/db_scrub.rb
115
144
  - lib/specjour/dispatcher.rb
116
145
  - lib/specjour/manager.rb
117
146
  - lib/specjour/printer.rb
118
147
  - lib/specjour/protocol.rb
148
+ - lib/specjour/quiet_fork.rb
119
149
  - lib/specjour/rspec.rb
120
150
  - lib/specjour/rspec/distributed_formatter.rb
121
151
  - lib/specjour/rspec/final_report.rb
122
152
  - lib/specjour/rspec/marshalable_rspec_failure.rb
153
+ - lib/specjour/rspec/preloader.rb
123
154
  - lib/specjour/rsync_daemon.rb
124
- - lib/specjour/socket_helpers.rb
125
- - lib/specjour/tasks/dispatch.rake
126
- - lib/specjour/tasks/specjour.rb
155
+ - lib/specjour/socket_helper.rb
127
156
  - lib/specjour/worker.rb
128
- - rails/init.rb
129
- - spec/cpu_spec.rb
130
- - spec/lib/specjour/worker_spec.rb
131
- - spec/manager_spec.rb
132
- - spec/rsync_daemon_spec.rb
133
157
  - spec/spec.opts
134
158
  - spec/spec_helper.rb
159
+ - spec/specjour/cli_spec.rb
160
+ - spec/specjour/configuration_spec.rb
161
+ - spec/specjour/cpu_spec.rb
162
+ - spec/specjour/manager_spec.rb
163
+ - spec/specjour/printer_spec.rb
164
+ - spec/specjour/rsync_daemon_spec.rb
135
165
  - spec/specjour_spec.rb
136
166
  - specjour.gemspec
137
167
  has_rdoc: true
@@ -144,30 +174,38 @@ rdoc_options:
144
174
  require_paths:
145
175
  - lib
146
176
  required_ruby_version: !ruby/object:Gem::Requirement
177
+ none: false
147
178
  requirements:
148
179
  - - ">="
149
180
  - !ruby/object:Gem::Version
181
+ hash: 3
150
182
  segments:
151
183
  - 0
152
184
  version: "0"
153
185
  required_rubygems_version: !ruby/object:Gem::Requirement
186
+ none: false
154
187
  requirements:
155
- - - ">="
188
+ - - ">"
156
189
  - !ruby/object:Gem::Version
190
+ hash: 25
157
191
  segments:
158
- - 0
159
- version: "0"
192
+ - 1
193
+ - 3
194
+ - 1
195
+ version: 1.3.1
160
196
  requirements: []
161
197
 
162
198
  rubyforge_project:
163
- rubygems_version: 1.3.6
199
+ rubygems_version: 1.3.7
164
200
  signing_key:
165
201
  specification_version: 3
166
202
  summary: Distribute your spec suite amongst your LAN via Bonjour.
167
203
  test_files:
168
- - spec/cpu_spec.rb
169
- - spec/lib/specjour/worker_spec.rb
170
- - spec/manager_spec.rb
171
- - spec/rsync_daemon_spec.rb
172
204
  - spec/spec_helper.rb
205
+ - spec/specjour/cli_spec.rb
206
+ - spec/specjour/configuration_spec.rb
207
+ - spec/specjour/cpu_spec.rb
208
+ - spec/specjour/manager_spec.rb
209
+ - spec/specjour/printer_spec.rb
210
+ - spec/specjour/rsync_daemon_spec.rb
173
211
  - spec/specjour_spec.rb
@@ -1,18 +0,0 @@
1
- module Specjour
2
- module Cucumber
3
- class Dispatcher < ::Specjour::Dispatcher
4
-
5
- protected
6
-
7
- def all_specs
8
- @all_specs ||= Dir.chdir(project_path) do
9
- Dir["features/**/*.feature"]
10
- end
11
- end
12
-
13
- def printer
14
- @printer ||= Printer.start(all_specs)
15
- end
16
- end
17
- end
18
- end
@@ -1,9 +0,0 @@
1
- module Specjour
2
- module Cucumber
3
- class Printer < ::Specjour::Printer
4
- def report
5
- @report ||= FinalReport.new
6
- end
7
- end
8
- end
9
- end
@@ -1,11 +0,0 @@
1
- module Specjour
2
- module SocketHelpers
3
- def ip_from_hostname(hostname)
4
- Socket.getaddrinfo(hostname, nil, Socket::AF_INET, Socket::SOCK_STREAM).first.fetch(3)
5
- end
6
-
7
- def hostname
8
- @hostname ||= Socket.gethostname
9
- end
10
- end
11
- end
@@ -1,21 +0,0 @@
1
- require 'specjour'
2
-
3
- namespace :specjour do
4
- task :dispatch, [:project_path] do |task, args|
5
- args.with_defaults :project_path => Rake.original_dir
6
- Specjour::Dispatcher.new(args.project_path).start
7
- end
8
-
9
- namespace :cucumber do
10
- task :dispatch, [:project_path] do |task, args|
11
- args.with_defaults :project_path => Rake.original_dir
12
- Specjour::Cucumber::Dispatcher.new(args.project_path).start
13
- end
14
- end
15
-
16
- desc "Dispatch the project to listening managers"
17
- task :cucumber => "cucumber:dispatch"
18
- end
19
-
20
- desc "Dispatch the project to listening managers"
21
- task :specjour => "specjour:dispatch"
@@ -1 +0,0 @@
1
- load File.join(File.dirname(__FILE__), "dispatch.rake")
data/rails/init.rb DELETED
@@ -1,6 +0,0 @@
1
- if ENV['PREPARE_DB']
2
- Rails.configuration.after_initialize do
3
- require 'specjour/db_scrub'
4
- Specjour::DbScrub.scrub
5
- end
6
- end
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- class CustomException < RuntimeError
4
- end
5
-
6
- def boo
7
- raise CustomException, 'fails'
8
- end
9
-
10
- describe Specjour::Worker do
11
- it "fails" do
12
- boo
13
- end
14
- end