rspec-preloader 1.0.1 → 1.1.0
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.
- checksums.yaml +4 -4
- data/bin/rspec-preloader +1 -1
- data/bin/rspec-preloader-client +5 -0
- data/bin/rspec-preloader-server +5 -0
- data/lib/rspec_preloader.rb +22 -30
- data/lib/rspec_preloader/client.rb +15 -0
- data/lib/rspec_preloader/command_line.rb +37 -0
- data/lib/rspec_preloader/server.rb +16 -0
- data/lib/rspec_preloader/spec_runner.rb +7 -4
- metadata +9 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca688386bc79e453291f02876ab1c32bd87d0b84
|
4
|
+
data.tar.gz: 900152d6cde6d2c6b955bb3b2719e76f2ef26b66
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6719c5bc7bfc0889d18cb33e500211cecc7cbd286d959303ad634555976f2d0dd133daee80a7f6ad3cf47ffca42083005d366309ea2a4401667554cb62ce81d1
|
7
|
+
data.tar.gz: 343ed013789dacf8cf68a17a57ace9a68b6e9f783e220a7343ddcdf69dd4a6b4e54245100b76764e88218841a81e9b13e9b4e10b417de792de657a939a55e795
|
data/bin/rspec-preloader
CHANGED
data/lib/rspec_preloader.rb
CHANGED
@@ -1,49 +1,41 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require_relative "rspec_preloader/
|
1
|
+
require_relative "rspec_preloader/command_line"
|
2
|
+
require_relative "rspec_preloader/server"
|
3
|
+
require_relative "rspec_preloader/client"
|
4
4
|
|
5
5
|
class RspecPreloader
|
6
6
|
|
7
|
-
def self.
|
8
|
-
|
7
|
+
def self.run(rspec_arguments = nil)
|
8
|
+
setup
|
9
|
+
CommandLine.run(rspec_arguments)
|
9
10
|
end
|
10
11
|
|
11
|
-
def
|
12
|
-
|
12
|
+
def self.run_server
|
13
|
+
setup
|
14
|
+
Server.run
|
13
15
|
end
|
14
16
|
|
15
|
-
def
|
17
|
+
def self.run_client(rspec_arguments)
|
18
|
+
Client.run(rspec_arguments)
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def self.setup
|
24
|
+
trap_int_signal
|
25
|
+
load_spec_helper
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.trap_int_signal
|
16
29
|
trap("INT") do
|
17
30
|
puts "Shutting down rspec-preloader"
|
18
31
|
exit
|
19
32
|
end
|
20
|
-
load_spec_helper
|
21
|
-
|
22
|
-
first_run
|
23
|
-
server_loop
|
24
33
|
end
|
25
34
|
|
26
|
-
|
27
|
-
|
28
|
-
def load_spec_helper
|
35
|
+
def self.load_spec_helper
|
29
36
|
print "Loading spec_helper..."
|
30
37
|
require "#{Dir.pwd}/spec/spec_helper"
|
31
38
|
puts "done."
|
32
39
|
end
|
33
40
|
|
34
|
-
def first_run
|
35
|
-
return if @rspec_arguments == ""
|
36
|
-
Readline::HISTORY << @rspec_arguments.join(" ")
|
37
|
-
SpecRunner.run_rspec(@rspec_arguments)
|
38
|
-
end
|
39
|
-
|
40
|
-
def server_loop
|
41
|
-
loop do
|
42
|
-
rspec_arguments = Readline.readline("rspec > ", true)
|
43
|
-
break if [nil, "exit"].include?(rspec_arguments)
|
44
|
-
rspec_arguments_array = rspec_arguments.chomp.split(" ")
|
45
|
-
SpecRunner.run_rspec(rspec_arguments_array)
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
41
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'drb/drb'
|
2
|
+
require_relative 'server'
|
3
|
+
|
4
|
+
class RspecPreloader
|
5
|
+
class Client
|
6
|
+
|
7
|
+
def self.run(rspec_arguments)
|
8
|
+
DRb.start_service
|
9
|
+
|
10
|
+
rspec_runner = DRbObject.new_with_uri(SERVER_URI)
|
11
|
+
rspec_runner.run_rspec(rspec_arguments, STDERR, STDOUT)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require "readline"
|
2
|
+
require_relative "spec_runner"
|
3
|
+
|
4
|
+
class RspecPreloader
|
5
|
+
class CommandLine
|
6
|
+
def self.run(rspec_arguments = [''])
|
7
|
+
new(rspec_arguments).run
|
8
|
+
end
|
9
|
+
|
10
|
+
def initialize(rspec_arguments)
|
11
|
+
@rspec_arguments = rspec_arguments
|
12
|
+
end
|
13
|
+
|
14
|
+
def run
|
15
|
+
first_run
|
16
|
+
command_line_loop
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def first_run
|
22
|
+
return if @rspec_arguments == ""
|
23
|
+
Readline::HISTORY << @rspec_arguments.join(" ")
|
24
|
+
SpecRunner.run_rspec(@rspec_arguments)
|
25
|
+
end
|
26
|
+
|
27
|
+
def command_line_loop
|
28
|
+
loop do
|
29
|
+
rspec_arguments = Readline.readline("rspec > ", true)
|
30
|
+
break if [nil, "exit"].include?(rspec_arguments)
|
31
|
+
rspec_arguments_array = rspec_arguments.chomp.split(" ")
|
32
|
+
SpecRunner.run_rspec(rspec_arguments_array)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
@@ -1,14 +1,17 @@
|
|
1
|
+
require "rspec/core"
|
1
2
|
require_relative "file_selector"
|
2
3
|
|
3
4
|
class RspecPreloader
|
4
5
|
class SpecRunner
|
5
6
|
|
6
|
-
def self.run_rspec(rspec_arguments_array)
|
7
|
-
new(rspec_arguments_array).run_rspec
|
7
|
+
def self.run_rspec(rspec_arguments_array, std_err = STDERR, std_out = STDOUT)
|
8
|
+
new(rspec_arguments_array, std_err, std_out).run_rspec
|
8
9
|
end
|
9
10
|
|
10
|
-
def initialize(rspec_arguments_array)
|
11
|
+
def initialize(rspec_arguments_array, std_err, std_out)
|
11
12
|
@rspec_arguments = rspec_arguments_array
|
13
|
+
@std_err = std_err
|
14
|
+
@std_out = std_out
|
12
15
|
end
|
13
16
|
|
14
17
|
def run_rspec
|
@@ -28,7 +31,7 @@ class RspecPreloader
|
|
28
31
|
end
|
29
32
|
|
30
33
|
def run_specs(arguments_array)
|
31
|
-
RSpec::Core::Runner.run(arguments_array,
|
34
|
+
RSpec::Core::Runner.run(arguments_array, @std_err, @std_out)
|
32
35
|
end
|
33
36
|
|
34
37
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-preloader
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Mours
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-01-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -56,12 +56,19 @@ description: Life is too short to be waiting for your tests to load.
|
|
56
56
|
email: victor.mours@gmail.com
|
57
57
|
executables:
|
58
58
|
- rspec-preloader
|
59
|
+
- rspec-preloader-server
|
60
|
+
- rspec-preloader-client
|
59
61
|
extensions: []
|
60
62
|
extra_rdoc_files: []
|
61
63
|
files:
|
62
64
|
- bin/rspec-preloader
|
65
|
+
- bin/rspec-preloader-client
|
66
|
+
- bin/rspec-preloader-server
|
63
67
|
- lib/rspec_preloader.rb
|
68
|
+
- lib/rspec_preloader/client.rb
|
69
|
+
- lib/rspec_preloader/command_line.rb
|
64
70
|
- lib/rspec_preloader/file_selector.rb
|
71
|
+
- lib/rspec_preloader/server.rb
|
65
72
|
- lib/rspec_preloader/spec_runner.rb
|
66
73
|
homepage: https://github.com/victormours/rspec-preloader
|
67
74
|
licenses:
|