qed 2.7.0 → 2.8.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.ruby +9 -5
- data/HISTORY.rdoc +19 -0
- data/README.rdoc +4 -2
- data/lib/qed.yml +9 -5
- data/lib/qed/core_ext.rb +3 -0
- data/lib/qed/demo.rb +3 -1
- data/lib/qed/reporter/abstract.rb +2 -2
- data/lib/qed/scope.rb +2 -2
- data/lib/qed/session.rb +8 -1
- data/lib/qed/step.rb +4 -2
- data/qed/01_demos.rdoc +1 -1
- data/qed/02_advice.rdoc +4 -5
- metadata +25 -14
data/.ruby
CHANGED
@@ -14,13 +14,16 @@ requirements:
|
|
14
14
|
- name: ansi
|
15
15
|
- name: facets
|
16
16
|
version: 2.8+
|
17
|
-
- name:
|
18
|
-
version: 1.7+
|
17
|
+
- name: brass
|
19
18
|
- name: confection
|
20
19
|
- name: detroit
|
21
20
|
groups:
|
22
21
|
- build
|
23
22
|
development: true
|
23
|
+
- name: ae
|
24
|
+
groups:
|
25
|
+
- test
|
26
|
+
development: true
|
24
27
|
dependencies: []
|
25
28
|
conflicts: []
|
26
29
|
repositories:
|
@@ -36,12 +39,13 @@ extra: {}
|
|
36
39
|
load_path:
|
37
40
|
- lib
|
38
41
|
revision: 0
|
39
|
-
created: '
|
42
|
+
created: '2009-06-16'
|
40
43
|
summary: Quod Erat Demonstrandum
|
41
44
|
title: QED
|
42
|
-
version: 2.
|
45
|
+
version: 2.8.0
|
46
|
+
scm_uri: http://github.com/rubyworks/qed/blob/master/
|
43
47
|
name: qed
|
44
48
|
description: ! 'QED (Quality Ensured Demonstrations) is a TDD/BDD framework
|
45
49
|
|
46
50
|
utilizing Literate Programming techniques.'
|
47
|
-
date: '
|
51
|
+
date: '2012-01-25'
|
data/HISTORY.rdoc
CHANGED
@@ -1,5 +1,24 @@
|
|
1
1
|
= RELEASE HISTORY
|
2
2
|
|
3
|
+
== 2.8.0 | 2012-01-19
|
4
|
+
|
5
|
+
IMPORTANT: READ THIS RELEASE NOTICE! This release makes a minor
|
6
|
+
change, but it is one that will effect all end-users. That is, QED no
|
7
|
+
longer depends on AE as its one and only assertion framework. Instead
|
8
|
+
any compliant framework can be used. Certainly most users will be happy
|
9
|
+
to continue using AE, in which case simply add `require 'ae'` to your
|
10
|
+
applique (e.g. in 'spec/applique/ae.rb') or add `-r ae` to the qed command
|
11
|
+
line invocation to ensure demos continue running as before. In place of
|
12
|
+
AE the _BRASS_ gem now provides basic assertion support. Any assertion
|
13
|
+
framework that complies with the simple BRASS standards will work with QED.
|
14
|
+
|
15
|
+
Changes:
|
16
|
+
|
17
|
+
* No longer depend only on AE for assertion framework.
|
18
|
+
* Rename $assertion_counts to $ASSERTION_COUNTS.
|
19
|
+
* Complies with assertion standards set by BRASS project.
|
20
|
+
|
21
|
+
|
3
22
|
== 2.7.0 | 2011-11-18
|
4
23
|
|
5
24
|
The focus of this release is a much improved underlying API, including
|
data/README.rdoc
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
= Ruby Q.E.D.
|
2
2
|
|
3
3
|
{Homepage}[http://rubyworks.github.com/qed] |
|
4
|
+
{Documentation}[http://rubydoc.info/gems/qed/frames] |
|
5
|
+
{Report Issue}[http://github.com/rubyworks/qed/issues] |
|
4
6
|
{Development}[http://github.com/rubyworks/qed] |
|
5
|
-
{Mailing list}[http://groups.google.com/group/rubyworks-mailinglist]
|
7
|
+
{Mailing list}[http://groups.google.com/group/rubyworks-mailinglist]
|
6
8
|
|
7
9
|
{<img src="http://travis-ci.org/rubyworks/qed.png" />}[http://travis-ci.org/rubyworks/qed]
|
8
10
|
|
@@ -154,7 +156,7 @@ if they are not already installed.
|
|
154
156
|
|
155
157
|
Q.E.D.
|
156
158
|
|
157
|
-
Copyright (c)
|
159
|
+
Copyright (c) 2009 Rubyworks, Thomas Sawyer
|
158
160
|
|
159
161
|
BSD 2 Clause License
|
160
162
|
|
data/lib/qed.yml
CHANGED
@@ -14,13 +14,16 @@ requirements:
|
|
14
14
|
- name: ansi
|
15
15
|
- name: facets
|
16
16
|
version: 2.8+
|
17
|
-
- name:
|
18
|
-
version: 1.7+
|
17
|
+
- name: brass
|
19
18
|
- name: confection
|
20
19
|
- name: detroit
|
21
20
|
groups:
|
22
21
|
- build
|
23
22
|
development: true
|
23
|
+
- name: ae
|
24
|
+
groups:
|
25
|
+
- test
|
26
|
+
development: true
|
24
27
|
dependencies: []
|
25
28
|
conflicts: []
|
26
29
|
repositories:
|
@@ -36,12 +39,13 @@ extra: {}
|
|
36
39
|
load_path:
|
37
40
|
- lib
|
38
41
|
revision: 0
|
39
|
-
created: '
|
42
|
+
created: '2009-06-16'
|
40
43
|
summary: Quod Erat Demonstrandum
|
41
44
|
title: QED
|
42
|
-
version: 2.
|
45
|
+
version: 2.8.0
|
46
|
+
scm_uri: http://github.com/rubyworks/qed/blob/master/
|
43
47
|
name: qed
|
44
48
|
description: ! 'QED (Quality Ensured Demonstrations) is a TDD/BDD framework
|
45
49
|
|
46
50
|
utilizing Literate Programming techniques.'
|
47
|
-
date: '
|
51
|
+
date: '2012-01-25'
|
data/lib/qed/core_ext.rb
CHANGED
data/lib/qed/demo.rb
CHANGED
@@ -58,7 +58,9 @@ module QED
|
|
58
58
|
@applique ||= (
|
59
59
|
list = [Applique.new]
|
60
60
|
applique_locations.each do |location|
|
61
|
-
Dir[location + '/**/*'].each do |file|
|
61
|
+
#Dir[location + '/**/*'].each do |file|
|
62
|
+
Dir[location + '/*'].each do |file|
|
63
|
+
next if File.directory?(file)
|
62
64
|
list << Applique.for(file)
|
63
65
|
end
|
64
66
|
end
|
@@ -236,8 +236,8 @@ module Reporter
|
|
236
236
|
|
237
237
|
#
|
238
238
|
def get_tally
|
239
|
-
assert_count =
|
240
|
-
assert_fails =
|
239
|
+
assert_count = $ASSERTION_COUNTS[:total]
|
240
|
+
assert_fails = $ASSERTION_COUNTS[:fail]
|
241
241
|
assert_delta = assert_count - assert_fails
|
242
242
|
|
243
243
|
vars = [demos.size, steps.size, fails.size, errors.size, assert_delta, assert_count] #, @pass.size ]
|
data/lib/qed/scope.rb
CHANGED
data/lib/qed/session.rb
CHANGED
@@ -121,6 +121,8 @@ module QED
|
|
121
121
|
|
122
122
|
clear_directory
|
123
123
|
|
124
|
+
reset_assertion_counts
|
125
|
+
|
124
126
|
prepare_loadpath
|
125
127
|
require_libraries
|
126
128
|
|
@@ -146,11 +148,16 @@ module QED
|
|
146
148
|
reporter.success?
|
147
149
|
end
|
148
150
|
|
149
|
-
#
|
151
|
+
# Clear temporary testing directory.
|
150
152
|
def clear_directory
|
151
153
|
settings.clear_directory
|
152
154
|
end
|
153
155
|
|
156
|
+
# Set $ASSERTION_COUNTS to zero point.
|
157
|
+
def reset_assertion_counts
|
158
|
+
$ASSERTION_COUNTS = Hash.new{|h,k| h[k] = 0 }
|
159
|
+
end
|
160
|
+
|
154
161
|
# Add to load path (from -I option).
|
155
162
|
def prepare_loadpath
|
156
163
|
loadpath.each{ |dir| $LOAD_PATH.unshift(File.expand_path(dir)) }
|
data/lib/qed/step.rb
CHANGED
@@ -227,8 +227,10 @@ module QED
|
|
227
227
|
#
|
228
228
|
def tweak_code
|
229
229
|
code = @example_lines.map{ |lineno, line| line }.join("")
|
230
|
-
code.gsub!(/\n\s*\#\ ?\=\>/, '.assert = ')
|
231
|
-
code.gsub!(/\s*\#\ ?\=\>/, '.assert = ')
|
230
|
+
#code.gsub!(/\n\s*\#\ ?\=\>/, '.assert = ')
|
231
|
+
#code.gsub!(/\s*\#\ ?\=\>/, '.assert = ')
|
232
|
+
code.gsub!(/\n\s*\#\ ?\=\>(.*?)$/, ' == \1 ? assert(true) : assert(false, "not returned -- \1")') # TODO: what kind of error ?
|
233
|
+
code.gsub!(/\s*\#\ ?\=\>(.*?)$/, ' == \1 ? assert(true) : assert(false, "not returned -- \1")')
|
232
234
|
code
|
233
235
|
end
|
234
236
|
|
data/qed/01_demos.rdoc
CHANGED
data/qed/02_advice.rdoc
CHANGED
@@ -86,11 +86,10 @@ an object just magically appear.
|
|
86
86
|
== Event Targets
|
87
87
|
|
88
88
|
There is a small set of advice targets that do not come before or after,
|
89
|
-
rather they occur *upon* a particular event. These include +:
|
90
|
-
and +:
|
91
|
-
|
92
|
-
|
93
|
-
and code excecution.
|
89
|
+
rather they occur *upon* a particular event. These include +:pass+, +:fail+
|
90
|
+
and +:error+ for when a code block passes, fails or raises an error; and
|
91
|
+
+:step+, +:applique+, +:match+ and +:test:+ which targets the processing
|
92
|
+
of a demo step and it's example excecution.
|
94
93
|
|
95
94
|
These event targets can be advised by calling the +When+ method
|
96
95
|
with the target type as an argument along with the code block
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: qed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.8.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2012-01-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: ansi
|
16
|
-
requirement: &
|
16
|
+
requirement: &25621900 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *25621900
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: facets
|
27
|
-
requirement: &
|
27
|
+
requirement: &25620880 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,21 +32,21 @@ dependencies:
|
|
32
32
|
version: '2.8'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *25620880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
|
-
name:
|
38
|
-
requirement: &
|
37
|
+
name: brass
|
38
|
+
requirement: &25620240 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: '
|
43
|
+
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *25620240
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: confection
|
49
|
-
requirement: &
|
49
|
+
requirement: &25619480 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,21 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *25619480
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: detroit
|
60
|
-
requirement: &
|
60
|
+
requirement: &25618820 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *25618820
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: ae
|
71
|
+
requirement: &25616480 !ruby/object:Gem::Requirement
|
61
72
|
none: false
|
62
73
|
requirements:
|
63
74
|
- - ! '>='
|
@@ -65,7 +76,7 @@ dependencies:
|
|
65
76
|
version: '0'
|
66
77
|
type: :development
|
67
78
|
prerelease: false
|
68
|
-
version_requirements: *
|
79
|
+
version_requirements: *25616480
|
69
80
|
description: ! 'QED (Quality Ensured Demonstrations) is a TDD/BDD framework
|
70
81
|
|
71
82
|
utilizing Literate Programming techniques.'
|