stendhal 0.0.1
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/.gitignore +5 -0
- data/.rspec +2 -0
- data/.rvmrc +1 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +45 -0
- data/Rakefile +13 -0
- data/Readme.md +51 -0
- data/bin/stendhal +3 -0
- data/features/examples.feature +101 -0
- data/features/support/env.rb +1 -0
- data/lib/stendhal/assertions.rb +12 -0
- data/lib/stendhal/autorun.rb +11 -0
- data/lib/stendhal/core_ext/kernel.rb +5 -0
- data/lib/stendhal/dsl.rb +20 -0
- data/lib/stendhal/example.rb +59 -0
- data/lib/stendhal/example_group.rb +61 -0
- data/lib/stendhal/version.rb +3 -0
- data/lib/stendhal.rb +6 -0
- data/script/console +8 -0
- data/spec/spec_helper.rb +13 -0
- data/spec/stendhal/assertions_spec.rb +29 -0
- data/spec/stendhal/core_ext/kernel_spec.rb +5 -0
- data/spec/stendhal/example_group_spec.rb +87 -0
- data/spec/stendhal/example_spec.rb +65 -0
- data/stendhal.gemspec +27 -0
- metadata +148 -0
data/.rspec
ADDED
data/.rvmrc
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rvm --create use ruby-1.9.2@stendhal > /dev/null
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
stendhal (0.0.1)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: http://rubygems.org/
|
8
|
+
specs:
|
9
|
+
aruba (0.2.2)
|
10
|
+
builder (2.1.2)
|
11
|
+
cucumber (0.8.5)
|
12
|
+
builder (~> 2.1.2)
|
13
|
+
diff-lcs (~> 1.1.2)
|
14
|
+
gherkin (~> 2.1.4)
|
15
|
+
json_pure (~> 1.4.3)
|
16
|
+
term-ansicolor (~> 1.0.4)
|
17
|
+
diff-lcs (1.1.2)
|
18
|
+
gherkin (2.1.5)
|
19
|
+
trollop (~> 1.16.2)
|
20
|
+
json_pure (1.4.6)
|
21
|
+
rspec (2.0.1)
|
22
|
+
rspec-core (~> 2.0.1)
|
23
|
+
rspec-expectations (~> 2.0.1)
|
24
|
+
rspec-mocks (~> 2.0.1)
|
25
|
+
rspec-core (2.0.1)
|
26
|
+
rspec-expectations (2.0.1)
|
27
|
+
diff-lcs (>= 1.1.2)
|
28
|
+
rspec-mocks (2.0.1)
|
29
|
+
rspec-core (~> 2.0.1)
|
30
|
+
rspec-expectations (~> 2.0.1)
|
31
|
+
simplecov (0.3.6)
|
32
|
+
simplecov-html (>= 0.3.7)
|
33
|
+
simplecov-html (0.3.8)
|
34
|
+
term-ansicolor (1.0.5)
|
35
|
+
trollop (1.16.2)
|
36
|
+
|
37
|
+
PLATFORMS
|
38
|
+
ruby
|
39
|
+
|
40
|
+
DEPENDENCIES
|
41
|
+
aruba
|
42
|
+
cucumber (= 0.8.5)
|
43
|
+
rspec
|
44
|
+
simplecov
|
45
|
+
stendhal!
|
data/Rakefile
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'bundler'
|
2
|
+
Bundler::GemHelper.install_tasks
|
3
|
+
|
4
|
+
require 'rspec/core/rake_task'
|
5
|
+
require 'cucumber/rake/task'
|
6
|
+
|
7
|
+
desc "Run the specs under spec"
|
8
|
+
RSpec::Core::RakeTask.new do |t|
|
9
|
+
end
|
10
|
+
|
11
|
+
Cucumber::Rake::Task.new(:cucumber)
|
12
|
+
|
13
|
+
task :default => :spec
|
data/Readme.md
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
#stendhal
|
2
|
+
|
3
|
+
A small test framework developed as a personal kata to improve my ruby.
|
4
|
+
|
5
|
+
Currently under development, not functional at all. Below I will be posting
|
6
|
+
whatever features are available throughout the development.
|
7
|
+
|
8
|
+
##Usage
|
9
|
+
|
10
|
+
# your spec file for some class - my_class_spec.rb
|
11
|
+
|
12
|
+
it "does something" do
|
13
|
+
my_object = MyClass.new
|
14
|
+
my_object.fancy = true
|
15
|
+
|
16
|
+
assert my_object.fancy
|
17
|
+
end
|
18
|
+
|
19
|
+
it "should do something but I don't know what yet"
|
20
|
+
|
21
|
+
pending "will do something else" do
|
22
|
+
my_object = MyClass.new
|
23
|
+
my_object.future_method
|
24
|
+
end
|
25
|
+
|
26
|
+
###Running the specs!
|
27
|
+
|
28
|
+
stendhal my_class_spec.rb
|
29
|
+
|
30
|
+
###And the output...
|
31
|
+
|
32
|
+
* does something
|
33
|
+
* should do something but I don't know what yet
|
34
|
+
* will do something else
|
35
|
+
|
36
|
+
3 examples, 0 failures, 2 pending
|
37
|
+
|
38
|
+
##Note on Patches/Pull Requests
|
39
|
+
|
40
|
+
* Fork the project.
|
41
|
+
* Make your feature addition or bug fix.
|
42
|
+
* Add specs for it. This is important so I don't break it in a
|
43
|
+
future version unintentionally.
|
44
|
+
* Commit, do not mess with rakefile, version, or history.
|
45
|
+
If you want to have your own version, that is fine but bump version
|
46
|
+
in a commit by itself I can ignore when I pull.
|
47
|
+
* Send me a pull request. Bonus points for topic branches.
|
48
|
+
|
49
|
+
## Copyright
|
50
|
+
|
51
|
+
Copyright (c) 2010 Josep M. Bach. See LICENSE for details.
|
data/bin/stendhal
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
Feature: Examples and example groups
|
2
|
+
|
3
|
+
Spec-ish Domain Specific Language
|
4
|
+
|
5
|
+
Scenario: declare an example
|
6
|
+
Given a directory named "rspec_project"
|
7
|
+
When I cd to "rspec_project"
|
8
|
+
Given a file named "sample_spec.rb" with:
|
9
|
+
"""
|
10
|
+
describe "something" do
|
11
|
+
it "does something" do
|
12
|
+
assert true
|
13
|
+
end
|
14
|
+
end
|
15
|
+
"""
|
16
|
+
When I run "stendhal sample_spec.rb"
|
17
|
+
Then the exit status should be 0
|
18
|
+
And the output should contain "1 example, 0 failures"
|
19
|
+
|
20
|
+
Scenario: declare a failing example
|
21
|
+
Given a directory named "rspec_project"
|
22
|
+
When I cd to "rspec_project"
|
23
|
+
Given a file named "sample_spec.rb" with:
|
24
|
+
"""
|
25
|
+
describe "something" do
|
26
|
+
it "does something" do
|
27
|
+
assert false
|
28
|
+
end
|
29
|
+
end
|
30
|
+
"""
|
31
|
+
When I run "stendhal sample_spec.rb"
|
32
|
+
Then the exit status should be 0
|
33
|
+
And the output should contain "* does something"
|
34
|
+
And the output should contain "1 example, 1 failure"
|
35
|
+
|
36
|
+
Scenario: declare a pending example
|
37
|
+
Given a directory named "rspec_project"
|
38
|
+
When I cd to "rspec_project"
|
39
|
+
Given a file named "sample_spec.rb" with:
|
40
|
+
"""
|
41
|
+
describe "something" do
|
42
|
+
pending "does something" do
|
43
|
+
assert false
|
44
|
+
end
|
45
|
+
end
|
46
|
+
"""
|
47
|
+
When I run "stendhal sample_spec.rb"
|
48
|
+
Then the exit status should be 0
|
49
|
+
And the output should contain "* does something"
|
50
|
+
And the output should contain "1 example, 0 failures, 1 pending"
|
51
|
+
|
52
|
+
Scenario: declare an example in nested groups
|
53
|
+
Given a directory named "rspec_project"
|
54
|
+
When I cd to "rspec_project"
|
55
|
+
Given a file named "sample_spec.rb" with:
|
56
|
+
"""
|
57
|
+
describe "something" do
|
58
|
+
describe "inside another thing" do
|
59
|
+
it "does this" do
|
60
|
+
assert true
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
"""
|
65
|
+
When I run "stendhal sample_spec.rb"
|
66
|
+
Then the exit status should be 0
|
67
|
+
And the output should contain "something"
|
68
|
+
And the output should contain "inside another thing"
|
69
|
+
And the output should contain "* does this"
|
70
|
+
And the output should contain "1 example, 0 failures"
|
71
|
+
|
72
|
+
Scenario: many examples in different example groups
|
73
|
+
Given a directory named "rspec_project"
|
74
|
+
When I cd to "rspec_project"
|
75
|
+
Given a file named "sample_spec.rb" with:
|
76
|
+
"""
|
77
|
+
describe "something" do
|
78
|
+
describe "inside another thing" do
|
79
|
+
it "does this" do
|
80
|
+
assert true
|
81
|
+
end
|
82
|
+
end
|
83
|
+
describe "pending" do
|
84
|
+
pending "todo" do
|
85
|
+
assert false
|
86
|
+
end
|
87
|
+
it "fails" do
|
88
|
+
assert false
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
"""
|
93
|
+
When I run "stendhal sample_spec.rb"
|
94
|
+
Then the exit status should be 0
|
95
|
+
And the output should contain "something"
|
96
|
+
And the output should contain "inside another thing"
|
97
|
+
And the output should contain "* does this"
|
98
|
+
And the output should contain "pending"
|
99
|
+
And the output should contain "* todo"
|
100
|
+
And the output should contain "* fails"
|
101
|
+
And the output should contain "3 examples, 1 failure, 1 pending"
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'aruba'
|
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
ARGV.each do |file|
|
4
|
+
require File.join('.',file)
|
5
|
+
end
|
6
|
+
|
7
|
+
examples, failures, pending = Stendhal::ExampleGroup.run_all
|
8
|
+
report = "\n#{examples} #{examples != 1 ? 'examples' : 'example'}, #{failures} #{failures != 1 ? 'failures' : 'failure'}"
|
9
|
+
report += ", #{pending} pending" if pending > 0
|
10
|
+
puts report
|
11
|
+
|
data/lib/stendhal/dsl.rb
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
module Stendhal
|
2
|
+
module DSL
|
3
|
+
module Example
|
4
|
+
def it(*args,&blk)
|
5
|
+
self.add_example Stendhal::Example.new(*args,&blk)
|
6
|
+
end
|
7
|
+
def pending(*args,&blk)
|
8
|
+
if args.last.is_a? Hash
|
9
|
+
options = args.pop
|
10
|
+
options.update(:pending => true)
|
11
|
+
else
|
12
|
+
options = {:pending => true}
|
13
|
+
end
|
14
|
+
self.add_example Stendhal::Example.new(*args,options,&blk)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
Stendhal::ExampleGroup.send(:include, Stendhal::DSL::Example)
|
@@ -0,0 +1,59 @@
|
|
1
|
+
module Stendhal
|
2
|
+
class Example
|
3
|
+
include Assertions
|
4
|
+
|
5
|
+
@@examples = []
|
6
|
+
|
7
|
+
attr_reader :description
|
8
|
+
attr_reader :block
|
9
|
+
|
10
|
+
def initialize(docstring, options = {}, &block)
|
11
|
+
@description = docstring
|
12
|
+
@block = block
|
13
|
+
@pending = true if options[:pending] || !block_given?
|
14
|
+
@@examples << self
|
15
|
+
end
|
16
|
+
|
17
|
+
def run
|
18
|
+
begin
|
19
|
+
self.instance_eval(&@block)
|
20
|
+
return 0
|
21
|
+
rescue AssertionFailed=>e
|
22
|
+
@failed = true
|
23
|
+
return 1
|
24
|
+
rescue StandardError=>e
|
25
|
+
@aborted = true
|
26
|
+
return 1
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def pending?
|
31
|
+
@pending
|
32
|
+
end
|
33
|
+
|
34
|
+
def failed?
|
35
|
+
@failed
|
36
|
+
end
|
37
|
+
|
38
|
+
def aborted?
|
39
|
+
@aborted
|
40
|
+
end
|
41
|
+
|
42
|
+
def destroy
|
43
|
+
@@examples.delete self
|
44
|
+
end
|
45
|
+
|
46
|
+
class << self
|
47
|
+
|
48
|
+
def destroy_all
|
49
|
+
@@examples = []
|
50
|
+
end
|
51
|
+
|
52
|
+
def count
|
53
|
+
@@examples.count
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
57
|
+
|
58
|
+
end
|
59
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
module Stendhal
|
2
|
+
class ExampleGroup
|
3
|
+
@@example_groups = []
|
4
|
+
|
5
|
+
attr_reader :description
|
6
|
+
attr_reader :block
|
7
|
+
attr_reader :examples
|
8
|
+
|
9
|
+
def initialize(docstring, options = {}, &block)
|
10
|
+
@description = docstring
|
11
|
+
@block = block
|
12
|
+
@examples = []
|
13
|
+
instance_exec(&@block) if block_given?
|
14
|
+
@@example_groups << self
|
15
|
+
end
|
16
|
+
|
17
|
+
def run
|
18
|
+
failures = pending = 0
|
19
|
+
examples.reject do |example|
|
20
|
+
if example.pending?
|
21
|
+
pending += 1
|
22
|
+
$stdout.print "* #{example.description}\n"
|
23
|
+
true
|
24
|
+
else
|
25
|
+
false
|
26
|
+
end
|
27
|
+
end.each do |example|
|
28
|
+
failures += example.run
|
29
|
+
$stdout.print "* #{example.description}\n"
|
30
|
+
end
|
31
|
+
[examples.count, failures, pending]
|
32
|
+
end
|
33
|
+
|
34
|
+
def add_example(example)
|
35
|
+
examples << example
|
36
|
+
end
|
37
|
+
|
38
|
+
class << self
|
39
|
+
attr_reader :example_groups
|
40
|
+
|
41
|
+
def destroy_all
|
42
|
+
@@example_groups = []
|
43
|
+
end
|
44
|
+
|
45
|
+
def run_all
|
46
|
+
result = [0,0,0]
|
47
|
+
@@example_groups.each do |g|
|
48
|
+
puts g.description
|
49
|
+
group_result = g.run
|
50
|
+
result = result.zip(group_result).map{ |pair| pair[0] + pair[1] }
|
51
|
+
end
|
52
|
+
result
|
53
|
+
end
|
54
|
+
|
55
|
+
def count
|
56
|
+
@@example_groups.count
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
end
|
61
|
+
end
|
data/lib/stendhal.rb
ADDED
data/script/console
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
|
4
|
+
require 'rubygems'
|
5
|
+
|
6
|
+
require 'simplecov'
|
7
|
+
SimpleCov.start do
|
8
|
+
add_group "Lib", 'lib'
|
9
|
+
end
|
10
|
+
|
11
|
+
require 'stendhal'
|
12
|
+
require 'rspec'
|
13
|
+
require 'rspec/autorun'
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class MyClass
|
4
|
+
include Stendhal::Assertions
|
5
|
+
end
|
6
|
+
|
7
|
+
module Stendhal
|
8
|
+
describe Assertions do
|
9
|
+
|
10
|
+
subject { MyClass.new }
|
11
|
+
|
12
|
+
describe "#assert" do
|
13
|
+
|
14
|
+
it "does nothing if asserted expression returns true" do
|
15
|
+
subject.assert true
|
16
|
+
end
|
17
|
+
|
18
|
+
it "raises an AssertionFailed exception otherwise" do
|
19
|
+
expect { subject.assert false }.to raise_error(AssertionFailed)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "yields a given message for the error" do
|
23
|
+
expect { subject.assert false, "softwared!" }.to raise_error(AssertionFailed, "softwared!")
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module Stendhal
|
4
|
+
describe ExampleGroup do
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
ExampleGroup.destroy_all
|
8
|
+
Example.destroy_all
|
9
|
+
end
|
10
|
+
|
11
|
+
it "is created with a docstring and a block" do
|
12
|
+
group = ExampleGroup.new("docstring") do
|
13
|
+
|
14
|
+
end
|
15
|
+
group.description.should == "docstring"
|
16
|
+
end
|
17
|
+
|
18
|
+
it "allows example declaration inside the block" do
|
19
|
+
expect {
|
20
|
+
ExampleGroup.new("docstring") do
|
21
|
+
it "does something" do
|
22
|
+
end
|
23
|
+
end
|
24
|
+
}.to_not raise_error
|
25
|
+
end
|
26
|
+
|
27
|
+
describe "#add_example" do
|
28
|
+
it 'adds an example to the group' do
|
29
|
+
group = ExampleGroup.new("docstring")
|
30
|
+
group.add_example Example.new("docstring")
|
31
|
+
group.should have(1).examples
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe "#run" do
|
36
|
+
before(:each) do
|
37
|
+
@runnable_examples = []
|
38
|
+
@group = ExampleGroup.new("group")
|
39
|
+
4.times do
|
40
|
+
example = Example.new("some example") do
|
41
|
+
assert true
|
42
|
+
end
|
43
|
+
@runnable_examples << example
|
44
|
+
@group.add_example example
|
45
|
+
end
|
46
|
+
@failing_example = Example.new("failing") do
|
47
|
+
assert false
|
48
|
+
end
|
49
|
+
@group.add_example @failing_example
|
50
|
+
@pending_example = Example.new("pending")
|
51
|
+
@group.add_example @pending_example
|
52
|
+
end
|
53
|
+
|
54
|
+
it "runs all non-pending examples" do
|
55
|
+
@runnable_examples.each {|e| e.should_receive(:run).once.and_return(0)}
|
56
|
+
@failing_example.should_receive(:run).once.and_return(1)
|
57
|
+
@pending_example.should_not_receive(:run)
|
58
|
+
|
59
|
+
@group.run
|
60
|
+
end
|
61
|
+
|
62
|
+
it "returns an array with total examples, failures and pendings" do
|
63
|
+
@group.run.should == [6,1,1]
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
describe "class methods" do
|
68
|
+
describe "#count" do
|
69
|
+
it "returns the number of example groups in memory" do
|
70
|
+
ExampleGroup.new("group")
|
71
|
+
ExampleGroup.count.should == 1
|
72
|
+
end
|
73
|
+
end
|
74
|
+
describe "#run_all" do
|
75
|
+
it "sums all the examples, failures and pendings and returns them as an array" do
|
76
|
+
group1 = ExampleGroup.new("group")
|
77
|
+
group1.stub(:run).and_return([1,2,3])
|
78
|
+
group2 = ExampleGroup.new("group")
|
79
|
+
group2.stub(:run).and_return([1,0,1])
|
80
|
+
|
81
|
+
ExampleGroup.run_all.should == [2,2,4]
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module Stendhal
|
4
|
+
describe Example do
|
5
|
+
|
6
|
+
before(:each) do
|
7
|
+
Example.destroy_all
|
8
|
+
end
|
9
|
+
|
10
|
+
let(:example_group) { double('example group') }
|
11
|
+
|
12
|
+
it "is created with a docstring and a block" do
|
13
|
+
example = Example.new("docstring") do
|
14
|
+
3 + 4
|
15
|
+
end
|
16
|
+
example.description.should == "docstring"
|
17
|
+
end
|
18
|
+
|
19
|
+
it "is pending unless given a block" do
|
20
|
+
example = Example.new("pending")
|
21
|
+
example.should be_pending
|
22
|
+
end
|
23
|
+
|
24
|
+
describe "#run" do
|
25
|
+
|
26
|
+
it "calls the block" do
|
27
|
+
example = Example.new("docstring") do
|
28
|
+
3 + 4
|
29
|
+
end
|
30
|
+
example.should_receive(:instance_eval)
|
31
|
+
|
32
|
+
example.run
|
33
|
+
end
|
34
|
+
|
35
|
+
it "captures failed assertions" do
|
36
|
+
example = Example.new("docstring") do
|
37
|
+
assert false
|
38
|
+
end
|
39
|
+
expect {example.run}.to_not raise_error
|
40
|
+
example.run
|
41
|
+
example.should be_failed
|
42
|
+
end
|
43
|
+
|
44
|
+
it "captures exceptions" do
|
45
|
+
example = Example.new("docstring") do
|
46
|
+
raise "error"
|
47
|
+
end
|
48
|
+
expect {example.run}.to_not raise_error
|
49
|
+
example.run
|
50
|
+
example.should be_aborted
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
describe "class methods" do
|
56
|
+
describe "#count" do
|
57
|
+
it "returns the number of examples in memory" do
|
58
|
+
Example.new("pending")
|
59
|
+
Example.count.should == 1
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
end
|
data/stendhal.gemspec
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "stendhal/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "stendhal"
|
7
|
+
s.version = Stendhal::VERSION
|
8
|
+
s.platform = Gem::Platform::RUBY
|
9
|
+
s.authors = ["Josep M. Bach"]
|
10
|
+
s.email = ["josep.m.bach@gmail.com"]
|
11
|
+
s.homepage = "http://rubygems.org/gems/stendhal"
|
12
|
+
s.summary = %q{Stendhal is a really simple test framework.}
|
13
|
+
s.description = %q{Stendhal is a really simple test framework.}
|
14
|
+
|
15
|
+
s.rubyforge_project = "stendhal"
|
16
|
+
s.default_executable = "stendhal"
|
17
|
+
|
18
|
+
s.add_development_dependency "rspec"
|
19
|
+
s.add_development_dependency "simplecov"
|
20
|
+
s.add_development_dependency "cucumber", "=0.8.5"
|
21
|
+
s.add_development_dependency "aruba"
|
22
|
+
|
23
|
+
s.files = `git ls-files`.split("\n")
|
24
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
25
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
26
|
+
s.require_paths = ["lib"]
|
27
|
+
end
|
metadata
ADDED
@@ -0,0 +1,148 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: stendhal
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 0
|
8
|
+
- 1
|
9
|
+
version: 0.0.1
|
10
|
+
platform: ruby
|
11
|
+
authors:
|
12
|
+
- Josep M. Bach
|
13
|
+
autorequire:
|
14
|
+
bindir: bin
|
15
|
+
cert_chain: []
|
16
|
+
|
17
|
+
date: 2010-10-29 00:00:00 +02:00
|
18
|
+
default_executable: stendhal
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: rspec
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 0
|
30
|
+
version: "0"
|
31
|
+
type: :development
|
32
|
+
version_requirements: *id001
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: simplecov
|
35
|
+
prerelease: false
|
36
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
37
|
+
none: false
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
segments:
|
42
|
+
- 0
|
43
|
+
version: "0"
|
44
|
+
type: :development
|
45
|
+
version_requirements: *id002
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: cucumber
|
48
|
+
prerelease: false
|
49
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - "="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
segments:
|
55
|
+
- 0
|
56
|
+
- 8
|
57
|
+
- 5
|
58
|
+
version: 0.8.5
|
59
|
+
type: :development
|
60
|
+
version_requirements: *id003
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: aruba
|
63
|
+
prerelease: false
|
64
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ">="
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
segments:
|
70
|
+
- 0
|
71
|
+
version: "0"
|
72
|
+
type: :development
|
73
|
+
version_requirements: *id004
|
74
|
+
description: Stendhal is a really simple test framework.
|
75
|
+
email:
|
76
|
+
- josep.m.bach@gmail.com
|
77
|
+
executables:
|
78
|
+
- stendhal
|
79
|
+
extensions: []
|
80
|
+
|
81
|
+
extra_rdoc_files: []
|
82
|
+
|
83
|
+
files:
|
84
|
+
- .gitignore
|
85
|
+
- .rspec
|
86
|
+
- .rvmrc
|
87
|
+
- Gemfile
|
88
|
+
- Gemfile.lock
|
89
|
+
- Rakefile
|
90
|
+
- Readme.md
|
91
|
+
- bin/stendhal
|
92
|
+
- features/examples.feature
|
93
|
+
- features/support/env.rb
|
94
|
+
- lib/stendhal.rb
|
95
|
+
- lib/stendhal/assertions.rb
|
96
|
+
- lib/stendhal/autorun.rb
|
97
|
+
- lib/stendhal/core_ext/kernel.rb
|
98
|
+
- lib/stendhal/dsl.rb
|
99
|
+
- lib/stendhal/example.rb
|
100
|
+
- lib/stendhal/example_group.rb
|
101
|
+
- lib/stendhal/version.rb
|
102
|
+
- script/console
|
103
|
+
- spec/spec_helper.rb
|
104
|
+
- spec/stendhal/assertions_spec.rb
|
105
|
+
- spec/stendhal/core_ext/kernel_spec.rb
|
106
|
+
- spec/stendhal/example_group_spec.rb
|
107
|
+
- spec/stendhal/example_spec.rb
|
108
|
+
- stendhal.gemspec
|
109
|
+
has_rdoc: true
|
110
|
+
homepage: http://rubygems.org/gems/stendhal
|
111
|
+
licenses: []
|
112
|
+
|
113
|
+
post_install_message:
|
114
|
+
rdoc_options: []
|
115
|
+
|
116
|
+
require_paths:
|
117
|
+
- lib
|
118
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
119
|
+
none: false
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
segments:
|
124
|
+
- 0
|
125
|
+
version: "0"
|
126
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
segments:
|
132
|
+
- 0
|
133
|
+
version: "0"
|
134
|
+
requirements: []
|
135
|
+
|
136
|
+
rubyforge_project: stendhal
|
137
|
+
rubygems_version: 1.3.7
|
138
|
+
signing_key:
|
139
|
+
specification_version: 3
|
140
|
+
summary: Stendhal is a really simple test framework.
|
141
|
+
test_files:
|
142
|
+
- features/examples.feature
|
143
|
+
- features/support/env.rb
|
144
|
+
- spec/spec_helper.rb
|
145
|
+
- spec/stendhal/assertions_spec.rb
|
146
|
+
- spec/stendhal/core_ext/kernel_spec.rb
|
147
|
+
- spec/stendhal/example_group_spec.rb
|
148
|
+
- spec/stendhal/example_spec.rb
|