zeus 0.15.3 → 0.15.4
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.
- data/Gemfile +5 -2
- data/Gemfile.lock +16 -19
- data/build/fsevents-wrapper +0 -0
- data/build/zeus-darwin-amd64 +0 -0
- data/build/zeus-linux-386 +0 -0
- data/build/zeus-linux-amd64 +0 -0
- data/ext/inotify-wrapper/inotify-wrapper.cpp +1 -0
- data/lib/zeus/m.rb +2 -4
- data/lib/zeus/rails.rb +5 -1
- data/lib/zeus/version.rb +1 -1
- data/spec/fake_mini_test.rb +7 -13
- data/spec/m_spec.rb +33 -37
- data/spec/rails_spec.rb +56 -41
- data/spec/spec_helper.rb +5 -5
- data/zeus.gemspec +2 -4
- metadata +13 -45
data/Gemfile
CHANGED
@@ -1,4 +1,7 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
#
|
4
|
-
gemspec
|
3
|
+
# NOTE: Avoid putting development deps in gemspec
|
4
|
+
gemspec development_group: :gem_build_tools
|
5
|
+
|
6
|
+
gem 'rspec', '~> 3.1', groups: [:test, :development]
|
7
|
+
gem 'rake', group: :gem_build_tools
|
data/Gemfile.lock
CHANGED
@@ -1,36 +1,33 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
zeus (0.15.
|
4
|
+
zeus (0.15.4)
|
5
5
|
method_source (>= 0.6.7)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
diff-lcs (1.
|
11
|
-
hpricot (0.8.6)
|
10
|
+
diff-lcs (1.2.5)
|
12
11
|
method_source (0.8.2)
|
13
|
-
mustache (0.99.5)
|
14
12
|
rake (10.3.0)
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
rspec-
|
24
|
-
rspec-
|
25
|
-
|
26
|
-
|
27
|
-
rspec-mocks (2.12.2)
|
13
|
+
rspec (3.1.0)
|
14
|
+
rspec-core (~> 3.1.0)
|
15
|
+
rspec-expectations (~> 3.1.0)
|
16
|
+
rspec-mocks (~> 3.1.0)
|
17
|
+
rspec-core (3.1.7)
|
18
|
+
rspec-support (~> 3.1.0)
|
19
|
+
rspec-expectations (3.1.2)
|
20
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
21
|
+
rspec-support (~> 3.1.0)
|
22
|
+
rspec-mocks (3.1.3)
|
23
|
+
rspec-support (~> 3.1.0)
|
24
|
+
rspec-support (3.1.2)
|
28
25
|
|
29
26
|
PLATFORMS
|
30
27
|
ruby
|
31
28
|
|
32
29
|
DEPENDENCIES
|
30
|
+
bundler (~> 1.6)
|
33
31
|
rake
|
34
|
-
|
35
|
-
rspec (~> 2.12.0)
|
32
|
+
rspec (~> 3.1)
|
36
33
|
zeus!
|
data/build/fsevents-wrapper
CHANGED
Binary file
|
data/build/zeus-darwin-amd64
CHANGED
Binary file
|
data/build/zeus-linux-386
CHANGED
Binary file
|
data/build/zeus-linux-amd64
CHANGED
Binary file
|
data/lib/zeus/m.rb
CHANGED
data/lib/zeus/rails.rb
CHANGED
@@ -206,9 +206,13 @@ module Zeus
|
|
206
206
|
end
|
207
207
|
|
208
208
|
def test(argv=ARGV)
|
209
|
-
if
|
209
|
+
# if there are two test frameworks and one of them is RSpec,
|
210
|
+
# then "zeus test/rspec/testrb" without arguments runs the
|
211
|
+
# RSpec suite by default.
|
212
|
+
if (argv.empty? || spec_file?(argv)) && defined?(RSpec)
|
210
213
|
# disable autorun in case the user left it in spec_helper.rb
|
211
214
|
RSpec::Core::Runner.disable_autorun!
|
215
|
+
argv = ["spec"] if argv.empty?
|
212
216
|
exit RSpec::Core::Runner.run(argv)
|
213
217
|
else
|
214
218
|
Zeus::M.run(argv)
|
data/lib/zeus/version.rb
CHANGED
data/spec/fake_mini_test.rb
CHANGED
@@ -6,24 +6,18 @@ module MiniTest
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def stub_mini_test_methods
|
9
|
-
MiniTest::Unit::TestCase.
|
10
|
-
MiniTest::Unit.
|
9
|
+
allow(MiniTest::Unit::TestCase).to receive(:test_suites).and_return([fake_suite])
|
10
|
+
allow(MiniTest::Unit).to receive(:runner).and_return(fake_runner)
|
11
11
|
end
|
12
12
|
|
13
13
|
def fake_runner
|
14
|
-
@runner ||=
|
14
|
+
@runner ||= double("Runner", :run => 0)
|
15
15
|
end
|
16
16
|
|
17
17
|
def fake_suite
|
18
|
-
@suite ||=
|
19
|
-
:test_methods => [
|
20
|
-
:instance_method => fake_instance_method)
|
21
|
-
end
|
22
|
-
|
23
|
-
def fake_suite_with_special_characters
|
24
|
-
@suite ||= stub("TestSuite",
|
25
|
-
:test_methods => [fake_special_characters_test_method],
|
26
|
-
:instance_method => fake_instance_method(fake_special_characters_test_method))
|
18
|
+
@suite ||= double("TestSuite",
|
19
|
+
:test_methods => [test_method],
|
20
|
+
:instance_method => fake_instance_method(test_method))
|
27
21
|
end
|
28
22
|
|
29
23
|
def fake_test_method
|
@@ -35,7 +29,7 @@ def fake_special_characters_test_method
|
|
35
29
|
end
|
36
30
|
|
37
31
|
def fake_instance_method(name=fake_test_method)
|
38
|
-
@instance_method ||=
|
32
|
+
@instance_method ||= double("InstanceMethod",
|
39
33
|
:source_location => ["path/to/file.rb", 2],
|
40
34
|
:source => "def #{name} \n assert true \n end")
|
41
35
|
end
|
data/spec/m_spec.rb
CHANGED
@@ -3,106 +3,102 @@ require 'fake_mini_test'
|
|
3
3
|
|
4
4
|
module Zeus::M
|
5
5
|
describe Runner do
|
6
|
+
let(:test_method) { fake_test_method }
|
7
|
+
|
8
|
+
before(:each) do
|
9
|
+
stub_mini_test_methods
|
10
|
+
end
|
6
11
|
|
7
12
|
context "given a test with a question mark" do
|
8
|
-
|
9
|
-
MiniTest::Unit::TestCase.stub!(:test_suites).and_return [fake_suite_with_special_characters]
|
10
|
-
MiniTest::Unit.stub!(:runner).and_return fake_runner
|
11
|
-
end
|
13
|
+
let(:test_method) { fake_special_characters_test_method }
|
12
14
|
|
13
15
|
it "escapes the question mark when using line number" do
|
14
16
|
argv = ["path/to/file.rb:2"]
|
15
17
|
|
16
|
-
fake_runner.
|
18
|
+
expect(fake_runner).to receive(:run).with(["-n", "/(test_my_test_method\\?)/"])
|
17
19
|
|
18
|
-
lambda { Runner.new(argv).run }.
|
20
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
19
21
|
end
|
20
22
|
|
21
23
|
it "does not escape regex on explicit names" do
|
22
24
|
argv = ["path/to/file.rb", "--name", fake_special_characters_test_method]
|
23
25
|
|
24
|
-
fake_runner.
|
26
|
+
allow(fake_runner).to receive(:run).with(["-n", "test_my_test_method?"])
|
25
27
|
|
26
|
-
lambda { Runner.new(argv).run }.
|
28
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
27
29
|
end
|
28
30
|
end
|
29
|
-
end
|
30
|
-
|
31
|
-
describe Runner do
|
32
|
-
before do
|
33
|
-
stub_mini_test_methods
|
34
|
-
end
|
35
31
|
|
36
|
-
context "no option
|
37
|
-
it "runs the test
|
32
|
+
context "given no option" do
|
33
|
+
it "runs the test" do
|
38
34
|
argv = ["path/to/file.rb"]
|
39
35
|
|
40
|
-
fake_runner.
|
36
|
+
allow(fake_runner).to receive(:run).with([])
|
41
37
|
|
42
|
-
lambda { Runner.new(argv).run }.
|
38
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
43
39
|
end
|
44
40
|
end
|
45
41
|
|
46
42
|
context "given a line number" do
|
47
|
-
it "aborts if no test is found" do
|
43
|
+
it "aborts if no test is found on that line number" do
|
48
44
|
argv = ["path/to/file.rb:100"]
|
49
45
|
|
50
|
-
STDERR.
|
51
|
-
fake_runner.
|
46
|
+
expect(STDERR).to receive(:write).with(/No tests found on line 100/)
|
47
|
+
expect(fake_runner).to_not receive :run
|
52
48
|
|
53
|
-
lambda { Runner.new(argv).run }.
|
49
|
+
expect(lambda { Runner.new(argv).run }).to_not exit_with_code(0)
|
54
50
|
end
|
55
51
|
|
56
52
|
it "runs the test if the correct line number is given" do
|
57
53
|
argv = ["path/to/file.rb:2"]
|
58
54
|
|
59
|
-
fake_runner.
|
55
|
+
expect(fake_runner).to receive(:run).with(["-n", "/(#{fake_test_method})/"])
|
60
56
|
|
61
|
-
lambda { Runner.new(argv).run }.
|
57
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
62
58
|
end
|
63
59
|
end
|
64
60
|
|
65
|
-
context "
|
61
|
+
context "given a specific test name" do
|
66
62
|
it "runs the specified tests when using a pattern in --name option" do
|
67
63
|
argv = ["path/to/file.rb", "--name", "/#{fake_test_method}/"]
|
68
64
|
|
69
|
-
fake_runner.
|
65
|
+
expect(fake_runner).to receive(:run).with(["-n", "/#{fake_test_method}/"])
|
70
66
|
|
71
|
-
lambda { Runner.new(argv).run }.
|
67
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
72
68
|
end
|
73
69
|
|
74
70
|
it "runs the specified tests when using a pattern in -n option" do
|
75
71
|
argv = ["path/to/file.rb", "-n", "/method/"]
|
76
72
|
|
77
|
-
fake_runner.
|
73
|
+
expect(fake_runner).to receive(:run).with(["-n", "/method/"])
|
78
74
|
|
79
|
-
lambda { Runner.new(argv).run }.
|
75
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
80
76
|
end
|
81
77
|
|
82
78
|
it "aborts if no test matches the given pattern" do
|
83
79
|
argv = ["path/to/file.rb", "-n", "/garbage/"]
|
84
80
|
|
85
|
-
STDERR.
|
86
|
-
fake_runner.
|
81
|
+
expect(STDERR).to receive(:write).with(%r{No test name matches \'/garbage/\'})
|
82
|
+
expect(fake_runner).to_not receive :run
|
87
83
|
|
88
|
-
lambda { Runner.new(argv).run }.
|
84
|
+
expect(lambda { Runner.new(argv).run }).to_not exit_with_code(0)
|
89
85
|
end
|
90
86
|
|
91
87
|
it "runs the specified tests when using a name (no pattern)" do
|
92
88
|
argv = ["path/to/file.rb", "-n", "#{fake_test_method}"]
|
93
89
|
|
94
|
-
fake_runner.
|
90
|
+
expect(fake_runner).to receive(:run).with(["-n", fake_test_method])
|
95
91
|
|
96
|
-
lambda { Runner.new(argv).run }.
|
92
|
+
expect(lambda { Runner.new(argv).run }).to exit_with_code(0)
|
97
93
|
end
|
98
94
|
|
99
95
|
it "aborts if no test matches the given test name" do
|
100
96
|
argv = ["path/to/file.rb", "-n", "method"]
|
101
97
|
|
102
|
-
STDERR.
|
103
|
-
fake_runner.
|
98
|
+
expect(STDERR).to receive(:write).with(%r{No test name matches \'method\'})
|
99
|
+
expect(fake_runner).to_not receive :run
|
104
100
|
|
105
|
-
lambda { Runner.new(argv).run }.
|
101
|
+
expect(lambda { Runner.new(argv).run }).to_not exit_with_code(0)
|
106
102
|
end
|
107
103
|
end
|
108
104
|
end
|
data/spec/rails_spec.rb
CHANGED
@@ -4,69 +4,84 @@ module Zeus
|
|
4
4
|
describe Rails do
|
5
5
|
subject(:rails) { Rails.new }
|
6
6
|
|
7
|
-
|
7
|
+
describe "#test_helper" do
|
8
8
|
before(:each) do
|
9
|
-
|
9
|
+
# Zeus::Rails#test_helper will require minitest/unit by default.
|
10
|
+
# We need to catch it first, before setting expectations on
|
11
|
+
# helper_file requires below.
|
12
|
+
expect(rails).to receive(:require).with("minitest/unit")
|
10
13
|
end
|
11
14
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
+
context "when ENV['RAILS_TEST_HELPER'] is set" do
|
16
|
+
it "loads the test helper file from the environment variable" do
|
17
|
+
helper = "a_test_helper"
|
18
|
+
allow(ENV).to receive(:[]).with("RAILS_TEST_HELPER").and_return(helper)
|
15
19
|
|
16
|
-
|
17
|
-
|
20
|
+
expect(rails).to receive(:require).with(helper)
|
21
|
+
rails.test_helper
|
22
|
+
end
|
18
23
|
end
|
19
24
|
|
20
|
-
|
21
|
-
|
25
|
+
context "when using rspec" do
|
26
|
+
context "3.0+" do
|
27
|
+
it "requires rails_helper" do
|
28
|
+
mock_file_existence(ROOT_PATH + "/spec/rails_helper.rb", true)
|
22
29
|
|
23
|
-
|
30
|
+
expect(rails).to receive(:require).with("rails_helper")
|
24
31
|
|
25
|
-
|
26
|
-
|
32
|
+
rails.test_helper
|
33
|
+
end
|
34
|
+
end
|
27
35
|
|
28
|
-
|
29
|
-
|
30
|
-
|
36
|
+
it "requires spec_helper" do
|
37
|
+
mock_file_existence(ROOT_PATH + "/spec/rails_helper.rb", false)
|
38
|
+
mock_file_existence(ROOT_PATH + "/spec/spec_helper.rb", true)
|
31
39
|
|
32
|
-
|
40
|
+
expect(rails).to receive(:require).with("spec_helper")
|
33
41
|
|
34
|
-
|
42
|
+
rails.test_helper
|
43
|
+
end
|
35
44
|
end
|
36
45
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
46
|
+
context "when using minitest" do
|
47
|
+
it "requires minitest_helper" do
|
48
|
+
mock_file_existence(ROOT_PATH + "/spec/rails_helper.rb", false)
|
49
|
+
mock_file_existence(ROOT_PATH + "/spec/spec_helper.rb", false)
|
50
|
+
mock_file_existence(ROOT_PATH + "/test/minitest_helper.rb", true)
|
41
51
|
|
42
|
-
|
52
|
+
expect(rails).to receive(:require).with("minitest_helper")
|
43
53
|
|
44
|
-
|
54
|
+
rails.test_helper
|
55
|
+
end
|
45
56
|
end
|
46
57
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
58
|
+
context "when there are no rspec or minitest helpers" do
|
59
|
+
it "requires test_helper" do
|
60
|
+
mock_file_existence(ROOT_PATH + "/spec/rails_helper.rb", false)
|
61
|
+
mock_file_existence(ROOT_PATH + "/spec/spec_helper.rb", false)
|
62
|
+
mock_file_existence(ROOT_PATH + "/test/minitest_helper.rb", false)
|
51
63
|
|
52
|
-
|
64
|
+
expect(rails).to receive(:require).with("test_helper")
|
53
65
|
|
54
|
-
|
66
|
+
rails.test_helper
|
67
|
+
end
|
55
68
|
end
|
56
69
|
end
|
57
70
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
exception_notification (
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
71
|
+
describe "#gem_is_bundled?" do
|
72
|
+
context "for a bundled gem" do
|
73
|
+
it "returns the bundled gem's version" do
|
74
|
+
allow(File).to receive(:read).and_return("
|
75
|
+
GEM
|
76
|
+
remote: https://rubygems.org/
|
77
|
+
specs:
|
78
|
+
exception_notification-rake (0.0.6)
|
79
|
+
exception_notification (~> 3.0.1)
|
80
|
+
rake (>= 0.9.0)
|
81
|
+
rake (10.0.4)
|
82
|
+
")
|
83
|
+
expect(gem_is_bundled?('rake')).to eq '10.0.4'
|
84
|
+
end
|
70
85
|
end
|
71
86
|
end
|
72
87
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -10,11 +10,11 @@ RSpec::Matchers.define :exit_with_code do |exp_code|
|
|
10
10
|
end
|
11
11
|
actual and actual == exp_code
|
12
12
|
end
|
13
|
-
|
13
|
+
failure_message do |block|
|
14
14
|
"expected block to call exit(#{exp_code}) but exit" +
|
15
15
|
(actual.nil? ? " not called" : "(#{actual}) was called")
|
16
16
|
end
|
17
|
-
|
17
|
+
failure_message_when_negated do |block|
|
18
18
|
"expected block not to call exit(#{exp_code})"
|
19
19
|
end
|
20
20
|
description do
|
@@ -23,12 +23,12 @@ RSpec::Matchers.define :exit_with_code do |exp_code|
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def stub_system_methods
|
26
|
-
Dir.
|
27
|
-
Kernel.
|
26
|
+
allow(Dir).to receive(:glob).and_return(["path/to/file.rb"])
|
27
|
+
allow(Kernel).to receive(:load)
|
28
28
|
end
|
29
29
|
|
30
30
|
def mock_file_existence(file, result)
|
31
|
-
File.
|
31
|
+
expect(File).to receive(:exists?).with(file).and_return(result)
|
32
32
|
end
|
33
33
|
|
34
34
|
RSpec.configure do |config|
|
data/zeus.gemspec
CHANGED
@@ -27,9 +27,7 @@ Gem::Specification.new do |gem|
|
|
27
27
|
gem.version = version
|
28
28
|
gem.license = "MIT"
|
29
29
|
|
30
|
-
gem.add_development_dependency "rspec", '~> 2.12.0'
|
31
|
-
gem.add_development_dependency "rake"
|
32
|
-
gem.add_development_dependency "ronn", '>= 0.7.0'
|
33
|
-
|
34
30
|
gem.add_runtime_dependency "method_source", ">= 0.6.7"
|
31
|
+
|
32
|
+
gem.add_development_dependency "bundler", '~> 1.6'
|
35
33
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zeus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,72 +9,40 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2015-01-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
|
-
requirements:
|
19
|
-
- - ~>
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: 2.12.0
|
22
|
-
type: :development
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 2.12.0
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: rake
|
15
|
+
name: method_source
|
32
16
|
requirement: !ruby/object:Gem::Requirement
|
33
17
|
none: false
|
34
18
|
requirements:
|
35
19
|
- - ! '>='
|
36
20
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
38
|
-
type: :
|
21
|
+
version: 0.6.7
|
22
|
+
type: :runtime
|
39
23
|
prerelease: false
|
40
24
|
version_requirements: !ruby/object:Gem::Requirement
|
41
25
|
none: false
|
42
26
|
requirements:
|
43
27
|
- - ! '>='
|
44
28
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
29
|
+
version: 0.6.7
|
46
30
|
- !ruby/object:Gem::Dependency
|
47
|
-
name:
|
31
|
+
name: bundler
|
48
32
|
requirement: !ruby/object:Gem::Requirement
|
49
33
|
none: false
|
50
34
|
requirements:
|
51
|
-
- -
|
35
|
+
- - ~>
|
52
36
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
37
|
+
version: '1.6'
|
54
38
|
type: :development
|
55
39
|
prerelease: false
|
56
40
|
version_requirements: !ruby/object:Gem::Requirement
|
57
41
|
none: false
|
58
42
|
requirements:
|
59
|
-
- -
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 0.7.0
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: method_source
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
|
-
requirements:
|
67
|
-
- - ! '>='
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: 0.6.7
|
70
|
-
type: :runtime
|
71
|
-
prerelease: false
|
72
|
-
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
43
|
+
- - ~>
|
76
44
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
45
|
+
version: '1.6'
|
78
46
|
description: Boot any rails app in under a second
|
79
47
|
email:
|
80
48
|
- burke@libbey.me
|
@@ -134,7 +102,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
134
102
|
version: '0'
|
135
103
|
segments:
|
136
104
|
- 0
|
137
|
-
hash:
|
105
|
+
hash: -3287208852062006683
|
138
106
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
139
107
|
none: false
|
140
108
|
requirements:
|
@@ -143,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
143
111
|
version: '0'
|
144
112
|
segments:
|
145
113
|
- 0
|
146
|
-
hash:
|
114
|
+
hash: -3287208852062006683
|
147
115
|
requirements: []
|
148
116
|
rubyforge_project:
|
149
117
|
rubygems_version: 1.8.23
|