contest 0.1.1 → 0.1.2
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/README.markdown +11 -3
- data/lib/contest.rb +1 -1
- data/test/all_test.rb +12 -2
- data/test/setup_and_teardown_order_test.rb +28 -0
- metadata +11 -9
- data/test/setup_and_teardown_order.rb +0 -27
data/README.markdown
CHANGED
@@ -19,7 +19,7 @@ Declare your tests as you would in RSpec or Shoulda:
|
|
19
19
|
setup do
|
20
20
|
@value = 1
|
21
21
|
end
|
22
|
-
|
22
|
+
|
23
23
|
teardown do
|
24
24
|
@value = nil
|
25
25
|
end
|
@@ -78,8 +78,16 @@ Or with a regular expression:
|
|
78
78
|
Installation
|
79
79
|
------------
|
80
80
|
|
81
|
-
$ gem
|
82
|
-
|
81
|
+
$ sudo gem install contest
|
82
|
+
|
83
|
+
If you want to use it with Rails, add this to config/environment.rb:
|
84
|
+
|
85
|
+
config.gem "contest"
|
86
|
+
|
87
|
+
Then you can vendor the gem:
|
88
|
+
|
89
|
+
rake gems:install
|
90
|
+
rake gems:unpack
|
83
91
|
|
84
92
|
License
|
85
93
|
-------
|
data/lib/contest.rb
CHANGED
data/test/all_test.rb
CHANGED
@@ -95,12 +95,20 @@ class TestBaz < Test::Unit::TestCase
|
|
95
95
|
super
|
96
96
|
@value += 2
|
97
97
|
end
|
98
|
-
|
98
|
+
|
99
|
+
def bar
|
100
|
+
foo + 1
|
101
|
+
end
|
102
|
+
|
99
103
|
test "a helper" do
|
100
104
|
assert_equal 42, foo
|
101
105
|
assert_equal 3, @value
|
102
106
|
end
|
103
|
-
|
107
|
+
|
108
|
+
test "another helper" do
|
109
|
+
assert_equal 43, bar
|
110
|
+
end
|
111
|
+
|
104
112
|
context "another context" do
|
105
113
|
setup do
|
106
114
|
@value += 3
|
@@ -111,4 +119,6 @@ class TestBaz < Test::Unit::TestCase
|
|
111
119
|
end
|
112
120
|
end
|
113
121
|
end
|
122
|
+
|
123
|
+
context "empty context"
|
114
124
|
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.dirname(__FILE__) + "/../lib/contest"
|
2
|
+
|
3
|
+
class BaseTest < Test::Unit::TestCase
|
4
|
+
def setup
|
5
|
+
@order = []
|
6
|
+
@order << "Grandparent Setup"
|
7
|
+
end
|
8
|
+
|
9
|
+
def teardown
|
10
|
+
@order << "Grandparent Teardown"
|
11
|
+
|
12
|
+
assert_equal ["Grandparent Setup", "Parent Setup", "Child Setup", "Test Case", "Child Teardown", "Parent Teardown", "Grandparent Teardown"], @order
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
class MidLayerTest < BaseTest
|
17
|
+
setup { @order << "Parent Setup" }
|
18
|
+
teardown { @order << "Parent Teardown" }
|
19
|
+
end
|
20
|
+
|
21
|
+
class LeafTest < MidLayerTest
|
22
|
+
setup { @order << "Child Setup" }
|
23
|
+
teardown { @order << "Child Teardown" }
|
24
|
+
|
25
|
+
test "my actual test" do
|
26
|
+
@order << "Test Case"
|
27
|
+
end
|
28
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: contest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Damian Janowski
|
@@ -10,12 +10,14 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2009-
|
13
|
+
date: 2009-06-19 00:00:00 -03:00
|
14
14
|
default_executable:
|
15
15
|
dependencies: []
|
16
16
|
|
17
|
-
description:
|
18
|
-
email:
|
17
|
+
description: Write declarative tests using nested contexts without performance penalties. Contest is less than 100 lines of code and gets the job done.
|
18
|
+
email:
|
19
|
+
- djanowski@dimaion.com
|
20
|
+
- michel@soveran.com
|
19
21
|
executables: []
|
20
22
|
|
21
23
|
extensions: []
|
@@ -29,8 +31,8 @@ files:
|
|
29
31
|
- Rakefile
|
30
32
|
- rails/init.rb
|
31
33
|
- test/all_test.rb
|
32
|
-
- test/
|
33
|
-
has_rdoc:
|
34
|
+
- test/setup_and_teardown_order_test.rb
|
35
|
+
has_rdoc: true
|
34
36
|
homepage: http://github.com/citrusbyte/contest
|
35
37
|
licenses: []
|
36
38
|
|
@@ -53,10 +55,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
53
55
|
version:
|
54
56
|
requirements: []
|
55
57
|
|
56
|
-
rubyforge_project:
|
57
|
-
rubygems_version: 1.3.
|
58
|
+
rubyforge_project: contest
|
59
|
+
rubygems_version: 1.3.4
|
58
60
|
signing_key:
|
59
|
-
specification_version:
|
61
|
+
specification_version: 3
|
60
62
|
summary: Write more readable tests in Test::Unit with this tiny script.
|
61
63
|
test_files: []
|
62
64
|
|
@@ -1,27 +0,0 @@
|
|
1
|
-
require File.dirname(__FILE__) + "/../lib/contest"
|
2
|
-
|
3
|
-
class Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
puts "Grandparent Setup"
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
|
-
class Test::Unit::TestCase
|
10
|
-
def teardown
|
11
|
-
puts "Grandparent Teardown"
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
class MidLayerTest < Test::Unit::TestCase
|
16
|
-
setup { puts "Parent Setup" }
|
17
|
-
teardown { puts "Parent Teardown" }
|
18
|
-
end
|
19
|
-
|
20
|
-
class LeafTest < MidLayerTest
|
21
|
-
setup { puts "Child Setup" }
|
22
|
-
teardown { puts "Child Teardown" }
|
23
|
-
|
24
|
-
test "my actual test" do
|
25
|
-
puts "Test Case"
|
26
|
-
end
|
27
|
-
end
|