rutema 0.6.0 → 0.6.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/History.txt +9 -4
- data/README.txt +10 -26
- data/lib/rutema/historian.rb +1 -1
- data/lib/rutema/system.rb +2 -4
- data/test/test_system.rb +35 -1
- metadata +3 -3
data/History.txt
CHANGED
@@ -1,13 +1,20 @@
|
|
1
|
+
== 0.6.1 / 2008-02-28
|
2
|
+
* ExtensibleXMLParser made more tolerant (no exceptions when an element cannot be handled)
|
3
|
+
* Bug: Typo in the class name used in the exceptions fixed
|
4
|
+
* Bugfix: ActiveRecord connection throws an exception that prevented Historian from establishing a new one. Fixed
|
5
|
+
* More unit tests
|
1
6
|
== 0.6.0 / 2008-02-27
|
2
|
-
* Added Rutema::
|
7
|
+
* Added Rutema::ExtensibleXMLParser - this parser simplifies parser creation immensely. Check the documentation for details
|
8
|
+
* "Howto create a parser v0.5.0" officially the fastest deprecation of a document ever. http://patir.rubyforge.org/rutema/parser.html is the new black.
|
3
9
|
* Corrected some english spelling mistakes (hey, we're not native speakers)
|
4
10
|
* Fixed an issue with AR cached connections that interfered with unit tests
|
11
|
+
|
5
12
|
== 0.5.0 / 2008-02-26
|
6
13
|
* activerecord reporter is now loaded by default (no need to require it in the configuration file)
|
7
14
|
* bugfix: step names correctly written in the database
|
8
15
|
* The web frontend now uses Ramaze
|
9
16
|
* using patir-0.5.3 because of the chdir bugfixes
|
10
|
-
* rutema can now test itself! rutemax and rutemah return meaningful exit codes. So there, we do
|
17
|
+
* rutema can now test itself! rutemax and rutemah return meaningful exit codes. So there, we do eat our own dogfood
|
11
18
|
* lots more documentation on usage and how to build a parser
|
12
19
|
|
13
20
|
== 0.4.3 / 2008-02-25
|
@@ -45,11 +52,9 @@
|
|
45
52
|
* Reporter interface changed (Runner stati now passed directly as a name indexed Hash, specifications passed as well)
|
46
53
|
* ActiveRecordReporter with SQLite DB added
|
47
54
|
* rutemah (the Historian) added in tools. The Historian reads from ActiveRecordReporter databases
|
48
|
-
|
49
55
|
== 0.2 / 2007-05-21
|
50
56
|
* bin/ files included in gem
|
51
57
|
* rutemax: missing configuration file is now checked before passed to the system
|
52
|
-
|
53
58
|
== 0.1 / 2007-05-21
|
54
59
|
* A running system!
|
55
60
|
* Basic XML parser with echo, command and prompt
|
data/README.txt
CHANGED
@@ -1,50 +1,34 @@
|
|
1
1
|
rutema http://patir.rubyforge.org/rutema
|
2
2
|
|
3
3
|
== DESCRIPTION:
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
rutema is a test execution too with a twist.
|
5
|
+
It allows you to combine test tools while it takes care of logging, reporting, archiving of results and formalizes execution of automated and manual tests.
|
7
6
|
It's purpose is to provide a set of classes and a framework that will allow testers to specify and execute tests in heterogeneous testing environments.
|
8
7
|
|
9
|
-
Rutema allows you to combine tools while it takes care of logging, reporting, archiving of results and formalizes execution of automated and manual tests.
|
10
|
-
|
11
8
|
For more information look at http://patir.rubyforge.org/rutema
|
12
|
-
|
13
9
|
== FEATURES/PROBLEMS:
|
14
|
-
|
15
|
-
*
|
16
|
-
*
|
17
|
-
*
|
18
|
-
|
19
|
-
There is a bug in camping 1.5 (in camping/webrick.rb line 59 res should be resp) that prevents the stylesheet from loading
|
10
|
+
* Unified test execution environment for automated and manual tests
|
11
|
+
* Extensible reports and notifications in various formats (email, rss, pdf, html etc.)
|
12
|
+
* Web frontend and command line report generation tools for browsing the test results database
|
13
|
+
* Comprehensive history of test execution
|
14
|
+
* A well defined way to create a project specific test specification format
|
20
15
|
|
21
16
|
== SYNOPSIS:
|
22
|
-
|
23
|
-
Once installed (which is simple) and configured (which can vary from simple to highly complex but is usually more complex than tying your shoelaces) you can do:
|
24
|
-
|
25
|
-
rutemax -c sample.cfg path/to/test.specification - to run a single test
|
26
|
-
|
27
|
-
rutemax -c sample.cfg all - to run all the tests
|
28
|
-
|
29
|
-
rutemax -c sample.cfg attended - to run all attended tests
|
30
|
-
|
31
|
-
rutemax -c sample.cfg unattended - to run all unattended tests
|
17
|
+
See http://patir.rubyforge.org/rutema/distro_test.html for an introductory example.
|
32
18
|
|
33
19
|
== REQUIREMENTS:
|
34
|
-
|
35
20
|
* patir (http://patir.rubyforge.org)
|
36
21
|
* mailfactory (http://rubyforge.org/projects/mailfactory/)
|
37
22
|
* activerecord (http://ar.rubyonrails.com/)
|
38
23
|
* sqlite3 (http://rubyforge.org/projects/sqlite-ruby/)
|
39
|
-
*
|
24
|
+
* ramaze (http://www.ramaze.net/)
|
40
25
|
* ruport (http://rubyreports.org/)
|
41
26
|
* acts_as_reportable
|
42
|
-
== INSTALL:
|
43
27
|
|
28
|
+
== INSTALL:
|
44
29
|
* gem install rutema
|
45
30
|
|
46
31
|
== LICENSE:
|
47
|
-
|
48
32
|
(The Ruby License)
|
49
33
|
|
50
34
|
rutema is copyright (c) 2007 Vassilis Rizopoulos
|
data/lib/rutema/historian.rb
CHANGED
@@ -97,7 +97,7 @@ module Rutema
|
|
97
97
|
def connect
|
98
98
|
ActiveRecord::Base.logger = @logger
|
99
99
|
if @configuration.source
|
100
|
-
if ActiveRecord::Base.
|
100
|
+
if ActiveRecord::Base.connected?
|
101
101
|
@logger.info("Using cached database connection")
|
102
102
|
else
|
103
103
|
if File.exist?(@configuration.source) || @configuration.source==":memory:"
|
data/lib/rutema/system.rb
CHANGED
@@ -16,7 +16,7 @@ module Rutema
|
|
16
16
|
module Version
|
17
17
|
MAJOR=0
|
18
18
|
MINOR=6
|
19
|
-
TINY=
|
19
|
+
TINY=1
|
20
20
|
STRING=[ MAJOR, MINOR, TINY ].join( "." )
|
21
21
|
end
|
22
22
|
#Is raised when an error is found in a specification
|
@@ -170,10 +170,8 @@ module Rutema
|
|
170
170
|
begin
|
171
171
|
self.send(:"element_#{step.step_type}",step)
|
172
172
|
rescue
|
173
|
-
raise
|
173
|
+
raise ParserError, $!.message
|
174
174
|
end
|
175
|
-
else
|
176
|
-
raise ParserException, "No method element_#{step.step_type} to handle #{step.step_type}"
|
177
175
|
end
|
178
176
|
end
|
179
177
|
end
|
data/test/test_system.rb
CHANGED
@@ -19,6 +19,7 @@ module TestRutema
|
|
19
19
|
</scenario>
|
20
20
|
</specification>
|
21
21
|
EOT
|
22
|
+
|
22
23
|
def test_parse_specification
|
23
24
|
parser=Rutema::BaseXMLParser.new({})
|
24
25
|
specification=parser.parse_specification(SAMPLE_SPEC)
|
@@ -35,7 +36,40 @@ EOT
|
|
35
36
|
assert_raise(Rutema::ParserError) { parser.parse_specification("missing.spec") }
|
36
37
|
end
|
37
38
|
end
|
38
|
-
|
39
|
+
|
40
|
+
class TestExtensibleXMlParser<Test::Unit::TestCase
|
41
|
+
SAMPLE_SPEC=<<EOT
|
42
|
+
<specification name="sample">
|
43
|
+
<title>Title</title>
|
44
|
+
<description>Description</description>
|
45
|
+
<scenario>
|
46
|
+
<step/>
|
47
|
+
<another_step script="script"/>
|
48
|
+
</scenario>
|
49
|
+
</specification>
|
50
|
+
EOT
|
51
|
+
def test_parse_specification
|
52
|
+
parser=Rutema::ExtensibleXMLParser.new({})
|
53
|
+
assert_nothing_raised() { specification=parser.parse_specification(SAMPLE_SPEC) }
|
54
|
+
end
|
55
|
+
end
|
56
|
+
class TestMinimalXMlParser<Test::Unit::TestCase
|
57
|
+
SAMPLE_SPEC=<<EOT
|
58
|
+
<specification name="sample">
|
59
|
+
<title>Title</title>
|
60
|
+
<description>Description</description>
|
61
|
+
<scenario>
|
62
|
+
<echo/>
|
63
|
+
<command cmd="l"/>
|
64
|
+
</scenario>
|
65
|
+
</specification>
|
66
|
+
EOT
|
67
|
+
def test_parse_specification
|
68
|
+
parser=Rutema::MinimalXMLParser.new({})
|
69
|
+
assert_nothing_raised() { @specification=parser.parse_specification(SAMPLE_SPEC) }
|
70
|
+
assert_equal(2, @specification.scenario.steps.size)
|
71
|
+
end
|
72
|
+
end
|
39
73
|
class TestCoordinator<Test::Unit::TestCase
|
40
74
|
def setup
|
41
75
|
@prev_dir=Dir.pwd
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rutema
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vassilis Rizopoulos
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-02-
|
12
|
+
date: 2008-02-28 00:00:00 +01:00
|
13
13
|
default_executable: rutemax
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -93,7 +93,7 @@ dependencies:
|
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: 1.5.0
|
95
95
|
version:
|
96
|
-
description: "== DESCRIPTION:
|
96
|
+
description: "== DESCRIPTION: rutema is a test execution too with a twist. It allows you to combine test tools while it takes care of logging, reporting, archiving of results and formalizes execution of automated and manual tests. It's purpose is to provide a set of classes and a framework that will allow testers to specify and execute tests in heterogeneous testing environments. For more information look at http://patir.rubyforge.org/rutema == FEATURES/PROBLEMS: * Unified test execution environment for automated and manual tests * Extensible reports and notifications in various formats (email, rss, pdf, html etc.) * Web frontend and command line report generation tools for browsing the test results database * Comprehensive history of test execution * A well defined way to create a project specific test specification format == SYNOPSIS: See http://patir.rubyforge.org/rutema/distro_test.html for an introductory example. == REQUIREMENTS: * patir (http://patir.rubyforge.org) * mailfactory (http://rubyforge.org/projects/mailfactory/) * activerecord (http://ar.rubyonrails.com/) * sqlite3 (http://rubyforge.org/projects/sqlite-ruby/) * ramaze (http://www.ramaze.net/) * ruport (http://rubyreports.org/) * acts_as_reportable == INSTALL: * gem install rutema"
|
97
97
|
email: riva@braveworld.net
|
98
98
|
executables:
|
99
99
|
- rutemax
|