eetee 0.0.8 → 0.0.9
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/.travis.yml +1 -0
- data/Gemfile +5 -1
- data/eetee.gemspec +1 -1
- data/examples/shared/shared.rb +7 -4
- data/lib/eetee/assertion_wrapper.rb +2 -1
- data/lib/eetee/context.rb +13 -7
- data/lib/eetee/ext/no_gc.rb +21 -0
- data/lib/eetee/version.rb +1 -1
- data/specs/unit/assertion_wrapper_spec.rb +8 -0
- data/specs/unit/context_spec.rb +12 -0
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b5cc3da9d9d6f2285d3d5321517d3575ff1f9dd
|
4
|
+
data.tar.gz: 2ccbd24a3dc47b488ece2007763f192d35bb4d4e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56367f2b0ced41f7f6b0e86b265b4dd73343d7a7ff10576d4519bdc94b26a61770d215493d94b5d4faddae1bfce3e04502fcb1c518041111e8ec69bb4f84fd04
|
7
|
+
data.tar.gz: e74e9932bb10d3bee96dab690a01912ce34c772392791f00b413dd8c899b0352a9d194199cee4d23cb7d25e0ba03fa34cc99ee3b3cd04e3a5694738d8e202b67
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
@@ -4,6 +4,11 @@ gemspec
|
|
4
4
|
|
5
5
|
gem 'rake'
|
6
6
|
|
7
|
+
group(:development) do
|
8
|
+
gem 'rblineprof'
|
9
|
+
gem 'rb-blink1'
|
10
|
+
end
|
11
|
+
|
7
12
|
group(:test) do
|
8
13
|
gem 'mocha', '~> 0.12.0'
|
9
14
|
|
@@ -13,5 +18,4 @@ group(:test) do
|
|
13
18
|
gem 'growl'
|
14
19
|
|
15
20
|
gem 'eventmachine', '~> 1.0.0'
|
16
|
-
gem 'rb-blink1'
|
17
21
|
end
|
data/eetee.gemspec
CHANGED
data/examples/shared/shared.rb
CHANGED
@@ -8,6 +8,11 @@ include EEtee
|
|
8
8
|
shared(:valid_object) do |obj, n|
|
9
9
|
should 'receive correct number' do
|
10
10
|
n.should == 42
|
11
|
+
obj.should == 'string'
|
12
|
+
end
|
13
|
+
|
14
|
+
should 'receive correct string' do
|
15
|
+
obj.should == 'string'
|
11
16
|
end
|
12
17
|
|
13
18
|
should 'respond to :to_i' do
|
@@ -24,11 +29,9 @@ end
|
|
24
29
|
|
25
30
|
describe 'Tests' do
|
26
31
|
before do
|
27
|
-
|
32
|
+
# clear database
|
28
33
|
end
|
29
34
|
|
30
|
-
|
31
|
-
run_shared(:valid_object, @obj, 42)
|
32
|
-
end
|
35
|
+
run_shared(:valid_object, 'string', 42)
|
33
36
|
|
34
37
|
end
|
data/lib/eetee/context.rb
CHANGED
@@ -33,15 +33,23 @@ module EEtee
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def it(label, opts = {}, &block)
|
36
|
+
in_scope(opts) do
|
37
|
+
Test.new(label, @_reporter, &block)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
private
|
42
|
+
def in_scope(opts = {})
|
36
43
|
if !@_focus_mode || opts[:focus]
|
37
44
|
begin
|
38
45
|
(@before || []).each{|b| instance_eval(&b) }
|
39
|
-
|
46
|
+
yield()
|
40
47
|
ensure
|
41
48
|
(@after || []).each{|b| instance_eval(&b) }
|
42
49
|
end
|
43
50
|
end
|
44
51
|
end
|
52
|
+
|
45
53
|
end
|
46
54
|
|
47
55
|
class Context
|
@@ -83,13 +91,11 @@ module EEtee
|
|
83
91
|
end
|
84
92
|
|
85
93
|
def run_shared(name, *args)
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
def in_scope(&block)
|
90
|
-
instance_eval(&block)
|
94
|
+
in_scope do
|
95
|
+
Shared.run(name, @_reporter, @_level, *args)
|
96
|
+
end
|
91
97
|
end
|
92
|
-
|
98
|
+
|
93
99
|
end
|
94
100
|
|
95
101
|
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
module EEteeDisableGC
|
3
|
+
def run(&block)
|
4
|
+
if toplevel
|
5
|
+
GC.disable
|
6
|
+
end
|
7
|
+
|
8
|
+
super
|
9
|
+
|
10
|
+
if toplevel
|
11
|
+
GC.enable()
|
12
|
+
GC.start()
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
puts "GC disabled during tests"
|
19
|
+
|
20
|
+
|
21
|
+
EEtee::Context.__send__(:include, EEteeDisableGC)
|
data/lib/eetee/version.rb
CHANGED
@@ -98,6 +98,14 @@ describe 'AssertionWrapper' do
|
|
98
98
|
->{ @wrapper.to_zebra }.should.not.raise(RuntimeError)
|
99
99
|
end
|
100
100
|
end
|
101
|
+
|
102
|
+
should '[inverted] not raise an error if block raises no error' do
|
103
|
+
@obj.expects(:to_zebra).returns(3)
|
104
|
+
ensure_error_not_raised do
|
105
|
+
->{ @wrapper.to_zebra }.should.not.raise
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
101
109
|
|
102
110
|
end
|
103
111
|
|
data/specs/unit/context_spec.rb
CHANGED
@@ -37,6 +37,18 @@ describe 'Context' do
|
|
37
37
|
a.should == 234
|
38
38
|
end
|
39
39
|
|
40
|
+
should 'run arbitrary code in same context' do
|
41
|
+
a = nil
|
42
|
+
Thread.new do
|
43
|
+
EEtee::Context.new("a context", 0, @reporter) do
|
44
|
+
before{ @a = 42 }
|
45
|
+
# should("do nothing"){} # just to run the before block
|
46
|
+
in_scope{ a = @a }
|
47
|
+
end
|
48
|
+
end.join
|
49
|
+
a.should == 42
|
50
|
+
end
|
51
|
+
|
40
52
|
should 'allow tests to use the context description' do
|
41
53
|
a = nil
|
42
54
|
Thread.new do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eetee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Julien Ammous
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-05-
|
11
|
+
date: 2013-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: term-ansicolor
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ~>
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: '1.1'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
26
|
+
version: '1.1'
|
27
27
|
description: Test framework inspired by Bacon
|
28
28
|
email:
|
29
29
|
- schmurfy@gmail.com
|
@@ -51,6 +51,7 @@ files:
|
|
51
51
|
- lib/eetee/errors.rb
|
52
52
|
- lib/eetee/ext/em.rb
|
53
53
|
- lib/eetee/ext/mocha.rb
|
54
|
+
- lib/eetee/ext/no_gc.rb
|
54
55
|
- lib/eetee/ext/rack.rb
|
55
56
|
- lib/eetee/ext/time.rb
|
56
57
|
- lib/eetee/reporter.rb
|