uttk 0.3.6.1 → 0.4.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. data/BESTOF +13 -0
  2. data/ChangeLog +19 -0
  3. data/MATRIX +6 -0
  4. data/NEWS +34 -4
  5. data/PITFALLS +13 -0
  6. data/Rakefile +19 -2
  7. data/SPEC.gemspec +18 -0
  8. data/SPEC.yml +21 -7
  9. data/bin/getopts/uttk.rb +23 -10
  10. data/lib/uttk.rb +16 -12
  11. data/lib/uttk/dumpers/Mail.rb +41 -0
  12. data/lib/uttk/dumpers/Yaml.rb +2 -2
  13. data/lib/uttk/filters/KeepSkipBased.rb +1 -1
  14. data/lib/uttk/generators/templates/loader.rb +1 -1
  15. data/lib/uttk/generators/templates/strategy-command.rb +72 -0
  16. data/lib/uttk/generators/templates/strategy.rb +4 -3
  17. data/lib/uttk/generators/templates/unit_test.rb +1 -1
  18. data/lib/uttk/loaders/Loader.rb +1 -1
  19. data/lib/uttk/loaders/Ruby.rb +1 -1
  20. data/lib/uttk/loaders/Yaml.rb +2 -2
  21. data/lib/uttk/logger/section_node.rb +1 -1
  22. data/lib/uttk/logger/severity.rb +1 -1
  23. data/lib/uttk/logger/to_uttk_log.rb +2 -2
  24. data/lib/uttk/logger/verbosity.rb +1 -1
  25. data/lib/uttk/logger_factory.rb +1 -1
  26. data/lib/uttk/status.rb +1 -1
  27. data/lib/uttk/strategies/Abort.rb +1 -1
  28. data/lib/uttk/strategies/Assert.rb +1 -1
  29. data/lib/uttk/strategies/Authors.rb +2 -2
  30. data/lib/uttk/strategies/Bootstrap.rb +38 -11
  31. data/lib/uttk/strategies/Checkout.rb +3 -2
  32. data/lib/uttk/strategies/Clean.rb +1 -1
  33. data/lib/uttk/strategies/Collection.rb +3 -3
  34. data/lib/uttk/strategies/Command.rb +95 -0
  35. data/lib/uttk/strategies/Composite/contents_eval.rb +1 -1
  36. data/lib/uttk/strategies/Configure.rb +34 -25
  37. data/lib/uttk/strategies/Error.rb +1 -1
  38. data/lib/uttk/strategies/Fail.rb +1 -1
  39. data/lib/uttk/strategies/HostSelector.rb +143 -0
  40. data/lib/uttk/strategies/Import.rb +2 -2
  41. data/lib/uttk/strategies/Iterate.rb +1 -1
  42. data/lib/uttk/strategies/JUnit.rb +1 -1
  43. data/lib/uttk/strategies/Jump.rb +81 -0
  44. data/lib/uttk/strategies/Make.rb +28 -58
  45. data/lib/uttk/strategies/Package.rb +5 -6
  46. data/lib/uttk/strategies/PackageCollection.rb +1 -1
  47. data/lib/uttk/strategies/Pass.rb +1 -1
  48. data/lib/uttk/strategies/RUnit.rb +63 -49
  49. data/lib/uttk/strategies/SignalCmd.rb +1 -1
  50. data/lib/uttk/strategies/Sleep.rb +1 -1
  51. data/lib/uttk/strategies/SqlQuery.rb +1 -1
  52. data/lib/uttk/strategies/Strategy.rb +153 -3
  53. data/lib/uttk/strategies/SubCmd.rb +51 -31
  54. data/lib/uttk/strategies/Suite.rb +1 -1
  55. data/lib/uttk/strategies/Test.rb +1 -1
  56. data/lib/uttk/strategies/{ProbabilityThreshold.rb → Threshold.rb} +3 -3
  57. data/lib/uttk/streams.rb +1 -1
  58. data/lib/uttk/streams/Diff.rb +1 -1
  59. data/lib/uttk/streams/Stream.rb +1 -1
  60. data/lib/uttk/version_id.rb +1 -1
  61. data/lib/uttk/weights/WExpr.rb +1 -1
  62. data/lib/uttk/weights/WFloat.rb +1 -1
  63. data/lib/uttk/weights/WMin.rb +1 -1
  64. data/lib/uttk/weights/Weight.rb +1 -1
  65. data/lib/www/images/opentriangle.gif +0 -0
  66. data/lib/www/images/triangle.gif +0 -0
  67. data/lib/www/stylesheets/uttk.css +167 -0
  68. data/misc/expandtab.rb +1 -1
  69. data/test/examples/students/mini-lib.yml +1 -1
  70. data/test/fixtures/binaries/segv +0 -0
  71. data/test/functional/base.yml +29 -0
  72. data/test/functional/cat.yml +2 -2
  73. data/test/functional/cmd.yml +5 -0
  74. data/test/functional/command.yml +14 -0
  75. data/test/functional/diff.yml +2 -2
  76. data/test/functional/env_cmd.yml +3 -3
  77. data/test/functional/exit.yml +1 -1
  78. data/test/functional/host_selector.yml +30 -0
  79. data/test/functional/iterate.yml +31 -37
  80. data/test/functional/jump.yml +34 -0
  81. data/test/functional/pkg.yml +1 -1
  82. data/test/functional/{probability_threshold.yml → threshold.yml} +2 -2
  83. data/test/functional/timeout.yml +1 -1
  84. data/test/functional/wc.yml +2 -2
  85. data/test/unit/dumpers/mail_test.rb +46 -0
  86. data/test/unit/filters/keep_skip_based_test.rb +1 -1
  87. data/test/unit/filters/text_filter_test.rb +1 -1
  88. metadata +258 -253
  89. data/test/fixtures/demo/command-tutorial/steps/1/check.yml +0 -5
  90. data/test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb +0 -10
  91. data/test/fixtures/demo/command-tutorial/steps/2/bad_check.yml +0 -7
  92. data/test/fixtures/demo/command-tutorial/steps/2/check.yml +0 -7
  93. data/test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb +0 -10
  94. data/test/fixtures/demo/command-tutorial/steps/3.1/check.yml +0 -12
  95. data/test/fixtures/demo/command-tutorial/steps/3/check.yml +0 -14
  96. data/test/fixtures/demo/command-tutorial/steps/4.1/bird.txt +0 -1
  97. data/test/fixtures/demo/command-tutorial/steps/4.1/check.yml +0 -12
  98. data/test/fixtures/demo/command-tutorial/steps/4/check.yml +0 -12
  99. data/test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb +0 -12
  100. data/test/fixtures/demo/command-tutorial/steps/5.1/bird.txt +0 -1
  101. data/test/fixtures/demo/command-tutorial/steps/5.1/check.yml +0 -17
  102. data/test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb +0 -17
  103. data/test/fixtures/demo/command-tutorial/steps/5/bird.txt +0 -1
  104. data/test/fixtures/demo/command-tutorial/steps/5/check.yml +0 -16
  105. data/test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb +0 -16
  106. data/test/fixtures/demo/command-tutorial/steps/6.1/bird.txt +0 -1
  107. data/test/fixtures/demo/command-tutorial/steps/6.1/check.yml +0 -22
  108. data/test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb +0 -17
  109. data/test/fixtures/demo/command-tutorial/steps/6/bird.txt +0 -1
  110. data/test/fixtures/demo/command-tutorial/steps/6/check.yml +0 -21
  111. data/test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb +0 -17
  112. data/test/fixtures/demo/command-tutorial/steps/7/bird.txt +0 -1
  113. data/test/fixtures/demo/command-tutorial/steps/7/check.yml +0 -22
  114. data/test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb +0 -17
