rutema 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
|