specjour 0.2.5 → 0.3.0.rc1

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 (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