data/BESTOF ADDED
@@ -0,0 +1,13 @@
1
+
2
+ - Sometimes *ruby* bugs are awfully dangerous: |
3
+
4
+ - Test diff:
5
+ Test Cmd with StreamDiff:
6
+ contents:
7
+ - simple valid:
8
+ status: PASS
9
+ - simple invalid:
10
+ status: FAIL
11
+ status: FAIL(-25880565900%)
12
+ status: FAIL(-25880565900%)
13
+
data/ChangeLog CHANGED
@@ -1,3 +1,22 @@
1
+ 2006-10-19 Nicolas Despr�s <nicolas.despres@gmail.com>
2
+
3
+ Add tags rules.
4
+
5
+ * Rakefile: Add emacs_tags, vim_tags and clean rules.
6
+
7
+ 2006-03-25 Nicolas Despr�s <nicolas.despres@gmail.com>
8
+
9
+ Fix some typos in the tutos.
10
+
11
+ * doc/demo/filter-tutorial.rtextile,
12
+ * doc/demo/command-tutorial.rtextile: Typos.
13
+
14
+ 2006-03-16 Nicolas Despr�s <nicolas.despres@gmail.com>
15
+
16
+ Add forgotten item :-(.
17
+
18
+ * NEWS: Add forgotten item about the Yaml loader.
19
+
1
20
  2006-02-24 Nicolas Despr�s <nicolas.despres@gmail.com>
2
21
 
3
22
  Update AUTHORS.
data/MATRIX ADDED
@@ -0,0 +1,6 @@
1
+ systir:
2
+ + the idea: use dsl languages and test unit
3
+ + test/tutils/bogus
4
+ + test/tutils/mock
5
+ + test/tutils/catchall
6
+ - too few code, the user is not really helped
data/NEWS CHANGED
@@ -1,10 +1,27 @@
1
- = New in 0.3_p1, 2006-03-11:
1
+ = New in 0.4 (aka Teenager), 2007-01-14:
2
+
3
+ * Core:
4
+ - Integration of abjective_command and unified_matchers.
5
+
6
+ * Documentation:
7
+ - Improve tutorials.
8
+ - Improve the main presentation.
9
+ - Add a short presentation.
10
+
11
+ * Strategies:
12
+ - Add the Command strategy that subsume the Cmd one.
13
+ - The ProbabilityThreshold strategy is renamed Threshold.
14
+
15
+ * Generators:
16
+ - Add a generator for strategies that uses commands.
17
+
18
+ = New in 0.3_p1 (aka KID), 2006-03-11:
2
19
 
3
20
  This patch level release fixes a dramatic bug that can hide some failing tests
4
21
  (The pathname substitution inside an iterate could be done only once).
5
22
  If you use Uttk, upgrade now!
6
23
 
7
- = New in 0.3, 2006-02-26:
24
+ = New in 0.3 (aka KID), 2006-02-26:
8
25
 
9
26
  This release is a minor which provides also some interesting improvements:
10
27
 
@@ -37,6 +54,19 @@ This release is a minor which provides also some interesting improvements:
37
54
 
38
55
  * Ruby: You can use the Ruby's syntax (and power) to write your test suite.
39
56
 
57
+ * Yaml: A new syntax to mention the used strategy:
58
+
59
+ before:
60
+
61
+ My suite:
62
+ strategy: Suite
63
+ [...]
64
+
65
+ now:
66
+
67
+ My suite: !S::Suite
68
+ [...]
69
+
40
70
  * Strategies:
41
71
 
42
72
  * Strategy: Provides benchmark measurement.
@@ -57,7 +87,7 @@ This release is a minor which provides also some interesting improvements:
57
87
  In your tests you now must use <<ruby>> instead of just ruby.
58
88
  This will permit to easily control and change the running ruby.
59
89
 
60
- = New in 0.2, 2005-05-06:
90
+ = New in 0.2 (aka Infant), 2005-05-06:
61
91
 
62
92
  This release is mainly a BugFix release but it provides also some improvements:
63
93
 
@@ -93,7 +123,7 @@ This release is mainly a BugFix release but it provides also some improvements:
93
123
  * LoggerFactory: Make section_tree available, and clean
94
124
  create_section_tree.
95
125
 
96
- = New in 0.1, 2005-04-12:
126
+ = New in 0.1 (aka Baby), 2005-04-12:
97
127
 
98
128
  * Strategies:
99
129
 
data/PITFALLS ADDED
@@ -0,0 +1,13 @@
1
+ Use:
2
+ - FAIL(70%)
3
+
4
+ - weight < 0
5
+
6
+ - 2 tests with the same name
7
+
8
+ - symbols propagation (name of iters / with imported files)
9
+
10
+ Dev:
11
+ - Filters:
12
+ Forker: because blocks can be called twice. (@log.debug { ... })
13
+
data/Rakefile CHANGED
@@ -1,8 +1,25 @@
1
- # Author:: The Uttk Team. -*- ruby -*-
1
+ # Author:: The Uttk eam. -*- ruby -*-
2
2
  # Copyright:: Copyright (c) 2004, 2005 Uttk team. All rights reserved.
3
3
  # License:: LGPL
4
- # Revision:: $Id: /fey/uttk/trunk/Rakefile 8778 2005-09-26T04:34:48.103938Z ertai $
4
+ # Revision:: $Id: /w/fey/uttk/trunk/Rakefile 31169 2006-10-22T22:28:09.400880Z ertai $
5
5
 
6
6
  require 'rubygems'
7
7
  require_gem 'core_ex'
8
8
  load 'core_ex/rakefile_base.rf'
9
+
10
+ RTAGS = 'rtags'
11
+ SRC = FileList['**/*.rb', 'bin/uttk', 'bin/uttk-unit']
12
+ VIMTAGS = 'vim_tags'
13
+
14
+
15
+ task :emacs_tags => [] do
16
+ sh "#{RTAGS} #{SRC}"
17
+ end
18
+
19
+ task :vim_tags => [] do
20
+ sh "#{RTAGS} --vi -f #{VIMTAGS} #{SRC}"
21
+ end
22
+
23
+ task :clean => [] do
24
+ sh "rm -f TAGS #{VIMTAGS}"
25
+ end
data/SPEC.gemspec ADDED
@@ -0,0 +1,18 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = %q{uttk}
3
+ s.version = "0.4.5.0"
4
+ s.date = %q{2007-01-14}
5
+ s.summary = %q{Uttk is an extensible framework for dynamic testing.}
6
+ s.email = ["cuissa_v@epita.fr", "nicolas.despres@gmail.com", "ertai@feydakins.org", "pouill_j@epita.fr", "marco.tessari@gmail.com"]
7
+ s.homepage = %q{http://rubyforge.org/projects/uttk}
8
+ s.rubyforge_project = %q{uttk}
9
+ s.description = %q{Uttk is designed to help you while you are writing dynamic tests for your projects. It keeps track of your test strategies by means of a solid dynamic hierarchy of test strategy classes. The only way to be 100% generic is to be extensible, after all. Network distribution strategies can also be written since Uttk provides cluster features. Uttk understands YAML and Ruby as input languages and speaks YAML, XML and HTML as output languages.}
10
+ s.authors = ["Vincent Cuissard", "Nicolas Despr\350s", "Nicolas Pouillard", "Jerome Pouiller", "Marco Tessari"]
11
+ s.files = ["bin/getopts", "bin/uttk", "bin/uttk-unit", "bin/getopts/uttk.rb", "lib/uttk.rb", "lib/uttk/filters.rb", "lib/uttk/logger.rb", "lib/uttk/logger_factory.rb", "lib/uttk/status.rb", "lib/uttk/streams.rb", "lib/uttk/version_id.rb", "lib/uttk/weights.rb", "lib/uttk/dumpers/Basic.rb", "lib/uttk/dumpers/BasicColor.rb", "lib/uttk/dumpers/Dumper.rb", "lib/uttk/dumpers/Html.rb", "lib/uttk/dumpers/Mail.rb", "lib/uttk/dumpers/Path.rb", "lib/uttk/dumpers/Xml.rb", "lib/uttk/dumpers/Yaml.rb", "lib/uttk/filters/Buffer.rb", "lib/uttk/filters/Compact.rb", "lib/uttk/filters/Default.rb", "lib/uttk/filters/DefaultColor.rb", "lib/uttk/filters/Filter.rb", "lib/uttk/filters/Id.rb", "lib/uttk/filters/JustStatus.rb", "lib/uttk/filters/KeepSkipBased.rb", "lib/uttk/filters/NodeCut.rb", "lib/uttk/filters/RPathFilter.rb", "lib/uttk/filters/Saver.rb", "lib/uttk/filters/TextFilter.rb", "lib/uttk/generators/dumper_generator.rb", "lib/uttk/generators/filter_generator.rb", "lib/uttk/generators/generator.rb", "lib/uttk/generators/generator_generator.rb", "lib/uttk/generators/loader_generator.rb", "lib/uttk/generators/path_filter_generator.rb", "lib/uttk/generators/strategy_generator.rb", "lib/uttk/generators/templates/dumper.rb", "lib/uttk/generators/templates/filter.rb", "lib/uttk/generators/templates/generator.rb", "lib/uttk/generators/templates/loader.rb", "lib/uttk/generators/templates/path_filter.rb", "lib/uttk/generators/templates/strategy-command.rb", "lib/uttk/generators/templates/strategy.rb", "lib/uttk/generators/templates/unit_test.rb", "lib/uttk/loaders/Loader.rb", "lib/uttk/loaders/Ruby.rb", "lib/uttk/loaders/Yaml.rb", "lib/uttk/logger/backend.rb", "lib/uttk/logger/path.rb", "lib/uttk/logger/section_node.rb", "lib/uttk/logger/severity.rb", "lib/uttk/logger/to_uttk_log.rb", "lib/uttk/logger/verbosity.rb", "lib/uttk/path_filters/ColorStatus.rb", "lib/uttk/path_filters/PathFilter.rb", "lib/uttk/path_filters/RemoveTypes.rb", "lib/uttk/strategies/Abort.rb", "lib/uttk/strategies/Assert.rb", "lib/uttk/strategies/Authors.rb", "lib/uttk/strategies/Block.rb", "lib/uttk/strategies/Bootstrap.rb", "lib/uttk/strategies/Checkout.rb", "lib/uttk/strategies/Clean.rb", "lib/uttk/strategies/Cmd.rb", "lib/uttk/strategies/CmdBase.rb", "lib/uttk/strategies/Collection.rb", "lib/uttk/strategies/Command.rb", "lib/uttk/strategies/Compile.rb", "lib/uttk/strategies/Composite.rb", "lib/uttk/strategies/Configure.rb", "lib/uttk/strategies/Error.rb", "lib/uttk/strategies/Fail.rb", "lib/uttk/strategies/HostSelector.rb", "lib/uttk/strategies/Import.rb", "lib/uttk/strategies/IOBased.rb", "lib/uttk/strategies/Iterate.rb", "lib/uttk/strategies/Jump.rb", "lib/uttk/strategies/JUnit.rb", "lib/uttk/strategies/KillAll.rb", "lib/uttk/strategies/Make.rb", "lib/uttk/strategies/Package.rb", "lib/uttk/strategies/PackageCollection.rb", "lib/uttk/strategies/Pass.rb", "lib/uttk/strategies/Pool.rb", "lib/uttk/strategies/Proxy.rb", "lib/uttk/strategies/RMatch.rb", "lib/uttk/strategies/RUnit.rb", "lib/uttk/strategies/SignalCmd.rb", "lib/uttk/strategies/Sleep.rb", "lib/uttk/strategies/SqlQuery.rb", "lib/uttk/strategies/Strategy.rb", "lib/uttk/strategies/Stub.rb", "lib/uttk/strategies/SubCmd.rb", "lib/uttk/strategies/Suite.rb", "lib/uttk/strategies/Test.rb", "lib/uttk/strategies/Threshold.rb", "lib/uttk/strategies/Composite/contents_eval.rb", "lib/uttk/streams/Diff.rb", "lib/uttk/streams/HexaDiff.rb", "lib/uttk/streams/Stream.rb", "lib/uttk/weights/Weight.rb", "lib/uttk/weights/WExpr.rb", "lib/uttk/weights/WFloat.rb", "lib/uttk/weights/WMin.rb", "lib/uttk/generators/templates/strategy.yml", "lib/www/javascripts/uttk.js", "lib/www/stylesheets/uttk.css", "lib/www/images/opentriangle.gif", "lib/www/images/triangle.gif", "test/examples", "test/examples-suite.yml", "test/fixtures", "test/functional", "test/functional-suite.yml", "test/pkg", "test/pkg-suite.yml", "test/pool", "test/pool-suite.yml", "test/ruby", "test/ruby-suite.rb", "test/ruby-suite.yml", "test/unit", "test/unit-suite.yml", "test/uttk-check.yml", "test/uttk-distcheck.yml", "test/examples/basic.rb", "test/examples/basic.yml", "test/examples/cache", "test/examples/README", "test/examples/sql", "test/examples/students", "test/examples/students-suite.yml", "test/examples/cache/cache_and_fatal.yml", "test/examples/cache/simple.yml", "test/examples/sql/basic.yml", "test/examples/students/ball.yml", "test/examples/students/glob_stud.yml", "test/examples/students/mini-lib.yml", "test/examples/students/pool_stud.yml", "test/examples/students/stud.yml", "test/fixtures/ball", "test/fixtures/binaries", "test/fixtures/demo", "test/fixtures/java", "test/fixtures/mini-lib", "test/fixtures/package", "test/fixtures/text", "test/fixtures/unit", "test/fixtures/ball/20040804-exam_a1-zapngo-tessar_m.tar.gz", "test/fixtures/ball/bar_p-mini-lib", "test/fixtures/ball/bar_p-mini-lib.tar.bz2", "test/fixtures/ball/foo_s-mini-lib", "test/fixtures/ball/foo_s-mini-lib.tar.bz2", "test/fixtures/ball/hello", "test/fixtures/ball/hello.tar.bz2", "test/fixtures/ball/hello.tar.gz", "test/fixtures/ball/jack-exit", "test/fixtures/ball/jack-exit.tar.bz2", "test/fixtures/ball/joe-exit", "test/fixtures/ball/joe-exit.tar.bz2", "test/fixtures/ball/joe_i-mini-lib", "test/fixtures/ball/joe_i-mini-lib.tar.bz2", "test/fixtures/ball/john-exit", "test/fixtures/ball/john-exit.tar.bz2", "test/fixtures/ball/Makefile", "test/fixtures/ball/qux_j-mini-lib", "test/fixtures/ball/qux_j-mini-lib.tar.bz2", "test/fixtures/ball/bar_p-mini-lib/Makefile", "test/fixtures/ball/bar_p-mini-lib/my_strlen.c", "test/fixtures/ball/foo_s-mini-lib/configure", "test/fixtures/ball/foo_s-mini-lib/Makefile", "test/fixtures/ball/foo_s-mini-lib/my_strlen.c", "test/fixtures/ball/hello/hello.c", "test/fixtures/ball/hello/Makefile", "test/fixtures/ball/jack-exit/exit.c", "test/fixtures/ball/jack-exit/Makefile", "test/fixtures/ball/joe-exit/exit.c", "test/fixtures/ball/joe-exit/Makefile", "test/fixtures/ball/joe_i-mini-lib/configure", "test/fixtures/ball/joe_i-mini-lib/Makefile", "test/fixtures/ball/joe_i-mini-lib/my_strlen.c", "test/fixtures/ball/john-exit/exit.c", "test/fixtures/ball/john-exit/Makefile", "test/fixtures/ball/qux_j-mini-lib/Makefile", "test/fixtures/ball/qux_j-mini-lib/my_strlen.c", "test/fixtures/binaries/segv", "test/fixtures/binaries/segv.c", "test/fixtures/binaries/segv.rb", "test/fixtures/demo/filter-tutorial", "test/fixtures/demo/filter-tutorial/check.yml", "test/fixtures/demo/filter-tutorial/filters", "test/fixtures/demo/filter-tutorial/pluralizer.rb", "test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb", "test/fixtures/java/unit", "test/fixtures/java/unit/build.sh", "test/fixtures/java/unit/multibar.yml", "test/fixtures/java/unit/multifoo.yml", "test/fixtures/java/unit/MultiRight", "test/fixtures/java/unit/multiright.yml", "test/fixtures/java/unit/simple_exception.yml", "test/fixtures/java/unit/SimpleException", "test/fixtures/java/unit/MultiRight/bar", "test/fixtures/java/unit/MultiRight/build.sh", "test/fixtures/java/unit/MultiRight/Foo", "test/fixtures/java/unit/MultiRight/MultiRight.java", "test/fixtures/java/unit/MultiRight/MultiRightTest.java", "test/fixtures/java/unit/MultiRight/bar/Bar.java", "test/fixtures/java/unit/MultiRight/bar/BarTest.java", "test/fixtures/java/unit/MultiRight/Foo/Foo.java", "test/fixtures/java/unit/MultiRight/Foo/FooTest.java", "test/fixtures/java/unit/SimpleException/build.sh", "test/fixtures/java/unit/SimpleException/SimpleExceptionTest.java", "test/fixtures/mini-lib/Makefile", "test/fixtures/mini-lib/strlen.c", "test/fixtures/package/pkg_foo", "test/fixtures/package/pkg_foo.tar.gz", "test/fixtures/package/pkg_foo/bootstrap", "test/fixtures/package/pkg_foo/configure", "test/fixtures/package/pkg_foo/foo.sh", "test/fixtures/package/pkg_foo/Makefile", "test/fixtures/text/1.txt", "test/fixtures/unit/bad.rb", "test/fixtures/unit/error.rb", "test/fixtures/unit/good.rb", "test/functional/author.yml", "test/functional/base.yml", "test/functional/base_pool.yml", "test/functional/block.yml", "test/functional/cat.yml", "test/functional/cmd.yml", "test/functional/command.yml", "test/functional/diff.yml", "test/functional/env_cmd.yml", "test/functional/exit.yml", "test/functional/fatal.yml", "test/functional/glob.yml", "test/functional/hexa-diff.yml", "test/functional/host_selector.yml", "test/functional/import.yml", "test/functional/iterate.yml", "test/functional/jump.yml", "test/functional/killall.yml", "test/functional/pkg.yml", "test/functional/r_unit.yml", "test/functional/rmatch.yml", "test/functional/signal_cmd.yml", "test/functional/sub.yml", "test/functional/test.yml", "test/functional/threshold.yml", "test/functional/timeout.yml", "test/functional/wc.yml", "test/functional/weight.yml", "test/pkg/cmdline.yml", "test/pool/base.yml", "test/pool/pool.yml", "test/ruby/base.rb", "test/ruby/iterate.rb", "test/ruby/wc.rb", "test/unit/dumpers", "test/unit/filters", "test/unit/filters_test.rb", "test/unit/loaders", "test/unit/logger", "test/unit/logger_test.rb", "test/unit/strategies", "test/unit/dumpers/mail_test.rb", "test/unit/dumpers/path_test.rb", "test/unit/dumpers/xml_test.rb", "test/unit/dumpers/yaml_test.rb", "test/unit/filters/buffer_test.rb", "test/unit/filters/keep_skip_based_test.rb", "test/unit/filters/node_cut_test.rb", "test/unit/filters/rpath_filter_test.rb", "test/unit/filters/text_filter_test.rb", "test/unit/logger/section_node_test.rb", "test/unit/logger/severity_test.rb", "test/unit/logger/to_uttk_log_test.rb", "test/unit/logger/verbosity_test.rb", "test/unit/strategies/suite_test.rb", "misc/expandtab.rb", "misc/header.rb", "misc/renaming", "misc/textile_compiler", "misc/uttk-grep.sh", "misc/uttk-line-count.rb", "AUTHORS", "BESTOF", "ChangeLog", "COPYING", "GUIDELINES", "LGPL", "MATRIX", "NEWS", "NORM", "PITFALLS", "Rakefile", "README", "SPEC.gemspec", "SPEC.yml", "TODO", "TODO.old", "VERSION"]
12
+ s.executables = ["uttk", "uttk-unit"]
13
+ s.add_dependency(%q<unified_matchers>, ["~> 0.1.5"])
14
+ s.add_dependency(%q<objective_command>, ["~> 0.1.5"])
15
+ s.add_dependency(%q<ruby_ex>, ["~> 0.5.5"])
16
+ s.add_dependency(%q<actionpack>, ["~> 1.12.5"])
17
+ s.add_dependency(%q<core_ex>, ["~> 0.6.5"])
18
+ end
data/SPEC.yml CHANGED
@@ -1,9 +1,9 @@
1
1
  ---
2
2
  Author: The Uttk Team.
3
3
  License: LGPL
4
- Revision: '$Id: /w/fey/uttk/trunk/SPEC.yml 22673 2006-03-11T19:16:37.840151Z pouillar $'
4
+ Revision: '$Id: /w/fey/uttk/trunk/SPEC.yml 54022 2007-01-14T15:37:03.682735Z ertai $'
5
5
 
6
- version: !feydakins.org,2006/version dev-util/uttk-0.3_p1#KID
6
+ version: !feydakins.org,2006/version dev-util/uttk-0.4#Teenager
7
7
 
8
8
  title: Uttk -- An extensible framework for dynamic testing.
9
9
  summary: Uttk is an extensible framework for dynamic testing.
@@ -43,19 +43,33 @@ rdoc_files: !filelist
43
43
 
44
44
  pkg_files: !filelist
45
45
  - bin/**/*
46
- - lib/**/*.{rb,yml,js}
46
+ - lib/**/*.{rb,yml,js,css,gif}
47
47
  - test/**/*
48
48
  - template/**/*
49
49
  - misc/**/*
50
50
  - '[A-Z]*'
51
51
 
52
52
  dependencies:
53
+ core_ex:
54
+ gem : ~> 0.6.5 # FIXME 0.4_alpha XY ...
55
+ tarball: http://rubyforge.iasi.roedu.net/files/ttk/core_ex-0.6.tar.gz
56
+ vcs : svn://svn.feydakins.org/ruby_ex/trunk/core_ex
53
57
  ruby_ex:
54
- gem : ~> 0.4.5 # FIXME 0.4_alpha XY ...
55
- tarball: 9145/ruby_ex-0.4_p2.tar.gz
58
+ gem : ~> 0.5.5
59
+ tarball: http://rubyforge.iasi.roedu.net/files/ttk/ruby_ex-0.5.tar.gz
56
60
  vcs : svn://svn.feydakins.org/ruby_ex/trunk
57
- actionpack: [~> 1.11.2, 7645/actionpack-1.11.2.tgz]
61
+ unified_matchers:
62
+ gem : ~> 0.1.5
63
+ tarball: http://rubyforge.iasi.roedu.net/files/ttk/unified_matchers-0.1.tar.gz
64
+ vcs : svn://svn.feydakins.org/unified_matchers/trunk
65
+ objective_command:
66
+ gem : ~> 0.1.5
67
+ tarball: http://rubyforge.iasi.roedu.net/files/ttk/objective_command-0.1.tar.gz
68
+ vcs : svn://svn.feydakins.org/objective_command/trunk
69
+ actionpack:
70
+ - ~> 1.12.5
71
+ - http://rubyforge.iasi.roedu.net/files/actionpack/actionpack-1.12.5.tgz
58
72
 
59
73
  # The version needed to test this uttk.
60
74
  # Not the version of this uttk.
61
- uttk_version: ~> 0.3.1
75
+ uttk_version: >= 0.3.6.1
data/bin/getopts/uttk.rb CHANGED
@@ -1,10 +1,10 @@
1
1
  # Author:: The Uttk Team.
2
2
  # Copyright:: Copyright (c) 2004 Uttk team. All rights reserved.
3
3
  # License:: LGPL
4
- # $Id: /w/fey/uttk/trunk/bin/getopts/uttk.rb 22673 2006-03-11T19:16:37.840151Z pouillar $
4
+ # $Id: /w/fey/uttk/trunk/bin/getopts/uttk.rb 53904 2007-01-13T12:03:13.952467Z ertai $
5
5
 
6
6
  require 'optparse'
7
- Module::Hierarchy.import!
7
+ ModuleExtensions::Hierarchy.import!
8
8
  PpHierarchy.import!
9
9
 
10
10
  module Uttk
@@ -84,7 +84,7 @@ module Uttk
84
84
  optparser.separator ''
85
85
  optparser.separator 'Loader options:'
86
86
 
87
- all_loaders = sub_modules(Loaders)
87
+ all_loaders = sub_modules(Loaders, Loaders::Loader)
88
88
 
89
89
  optparser.on('-L',
90
90
  '--loader [TYPE]',
@@ -123,7 +123,8 @@ module Uttk
123
123
  end
124
124
 
125
125
  optparser.on('--filter-help', 'More information about filters') do
126
- all_filters = sub_modules(Filters) + sub_modules(Dumpers)
126
+ all_filters = sub_modules(Filters, Filters::Filter)
127
+ all_dumpers = sub_modules(Dumpers, Dumpers::Dumper)
127
128
  puts %Q{
128
129
  |filters:
129
130
  | The --filter (-F) option take a pipeline description which
@@ -131,12 +132,23 @@ module Uttk
131
132
  |
132
133
  | The syntax is basic:
133
134
  |
134
- | Observer ::= <FilterClass>
135
- | | <FilterClass> ":" Observer
136
- | | "[" Observer* "]"
135
+ | Observer ::= Class
136
+ | | <filename>
137
+ | | Class ":" Observer
138
+ | | "[" Observers "]"
137
139
  | ;
138
140
  |
139
- | Filters ::= #{all_filters.join(' | ')} ;
141
+ | Observers ::= Observer
142
+ | | Observer "," Observers
143
+ | ;
144
+ |
145
+ | Class ::= FilterClass | DumperClass ;
146
+ |
147
+ | FilterClass ::= #{all_filters.join("\n| | ")}
148
+ | ;
149
+ |
150
+ | DumperClass ::= #{all_dumpers.join("\n| | ")}
151
+ | ;
140
152
  |
141
153
  | Examples:
142
154
  | Yaml # Use the Yaml output format on the stdout
@@ -348,8 +360,9 @@ module Uttk
348
360
  end
349
361
 
350
362
  protected
351
- def self.sub_modules(mod)
352
- mod.constants.sort!.map! { |c| c.to_sym }
363
+ def self.sub_modules(mod, top)
364
+ mod.constants.find_all { |c| mod.const_get(c) < top }.
365
+ sort!.map! { |c| c.to_sym }
353
366
  end
354
367
 
355
368
  protected
data/lib/uttk.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # Author:: The Uttk team
2
2
  # Copyright:: Copyright (c) 2004, 2005 Uttk team. All rights reserved.
3
3
  # License:: LGPL
4
- # $Id: /w/fey/uttk/trunk/lib/uttk.rb 22258 2006-02-26T14:40:04.490324Z pouillar $
4
+ # $Id: /w/fey/uttk/trunk/lib/uttk.rb 53986 2007-01-14T15:03:21.549822Z ertai $
5
5
 
6
6
  #
7
7
  # = Description
@@ -25,25 +25,30 @@ module Uttk
25
25
 
26
26
  lib = Pathname.new(__FILE__).dirname
27
27
  vendor = lib.parent + 'vendor'
28
- unless defined? RubyEx
28
+ unless defined? CoreEx
29
29
  $CORE_EX_VENDORS ||= []
30
30
  $CORE_EX_VENDORS << vendor
31
- file = vendor + 'ruby_ex' + 'lib' + 'ruby_ex.rb'
31
+ file = vendor + 'core_ex' + 'lib' + 'core_ex'
32
32
  if file.exist?
33
33
  require file.to_s
34
34
  else
35
- require 'rubygems'
36
- require_gem 'ruby_ex'
37
- require 'ruby_ex'
35
+ require 'rubygems' unless ENV['NO_GEM']
36
+ require_gem 'core_ex'
37
+ require 'core_ex'
38
38
  end
39
39
  end
40
40
  $LOADED_FEATURES << 'uttk.rb'
41
41
  lib.load_path!
42
- RubyEx.import!
43
42
  mattr_accessor :dir, :load_path
44
43
  self.dir = lib + 'uttk'
45
44
  self.load_path = [dir]
46
- silence_warnings { core_ex_require 'action_view', 'actionpack' }
45
+ silence_warnings do
46
+ core_ex_require 'action_view',
47
+ :gem_name => 'actionpack', :dir_name => 'actionpack'
48
+ end
49
+ core_ex_require 'ruby_ex'
50
+ core_ex_require 'objective_command'
51
+ core_ex_require 'unified_matchers'
47
52
 
48
53
 
49
54
  # Standard library requirements
@@ -60,14 +65,13 @@ module Uttk
60
65
  # RubyEx requirements
61
66
  SymTblGsub.import!
62
67
  SynFlow.import!
63
- Module::InstanceMethodVisibility.import!
64
- AutoloadTree.import!
68
+ ModuleExtensions::InstanceMethodVisibility.import!
69
+ ModuleExtensions::AutoloadTree.import!
65
70
  OrderedHash.import!
66
71
  Abstract.import!
67
72
  ConstRegexp.import!
68
73
  HashEval.import!
69
74
  RPath.import!
70
- Commands.import!
71
75
  ::Version.import!
72
76
  URI::GenericEx.import!
73
77
 
@@ -268,7 +272,7 @@ module Uttk
268
272
  end
269
273
 
270
274
  def self.bin
271
- Config::CONFIG["RUBY_INSTALL_NAME"].to_cmd[dir.parent.parent + 'bin/uttk']
275
+ Config::CONFIG["RUBY_INSTALL_NAME"].to_ocmd[dir.parent.parent + 'bin/uttk']
272
276
  end
273
277
 
274
278
  end # module Uttk
@@ -0,0 +1,41 @@
1
+ # Author:: Nicolas Pouillard <ertai@lrde.epita.fr>.
2
+ # Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved.
3
+ # License:: LGPL
4
+ # Revision:: $Id: /w/fey/uttk/trunk/lib/uttk/dumpers/Mail.rb 53986 2007-01-14T15:03:21.549822Z ertai $
5
+
6
+ module Uttk
7
+
8
+ module Dumpers
9
+
10
+ class Mail < Dumper
11
+ include Concrete
12
+
13
+ def initialize ( options )
14
+ super(TempPath.new)
15
+ options = {
16
+ :dumper => Html.new,
17
+ :subject => "Uttk output #{Time.now}",
18
+ }.merge options
19
+ @dumper = options[:dumper]
20
+ @mailer = Sendmail.new(options.merge(:body => @io))
21
+ end
22
+
23
+
24
+ def update ( *args )
25
+ super
26
+ @dumper.update(*args)
27
+ end
28
+ protected :new_node
29
+
30
+
31
+ def close
32
+ @mailer.sendmail
33
+ super
34
+ end
35
+ protected :close
36
+
37
+ end # class Mail
38
+
39
+ end # module Dumpers
40
+
41
+ end # module Uttk
@@ -1,7 +1,7 @@
1
1
  # Author:: Nicolas Pouillard <ertai@lrde.epita.fr>.
2
2
  # Copyright:: Copyright (c) 2004, 2005 Uttk team. All rights reserved.
3
3
  # License:: LGPL
4
- # $Id: /w/fey/uttk/trunk/lib/uttk/dumpers/Yaml.rb 22676 2006-03-11T21:17:42.382165Z pouillar $
4
+ # $Id: /w/fey/uttk/trunk/lib/uttk/dumpers/Yaml.rb 24396 2006-07-10T08:23:37.784417Z ertai $
5
5
 
6
6
  class Symbol
7
7
  alias_method :old_to_yaml, :to_yaml
@@ -91,7 +91,7 @@ module Uttk
91
91
  puts_header
92
92
  val = leaf
93
93
  return if val.respond_to?(:hidden)
94
- if val.is_a?(String) and val =~ /\n/
94
+ if val.is_a?(String) and val =~ /[\n"]/
95
95
  if val =~ /\A[ \t]/
96
96
  val = "|#{MAP_INDENT}\n#{val}"
97
97
  else
@@ -1,7 +1,7 @@
1
1
  # Author:: Nicolas Pouillard <ertai@lrde.epita.fr>.
2
2
  # Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved.
3
3
  # License:: LGPL
4
- # Revision:: $Id: /fey/uttk/trunk/lib/uttk/filters/KeepSkipBased.rb 8778 2005-09-26T04:34:48.103938Z ertai $
4
+ # Revision:: $Id: /w/fey/uttk/trunk/lib/uttk/filters/KeepSkipBased.rb 8778 2005-09-26T04:34:48.103938Z ertai $
5
5
 
6
6
  module Uttk
7
7
 
@@ -1,7 +1,7 @@
1
1
  # Author:: <%= fullname %> <<%= email %>>.
2
2
  # Copyright:: Copyright (c) <%= year %> Uttk Team. All rights reserved.
3
3
  # License:: LGPL
4
- # Revision:: $Id: /fey/uttk/trunk/lib/uttk/generators/templates/loader.rb 8778 2005-09-26T04:34:48.103938Z ertai $
4
+ # Revision:: $Id: /w/fey/uttk/trunk/lib/uttk/generators/templates/loader.rb 8778 2005-09-26T04:34:48.103938Z ertai $
5
5
 
6
6
  module Uttk
7
7