From nicolas.despres at gmail.com Wed Feb 1 17:11:17 2006 From: nicolas.despres at gmail.com (=?ISO-8859-1?Q?Nicolas_Despr=E8s?=) Date: Wed, 1 Feb 2006 23:11:17 +0100 Subject: [Uttk-Patches] [core_ex] 430: Improving DTime. In-Reply-To: <20051230024658.9A1777CDEF@smtp.feydakins.org> References: <20051230024658.9A1777CDEF@smtp.feydakins.org> Message-ID: <840b875c0602011411k39d728f4y7741bdb331f1eb1c@mail.gmail.com> On 12/30/05, Nicolas Pouillard wrote: > svn://svn.feydakins.org/ruby_ex/trunk/core_ex > > > Index: ChangeLog > from Nicolas Pouillard > > Improving DTime. > > * lib/d_time.rb: Introdoce TimeUnit's to make it more generic and > powerful. > [...] > + def == ( rhs ) > + @delta == rhs.to_f > end > This is useless since there is <=> > - def to_yaml_string > - inspect > + def <=> ( rhs ) > + @delta <=> rhs.to_f > end > -- Nicolas Despr?s _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From ertai at lrde.epita.fr Sat Feb 18 09:53:49 2006 From: ertai at lrde.epita.fr (Nicolas Pouillard) Date: Sat, 18 Feb 2006 15:53:49 +0100 (CET) Subject: [Uttk-Patches] [core_ex] 449: LazyLoading: More tests, and less warnings in sanity. Message-ID: <20060218145349.9652A95198@smtp.feydakins.org> svn://svn.feydakins.org/ruby_ex/trunk/core_ex Index: ChangeLog from Nicolas Pouillard LazyLoading: More tests, and less warnings in sanity. * lib/core_ex/lazy_loading.rb: Hand protect against double inclusion. * test/fixtures/lazy_loading/a_b: New. * test/fixtures/lazy_loading/a_b/a: New. * test/fixtures/lazy_loading/a_b/a/c.rb: New. * test/fixtures/lazy_loading/a_b/b: New. * test/fixtures/lazy_loading/a_b/b/c.rb: New. * test/fixtures/lazy_loading/a_b/a.rb: New. * test/fixtures/lazy_loading/a_b/b.rb: New. * test/lazy_loading/test_lazy_loading.rb: Add some tests. lib/core_ex/lazy_loading.rb | 4 ++++ test/fixtures/lazy_loading/a_b/a.rb | 2 ++ test/fixtures/lazy_loading/a_b/a/c.rb | 6 ++++++ test/fixtures/lazy_loading/a_b/b.rb | 2 ++ test/fixtures/lazy_loading/a_b/b/c.rb | 4 ++++ test/lazy_loading/test_lazy_loading.rb | 14 +++++++++++--- 6 files changed, 29 insertions(+), 3 deletions(-) Index: test/fixtures/lazy_loading/a_b/a/c.rb --- test/fixtures/lazy_loading/a_b/a/c.rb (revision 0) +++ test/fixtures/lazy_loading/a_b/a/c.rb (revision 0) @@ -0,0 +1,6 @@ +class A + class B + class C + end # class C + end # class B +end # class A Property changes on: test/fixtures/lazy_loading/a_b/a/c.rb ___________________________________________________________________ Name: svn:keywords + Id Index: test/fixtures/lazy_loading/a_b/b/c.rb --- test/fixtures/lazy_loading/a_b/b/c.rb (revision 0) +++ test/fixtures/lazy_loading/a_b/b/c.rb (revision 0) @@ -0,0 +1,4 @@ +class B + class C + end # class C +end # class B Property changes on: test/fixtures/lazy_loading/a_b/b/c.rb ___________________________________________________________________ Name: svn:keywords + Id Index: test/fixtures/lazy_loading/a_b/a.rb --- test/fixtures/lazy_loading/a_b/a.rb (revision 0) +++ test/fixtures/lazy_loading/a_b/a.rb (revision 0) @@ -0,0 +1,2 @@ +class A +end # class A Property changes on: test/fixtures/lazy_loading/a_b/a.rb ___________________________________________________________________ Name: svn:keywords + Id Index: test/fixtures/lazy_loading/a_b/b.rb --- test/fixtures/lazy_loading/a_b/b.rb (revision 0) +++ test/fixtures/lazy_loading/a_b/b.rb (revision 0) @@ -0,0 +1,2 @@ +class B +end # class B Property changes on: test/fixtures/lazy_loading/a_b/b.rb ___________________________________________________________________ Name: svn:keywords + Id Index: test/lazy_loading/test_lazy_loading.rb --- test/lazy_loading/test_lazy_loading.rb (revision 448) +++ test/lazy_loading/test_lazy_loading.rb (working copy) @@ -19,13 +19,14 @@ :foo_bars => lazy_loading_dir, :double => double_dir, :double_a => double_dir/'a', - :double_b => double_dir/'b' + :double_b => double_dir/'b', + :a_b => lazy_loading_dir/'a_b', } def teardown @@fixtures.each_value { |v| $LOAD_PATH.delete(v.to_s) } - $".delete_if { |x| x.to_s =~ /\b(sub|root|foo_bars)\// } - Dependencies.loaded.delete_if { |x| x.to_s =~ /\b(sub|root|foo_bars)\// } + $".delete_if { |x| x.to_s =~ /\b(sub|root|foo_bars|a_b)\// } + Dependencies.loaded.delete_if { |x| x.to_s =~ /\b(sub|root|foo_bars|a_b)\// } %w[ FooBars FooBar Root Sub A B ].each do |aConst| suppress(NameError) { Object.send(:remove_const, aConst) } end @@ -151,6 +152,13 @@ assert_equal('Bouhou', ::B::A.name) end + test :vicious_nestings, :a_b do + class ::A + X = B::C + end # class ::A + assert_equal('B::C', ::A::X.name) + end + ##### XFAILS ##### test :already_present_name_relative, :foo_bars do assert(defined? ::FooBar) Index: lib/core_ex/lazy_loading.rb --- lib/core_ex/lazy_loading.rb (revision 448) +++ lib/core_ex/lazy_loading.rb (working copy) @@ -3,6 +3,8 @@ # License:: Gnu General Public License. # Revision:: $Id$ +# This file is hand protected against double inclusion for stranges reasons +unless defined? LazyLoading require 'active_support/binding_of_caller' @@ -153,3 +155,5 @@ test_section __FILE__ do load CoreEx.test_dir/'lazy_loading'/'test_lazy_loading.rb' end + +end -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 186 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060218/8c8eda57/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From ertai at lrde.epita.fr Sat Feb 18 12:06:19 2006 From: ertai at lrde.epita.fr (Nicolas Pouillard) Date: Sat, 18 Feb 2006 18:06:19 +0100 (CET) Subject: [Uttk-Patches] [ruby_ex] 450: Sendmail: Keep the importants keys ordered. Message-ID: <20060218170619.6227DB7C12@smtp.feydakins.org> svn://svn.feydakins.org/ruby_ex/trunk Index: ChangeLog from Nicolas Pouillard Sendmail: Keep the importants keys ordered. * lib/sendmail.rb: From, To and Subject must be in first. sendmail.rb | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletion(-) Index: lib/sendmail.rb --- lib/sendmail.rb (revision 449) +++ lib/sendmail.rb (working copy) @@ -4,7 +4,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id: header 98 2004-09-29 12:07:43Z ertai $ -require 'pathname' require 'ostruct' require 'optparse' Yaml::ChopHeader.import! @@ -120,6 +119,7 @@ opts = parse_mail_options(*args) body = (opts.body.nil?)? '' : opts.body.read end + opts.header.symbolize_keys! server, port = opts.server.split(/:/) port ||= 25 STDERR.puts "Smtp Server: #{server}" @@ -141,7 +141,12 @@ require 'net/smtp' Net::SMTP.start(server, port) do |smtp| smtp.open_message_stream(opts.from, opts.to) do |f| + f.print "From: #{opts.header[:From]}\n" + f.print "To: #{opts.header[:To]}\n" + f.print "Subject: #{opts.header[:Subject]}\n" opts.header.each do |k, v| + next if [:From, :To, :Subject].include? k + k = $1 if k.to_s =~ /^"(.*)"$/ f.print "#{k}: #{v}\n" end if opts.signed -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 186 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060218/fb2593fa/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From ertai at lrde.epita.fr Sat Feb 18 12:11:29 2006 From: ertai at lrde.epita.fr (Nicolas Pouillard) Date: Sat, 18 Feb 2006 18:11:29 +0100 (CET) Subject: [Uttk-Patches] [ruby_ex] 451: Adapt ruby_ex to LazyLoading. Message-ID: <20060218171129.6F40BB7BE7@smtp.feydakins.org> svn://svn.feydakins.org/ruby_ex/trunk Index: ChangeLog from Nicolas Pouillard Adapt ruby_ex to LazyLoading. * lib/r_path.rb, * lib/indexed_node.rb, * lib/sym_tbl_gsub.rb, * lib/shuffle.rb, * lib/labeled_node.rb, * lib/config_file.rb, * lib/abstract_node.rb, * lib/uri_ex.rb, * lib/commands/pipe.rb, * lib/commands/factory.rb, * lib/commands/seq.rb, * lib/commands/datas/pipe.rb, * lib/commands/datas/composite.rb, * lib/commands/datas/temp.rb, * lib/commands/datas/factory.rb, * lib/commands/datas/data.rb, * lib/commands/runners/no_run.rb, * lib/commands/runners/popen.rb, * lib/commands/runners/exec.rb, * lib/commands/runners/runner.rb, * lib/daemon.rb, * lib/choose.rb, * lib/diff_tools.rb, * lib/verbose_object.rb, * lib/uri/ssh.rb, * lib/uri/rsync.rb, * lib/uri/file.rb, * lib/uri/druby.rb, * lib/uri/ftp_ex.rb, * lib/uri/mysql.rb, * lib/uri/pgsql.rb, * lib/uri/svn.rb, * lib/uri/generic_ex.rb, * lib/uri/http_ex.rb, * lib/ruby_ex.rb, * lib/module/instance_method_visibility.rb, * lib/auto_object.rb, * lib/regex_list.rb: Less requires. abstract_node.rb | 2 -- auto_object.rb | 4 ---- choose.rb | 3 ++- commands/datas/composite.rb | 4 +--- commands/datas/data.rb | 2 -- commands/datas/factory.rb | 2 -- commands/datas/pipe.rb | 4 +--- commands/datas/temp.rb | 4 +--- commands/factory.rb | 2 -- commands/pipe.rb | 2 -- commands/runners/exec.rb | 2 -- commands/runners/no_run.rb | 2 -- commands/runners/popen.rb | 4 +--- commands/runners/runner.rb | 2 ++ commands/seq.rb | 2 -- config_file.rb | 1 - daemon.rb | 1 - diff_tools.rb | 2 -- indexed_node.rb | 3 --- labeled_node.rb | 3 --- module/instance_method_visibility.rb | 3 ++- r_path.rb | 2 -- regex_list.rb | 5 +---- ruby_ex.rb | 9 +++++++-- shuffle.rb | 2 ++ sym_tbl_gsub.rb | 8 ++------ uri/druby.rb | 4 +--- uri/file.rb | 3 +-- uri/ftp_ex.rb | 2 +- uri/generic_ex.rb | 26 ++++++++++---------------- uri/http_ex.rb | 2 +- uri/mysql.rb | 4 +--- uri/pgsql.rb | 4 +--- uri/rsync.rb | 4 +--- uri/ssh.rb | 4 +--- uri/svn.rb | 4 +--- verbose_object.rb | 4 ---- 37 files changed, 41 insertions(+), 100 deletions(-) Index: lib/r_path.rb --- lib/r_path.rb (revision 450) +++ lib/r_path.rb (working copy) @@ -3,8 +3,6 @@ # License:: Gnu General Public License. # Revision:: $Id$ -require 'regex_path' - class Object # Index: lib/indexed_node.rb --- lib/indexed_node.rb (revision 450) +++ lib/indexed_node.rb (working copy) @@ -6,9 +6,6 @@ # $Id: node.rb 171 2005-03-29 09:12:47Z polrop $ -require 'abstract_node' - - class IndexedNode < AbstractNode include Concrete Index: lib/sym_tbl_gsub.rb --- lib/sym_tbl_gsub.rb (revision 450) +++ lib/sym_tbl_gsub.rb (working copy) @@ -3,8 +3,6 @@ # License:: Ruby License # Revision:: $Id$ -require 'sym_tbl' - class Object def symtbl_gsub ( symtbl ) @@ -70,8 +68,7 @@ end # class Array - -class SymTbl +SymTbl.class_eval do def symtbl_gsub! ( symtbl ) new_local = @local.symtbl_gsub(symtbl) @@ -140,8 +137,7 @@ end # class String -PathList.import! -class PathList +PathList.class_eval do attr_accessor :symtbl alias_method :add_matching_without_expand, :add_matching Index: lib/shuffle.rb --- lib/shuffle.rb (revision 450) +++ lib/shuffle.rb (working copy) @@ -3,6 +3,8 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ +Choose.import! + module Shuffle def shuffle! ( generator=nil ) Index: lib/labeled_node.rb --- lib/labeled_node.rb (revision 450) +++ lib/labeled_node.rb (working copy) @@ -6,9 +6,6 @@ # $Id: node.rb 171 2005-03-29 09:12:47Z polrop $ -require 'abstract_node' - - class LabeledNode < AbstractNode include Concrete Index: lib/config_file.rb --- lib/config_file.rb (revision 450) +++ lib/config_file.rb (working copy) @@ -6,7 +6,6 @@ # $Id$ -require 'pathname' require 'yaml' require 'delegate' Index: lib/abstract_node.rb --- lib/abstract_node.rb (revision 450) +++ lib/abstract_node.rb (working copy) @@ -6,8 +6,6 @@ # $Id$ -require 'abstract' - class AbstractNode include Abstract Index: lib/commands/pipe.rb --- lib/commands/pipe.rb (revision 450) +++ lib/commands/pipe.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - class IO def pipe? Index: lib/commands/factory.rb --- lib/commands/factory.rb (revision 450) +++ lib/commands/factory.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands class Factory < Command Index: lib/commands/seq.rb --- lib/commands/seq.rb (revision 450) +++ lib/commands/seq.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands class Seq < Command Index: lib/commands/datas/pipe.rb --- lib/commands/datas/pipe.rb (revision 450) +++ lib/commands/datas/pipe.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - class IOPipe attr_accessor :reader, :writer, :open_mode def initialize @@ -39,7 +37,7 @@ module Datas - class Pipe < Commands::Datas::Data + class Pipe < self::Data def initialize ( *a, &b ) super Index: lib/commands/datas/composite.rb --- lib/commands/datas/composite.rb (revision 450) +++ lib/commands/datas/composite.rb (working copy) @@ -3,13 +3,11 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Datas - class Composite < Data + class Composite < self::Data attr_accessor :contents Index: lib/commands/datas/temp.rb --- lib/commands/datas/temp.rb (revision 450) +++ lib/commands/datas/temp.rb (working copy) @@ -3,13 +3,11 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Datas - class Temp < Commands::Datas::Data + class Temp < self::Data def initialize ( *a, &b ) super Index: lib/commands/datas/factory.rb --- lib/commands/datas/factory.rb (revision 450) +++ lib/commands/datas/factory.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Datas Index: lib/commands/datas/data.rb --- lib/commands/datas/data.rb (revision 450) +++ lib/commands/datas/data.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Datas Index: lib/commands/runners/no_run.rb --- lib/commands/runners/no_run.rb (revision 450) +++ lib/commands/runners/no_run.rb (working copy) @@ -3,8 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Runners Index: lib/commands/runners/popen.rb --- lib/commands/runners/popen.rb (revision 450) +++ lib/commands/runners/popen.rb (working copy) @@ -3,14 +3,12 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -Commands.import! - module Commands module Runners class Popen < Fork - concrete + make Concrete def initialize ( *a, &b ) super Index: lib/commands/runners/exec.rb --- lib/commands/runners/exec.rb (revision 450) +++ lib/commands/runners/exec.rb (working copy) @@ -16,8 +16,6 @@ end # class Exec - Commands::Helpers.import! - test_section __FILE__ do class ExecTest < Test::Unit::TestCase Index: lib/commands/runners/runner.rb --- lib/commands/runners/runner.rb (revision 450) +++ lib/commands/runners/runner.rb (working copy) @@ -158,6 +158,8 @@ end # class Runner + Commands::Helpers.import! + test_section __FILE__ do Index: lib/daemon.rb --- lib/daemon.rb (revision 450) +++ lib/daemon.rb (working copy) @@ -6,7 +6,6 @@ # $Id$ -require 'pathname' require 'singleton' require 'observable' Index: lib/choose.rb --- lib/choose.rb (revision 450) +++ lib/choose.rb (working copy) @@ -3,6 +3,8 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ +module Choose +end # module Choose class Integer @@ -115,7 +117,6 @@ end # class RandomMockRandomGenerator - require 'test/unit' require 'set' class ChooseTest < Test::Unit::TestCase Index: lib/diff_tools.rb --- lib/diff_tools.rb (revision 450) +++ lib/diff_tools.rb (working copy) @@ -3,8 +3,6 @@ # License:: Gnu General Public License. # Revision:: $Id$ -RegexList.import! - module DiffTools class Diff Index: lib/verbose_object.rb --- lib/verbose_object.rb (revision 450) +++ lib/verbose_object.rb (working copy) @@ -3,9 +3,6 @@ # License:: GNU General Public License (GPL). # Revision:: $Id$ -require 'blank_slate' -require 'method_call' - module Verbosify attr_accessor :verbose_object_reference @@ -136,7 +133,6 @@ end # class Object test_section __FILE__ do - require 'mocks' class TestVerboseObject < ::Test::Unit::TestCase include Mocks::Assertions Index: lib/uri/ssh.rb --- lib/uri/ssh.rb (revision 450) +++ lib/uri/ssh.rb (working copy) @@ -3,11 +3,9 @@ # License:: Gnu General Public License. # Revision:: $Id$ -UriEx.import! - module URI - class Ssh < Generic + class Ssh < GenericEx SCHEME = 'ssh'.freeze DEFAULT_HOST = 'localhost'.freeze Index: lib/uri/rsync.rb --- lib/uri/rsync.rb (revision 450) +++ lib/uri/rsync.rb (working copy) @@ -3,11 +3,9 @@ # License:: Gnu General Public License. # Revision:: $Id$ -UriEx.import! - module URI - class Rsync < Generic + class Rsync < GenericEx SCHEMES = ['rsync.ssh'.freeze] DEFAULT_HOST = 'localhost'.freeze Index: lib/uri/file.rb --- lib/uri/file.rb (revision 450) +++ lib/uri/file.rb (working copy) @@ -6,12 +6,11 @@ # $Id$ -UriEx.import! require 'md5' module URI - class File < Generic + class File < GenericEx COMPONENT = [ :scheme, Index: lib/uri/druby.rb --- lib/uri/druby.rb (revision 450) +++ lib/uri/druby.rb (working copy) @@ -5,11 +5,9 @@ # $LastChangedBy$ # $Id$ -UriEx.import! - module URI - class DRuby < Generic + class DRuby < GenericEx SCHEME = 'druby' DEFAULT_HOST = 'localhost' Index: lib/uri/ftp_ex.rb --- lib/uri/ftp_ex.rb (revision 450) +++ lib/uri/ftp_ex.rb (working copy) @@ -5,12 +5,12 @@ # $LastChangedBy$ # $Id$ -UriEx.import! require 'uri/ftp' require 'net/ftp' module URI + GenericEx.import! class FTP def checkout Index: lib/uri/mysql.rb --- lib/uri/mysql.rb (revision 450) +++ lib/uri/mysql.rb (working copy) @@ -3,11 +3,9 @@ # License:: Gnu General Public License. # Revision:: $Id$ -UriEx.import! - module URI - class MySQL < Generic + class MySQL < GenericEx SCHEME = 'mysql'.freeze DEFAULT_HOST = 'localhost'.freeze Index: lib/uri/pgsql.rb --- lib/uri/pgsql.rb (revision 450) +++ lib/uri/pgsql.rb (working copy) @@ -3,11 +3,9 @@ # License:: Gnu General Public License. # Revision:: $Id$ -UriEx.import! - module URI - class PgSQL < Generic + class PgSQL < GenericEx SCHEME = 'pgsql'.freeze DEFAULT_HOST = 'localhost'.freeze Index: lib/uri/svn.rb --- lib/uri/svn.rb (revision 450) +++ lib/uri/svn.rb (working copy) @@ -5,11 +5,9 @@ # $LastChangedBy$ # $Id$ -UriEx.import! - module URI - class Svn < Generic + class Svn < GenericEx COMPONENT = [ :scheme, Index: lib/uri/generic_ex.rb --- lib/uri/generic_ex.rb (revision 447) +++ lib/uri/generic_ex.rb (working copy) @@ -3,16 +3,7 @@ # License:: Gnu General Public License. # Revision:: $Id$ -require 'uri' - -module UriEx - - # Setup exceptions about the camel_case of URI and its classes. - Inflector.inflections do |i| - i.fixed_cases 'URI', 'DRuby', 'FTP', 'HTTP', 'MySQL', 'PgSQL' - end - -end # module UriEx +require 'uri' unless defined? URI::VERSION module URI @@ -97,9 +88,10 @@ end # class Generic + class GenericEx < Generic test_section __FILE__ do - class GenericTest < Test::Unit::TestCase + class Test < Test::Unit::TestCase def setup assert_nothing_raised { @foo = URI.parse('http://foo/qux/bar') } @@ -120,7 +112,7 @@ def test_lazy_loading_one assert_nothing_raised do assert_equal 'URI::DRuby', URI::DRuby.name - assert_equal URI::Generic, URI::DRuby.superclass + assert_equal URI::GenericEx, URI::DRuby.superclass end end @@ -128,22 +120,24 @@ assert_equal 'File', ::File.name assert_nothing_raised do assert_equal 'URI::File', 'URI::File'.constantize.name - assert_equal URI::Generic, 'URI::File'.constantize.superclass + assert_equal URI::GenericEx, 'URI::File'.constantize.superclass end end def test_lazy_loading_full - PathList[__FILE__.to_path.dirname + '(uri/**/*).rb'].each do |full, path| + PathList[__FILE__.to_path.dirname.parent + '(uri/**/*).rb'].each do |full, path| assert_nothing_raised do class_name = path.to_s.camelize.gsub(/Ex$/, '') class_object = class_name.constantize assert_equal class_name, class_object.name - assert_equal URI::Generic, class_object.superclass + assert_match(/URI::Generic(Ex)?/, class_object.superclass.name) end end end - end # class GenericTest + end # class Test end + end # class GenericEx + end # module URI Index: lib/uri/http_ex.rb --- lib/uri/http_ex.rb (revision 450) +++ lib/uri/http_ex.rb (working copy) @@ -5,12 +5,12 @@ # $LastChangedBy$ # $Id$ -UriEx.import! require 'uri/http' require 'net/http' module URI + GenericEx.import! class HTTP def checkout Index: lib/ruby_ex.rb --- lib/ruby_ex.rb (revision 450) +++ lib/ruby_ex.rb (working copy) @@ -51,9 +51,14 @@ $LOADED_FEATURES << 'ruby_ex.rb' Dependencies.loaded << 'ruby_ex' + # Setup exceptions about the camel_case of URI and its classes. + Inflector.inflections do |i| + i.fixed_cases 'URI', 'DRuby', 'MySQL', 'PgSQL' + i.fixed_case 'FTP', 'ftp_ex' + i.fixed_case 'HTTP', 'http_ex' + end + dir.load_path! (dir + 'module').load_path! - Algorithms.import! - end # module RubyEx Index: lib/module/instance_method_visibility.rb --- lib/module/instance_method_visibility.rb (revision 450) +++ lib/module/instance_method_visibility.rb (working copy) @@ -3,6 +3,7 @@ # License:: Gnu General Public License. # Revision:: $Id$ +class Module module InstanceMethodVisibility @@ -21,8 +22,8 @@ end # module InstanceMethodVisibility -class Module include InstanceMethodVisibility + end # class Module module InstanceMethodVisibility Index: lib/auto_object.rb --- lib/auto_object.rb (revision 450) +++ lib/auto_object.rb (working copy) @@ -3,9 +3,6 @@ # License:: Gnu General Public License. # Revision:: $Id$ -require 'blank_slate' -require 'verbose_object' - class AutoObject def self.blank_slate_ignore ( name ) @@ -59,7 +56,6 @@ test_section __FILE__ do - require 'mocks' class TestAutoObject < ::Test::Unit::TestCase include Mocks::Assertions Index: lib/regex_list.rb --- lib/regex_list.rb (revision 450) +++ lib/regex_list.rb (working copy) @@ -125,10 +125,7 @@ end # class RegexList -PathList.import! -class PathList - include RegexList::PathListExtension -end +PathList.send :include, RegexList::PathListExtension test_section __FILE__ do -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 186 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060218/c12f611e/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 12:57:28 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Sun, 19 Feb 2006 18:57:28 +0100 (MET) Subject: [Uttk-Patches] [core_ex] 454: Remove useless DTime#==. Message-ID: <20060219175728.2B44D2713F@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ruby_ex/trunk/core_ex Index: ChangeLog from Nicolas Desprès Remove useless DTime#==. * lib/d_time.rb: Remove useless '==' since '<=>' already do the job. d_time.rb | 4 ---- 1 files changed, 4 deletions(-) Index: lib/d_time.rb --- lib/d_time.rb (revision 453) +++ lib/d_time.rb (working copy) @@ -28,10 +28,6 @@ [lhs.to_dtime, self] end - def == ( rhs ) - @delta == rhs.to_f - end - def <=> ( rhs ) @delta <=> rhs.to_f end -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060219/36307bfa/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 13:31:24 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Sun, 19 Feb 2006 19:31:24 +0100 (MET) Subject: [Uttk-Patches] 793: Rename F::Warrior to F::Default. Message-ID: <20060219183124.6C4F927307@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/793 Index: ChangeLog from Nicolas Desprès Rename F::Warrior to F::Default. * lib/uttk/filters/Default.rb: Rename to... * lib/uttk/filters/Warrior.rb: ... that. * lib/uttk.rb, * bin/getopts/uttk.rb, * bin/uttk: s/Warrior/Default/g. bin/getopts/uttk.rb | 6 +++--- bin/uttk | 2 +- lib/uttk.rb | 4 ++-- lib/uttk/filters/Default.rb | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) Index: lib/uttk/filters/Default.rb --- lib/uttk/filters/Default.rb (revision 791) +++ lib/uttk/filters/Default.rb (working copy) @@ -8,7 +8,7 @@ module Filters - class Warrior < Id + class Default < Id def self.template ( str ) a = [ @@ -21,7 +21,7 @@ composition template('log') - end # class Warrior + end # class Default end # module Filters Index: lib/uttk.rb --- lib/uttk.rb (revision 792) +++ lib/uttk.rb (working copy) @@ -153,7 +153,7 @@ uttk_module def self.[] ( *yaml_desc ) - create_backend(YAML.load("--- [#{yaml_desc.join(', ')}]")).flatten + create_backend(YAML.load("--- {#{yaml_desc.join(', ')}}")).flatten end def Symbol.yaml_load ( val ) @@ -277,7 +277,7 @@ DEFAULT_OPTIONS = { :input => nil, :observers => [], - :backend => 'Warrior', + :backend => 'Default', :loader => Loaders::Yaml, :wclass => Weights::Default, :attributes => {}, #FIXME: freeze Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 792) +++ bin/getopts/uttk.rb (working copy) @@ -152,14 +152,14 @@ | Yaml # Use the Yaml output format on the stdout | Yaml: foo # Use Yaml on file foo | Xml: [foo, bar] # Use Xml on files foo and bar - | [Yaml, Xml: log.xml] # Use Yaml on stdout and Xml on log.xml + | {Yaml, Xml: log.xml} # Use Yaml on stdout and Xml on log.xml | JustStatus: Yaml # Use the filter JustStatus and display | # it's output with Yaml | JustStatus: [Yaml, Xml: log.xml] | # Use Yaml on stdout and Xml on log.xml but trough the | # filter JustStatus. | - | [Yaml: log.yml, JustStatus: Yaml] # This one is usefull + | {Yaml: log.yml, JustStatus: Yaml} # This one is usefull | | You can make your own compositions and save them, see the | documentation of the Filters module. @@ -199,7 +199,7 @@ optparser.separator 'Logger options:' optparser.on('-l', '--log STRING', 'Set the log base name for log files') do |log| - opts[:observers] << Filters::Warrior.template(log) + opts[:observers] << Filters::Default.template(log) end optparser.on('-d', Index: bin/uttk --- bin/uttk (revision 792) +++ bin/uttk (working copy) @@ -145,7 +145,7 @@ unless status.pass? - if not opts[:dump_status] # FIXME and filter contains Warrior + if not opts[:dump_status] # FIXME and filter contains Default STDERR.puts " | |--- | -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060219/71ab4d10/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 15:35:37 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Sun, 19 Feb 2006 21:35:37 +0100 (MET) Subject: [Uttk-Patches] 796: Clean the library front file. Message-ID: <20060219203537.ED1EE27415@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/796 Index: ChangeLog from Nicolas Desprès Clean the library front file. * lib/uttk/filters.rb: New. Specific feature of the Filters module. * lib/uttk/weights.rb: New. Specific feature of the Weights module. * lib/uttk.rb: Add 'define_module' which check whether there is a file named like the module and require it. * bin/getopts/uttk.rb: Update the documentation according to the change of the backend description format. bin/getopts/uttk.rb | 8 +-- lib/uttk.rb | 120 ++++----------------------------------------------- lib/uttk/filters.rb | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++ lib/uttk/weights.rb | 17 +++++++ 4 files changed, 152 insertions(+), 114 deletions(-) Index: lib/uttk/filters.rb --- lib/uttk/filters.rb (revision 0) +++ lib/uttk/filters.rb (revision 0) @@ -0,0 +1,121 @@ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL +# $Id: Ruby.rb 720 2005-09-26 04:34:48Z ertai $ + + +module Uttk + + module Filters + + def self.[] ( *yaml_desc ) + create_backend(YAML.load("--- {#{yaml_desc.join(', ')}}")).flatten + end + + def Symbol.yaml_load ( val ) + val.to_sym + end + + def Integer.yaml_load ( val ) + val.to_i + end + + class FilterOption + attr_reader :option + def initialize ( anObject ) + @option = anObject + end + def to_hash + { self.class.name.demodulize.underscore.to_sym => option } + end + def self.yaml_load ( anObject ) + new(superclass.name.demodulize.sub(/Option$/, '').constantize.yaml_load(anObject)) + end + end + + class SymbolOption < FilterOption + end + + class RegexpOption < FilterOption + end # class RegexpOption + + class IntegerOption < FilterOption + end # class IntegerOption + + class BooleanOption < FilterOption + def self.yaml_load ( anObject ) + new(anObject) + end + end # class BooleanOption + + class Action < SymbolOption + have YamlExtension + end + + class Keep < RegexpOption + have YamlExtension + end # class Keep + + class Skip < RegexpOption + have YamlExtension + end # class Skip + + class Width < IntegerOption + have YamlExtension + end # class Width + + class Prune < BooleanOption + have YamlExtension + end # class Prune + + class << self + def create_backend ( desc ) + case desc + when Array + desc.map { |elt| create_backend(elt) } + when String + [create_backend_leaf(desc, STDOUT)] + when Hash + desc.map do |k, v| + create_backend_leaf(k, *create_backend(v).flatten) + end + when FilterOption + [desc] + when nil + [STDOUT] + else + raise OptionParser::InvalidArgument, + "need a string or a hash not #{desc.inspect}" + end + end + private :create_backend + + def create_backend_leaf ( aConst, *args ) + unless aConst.is_a? String + raise OptionParser::InvalidArgument, + "need a string not #{aConst.inspect}" + end + if aConst =~ ConstRegexp::RB_CONST + if Dumpers.const_defined? aConst + return Dumpers.const_get(aConst).new(*args) + else + if Filters.const_defined? aConst + mod = Filters + elsif PathFilters.const_defined? aConst + mod = PathFilters + else + return aConst.to_path.open('w') + end + options, observers = args.partition { |arg| arg.is_a? FilterOption } + options = options.inject({}) { |accu, opt| accu.merge! opt.to_hash } + return mod.const_get(aConst).new(observers, options) + end + end + aConst.to_path.open('w') + end + private :create_backend_leaf + end + + end # module Filters + +end # module Uttk Property changes on: lib/uttk/filters.rb ___________________________________________________________________ Name: svn:keywords + Id Index: lib/uttk/weights.rb --- lib/uttk/weights.rb (revision 0) +++ lib/uttk/weights.rb (revision 0) @@ -0,0 +1,17 @@ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL +# $Id: Ruby.rb 720 2005-09-26 04:34:48Z ertai $ + + +module Uttk + + module Weights + + Default = WFloat + + end # module Weights + +end # module Uttk + + Property changes on: lib/uttk/weights.rb ___________________________________________________________________ Name: svn:keywords + Id Index: lib/uttk.rb --- lib/uttk.rb (revision 795) +++ lib/uttk.rb (working copy) @@ -111,6 +111,16 @@ end setup_autoload + def self.define_module + module_dirs.each do |module_dir| + def_file = Pathname.new("#{module_dir}.rb") + if def_file.readable? + require def_file.to_s + end + end + end + define_module + def self.each_module_name ( &block ) Pathname.glob('{' + module_dirs.join(',') + '}/**/*.rb') do |path| block[path.basename.ext.to_s.to_sym] @@ -132,7 +142,6 @@ module Weights uttk_module - Default = WFloat end require 'uttk/status' @@ -151,115 +160,6 @@ module Filters uttk_module - - def self.[] ( *yaml_desc ) - create_backend(YAML.load("--- {#{yaml_desc.join(', ')}}")).flatten - end - - def Symbol.yaml_load ( val ) - val.to_sym - end - - def Integer.yaml_load ( val ) - val.to_i - end - - class FilterOption - attr_reader :option - def initialize ( anObject ) - @option = anObject - end - def to_hash - { self.class.name.demodulize.underscore.to_sym => option } - end - def self.yaml_load ( anObject ) - new(superclass.name.demodulize.sub(/Option$/, '').constantize.yaml_load(anObject)) - end - end - - class SymbolOption < FilterOption - end - - class RegexpOption < FilterOption - end # class RegexpOption - - class IntegerOption < FilterOption - end # class IntegerOption - - class BooleanOption < FilterOption - def self.yaml_load ( anObject ) - new(anObject) - end - end # class BooleanOption - - class Action < SymbolOption - have YamlExtension - end - - class Keep < RegexpOption - have YamlExtension - end # class Keep - - class Skip < RegexpOption - have YamlExtension - end # class Skip - - class Width < IntegerOption - have YamlExtension - end # class Width - - class Prune < BooleanOption - have YamlExtension - end # class Prune - - class << self - def create_backend ( desc ) - case desc - when Array - desc.map { |elt| create_backend(elt) } - when String - [create_backend_leaf(desc, STDOUT)] - when Hash - desc.map do |k, v| - create_backend_leaf(k, *create_backend(v).flatten) - end - when FilterOption - [desc] - when nil - [STDOUT] - else - raise OptionParser::InvalidArgument, - "need a string or a hash not #{desc.inspect}" - end - end - private :create_backend - - def create_backend_leaf ( aConst, *args ) - unless aConst.is_a? String - raise OptionParser::InvalidArgument, - "need a string not #{aConst.inspect}" - end - if aConst =~ ConstRegexp::RB_CONST - if Dumpers.const_defined? aConst - return Dumpers.const_get(aConst).new(*args) - else - if Filters.const_defined? aConst - mod = Filters - elsif PathFilters.const_defined? aConst - mod = PathFilters - else - return aConst.to_path.open('w') - end - options, observers = args.partition { |arg| arg.is_a? FilterOption } - options = options.inject({}) { |accu, opt| accu.merge! opt.to_hash } - return mod.const_get(aConst).new(observers, options) - end - end - aConst.to_path.open('w') - end - private :create_backend_leaf - end - end module Strategies Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 795) +++ bin/getopts/uttk.rb (working copy) @@ -151,15 +151,15 @@ | Examples: | Yaml # Use the Yaml output format on the stdout | Yaml: foo # Use Yaml on file foo - | Xml: [foo, bar] # Use Xml on files foo and bar - | {Yaml, Xml: log.xml} # Use Yaml on stdout and Xml on log.xml + | Xml: foo, Xml: bar # Use Xml on files foo and bar + | Yaml, Xml: log.xml # Use Yaml on stdout and Xml on log.xml | JustStatus: Yaml # Use the filter JustStatus and display | # it's output with Yaml - | JustStatus: [Yaml, Xml: log.xml] + | JustStatus: {Yaml, Xml: log.xml} | # Use Yaml on stdout and Xml on log.xml but trough the | # filter JustStatus. | - | {Yaml: log.yml, JustStatus: Yaml} # This one is usefull + | Yaml: log.yml, JustStatus: Yaml # This one is usefull | | You can make your own compositions and save them, see the | documentation of the Filters module. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060219/313822ea/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 16:09:43 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Sun, 19 Feb 2006 22:09:43 +0100 (MET) Subject: [Uttk-Patches] 797: Update old header. Message-ID: <20060219210943.B44C527597@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/797 Index: ChangeLog from Nicolas Desprès Update old header. * test/unit/dumpers/xml_test.rb, * test/unit/dumpers/yaml_test.rb, * test/unit/logger/verbosity_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/fetchers/fetchers_test.rb, * lib/uttk/logger/backend.rb, * lib/uttk/path_filters/PathFilter.rb, * lib/uttk/generators/dumper_generator.rb, * lib/uttk/generators/generator.rb, * lib/uttk/generators/path_filter_generator.rb, * lib/uttk/generators/strategy_generator.rb, * lib/uttk/generators/filter_generator.rb, * lib/uttk/generators/templates/generator.rb, * lib/uttk/generators/generator_generator.rb, * lib/uttk/generators/loader_generator.rb: Update old header. lib/uttk/generators/dumper_generator.rb | 4 ++-- lib/uttk/generators/filter_generator.rb | 4 ++-- lib/uttk/generators/generator.rb | 4 ++-- lib/uttk/generators/generator_generator.rb | 4 ++-- lib/uttk/generators/loader_generator.rb | 4 ++-- lib/uttk/generators/path_filter_generator.rb | 4 ++-- lib/uttk/generators/strategy_generator.rb | 4 ++-- lib/uttk/generators/templates/generator.rb | 4 ++-- lib/uttk/logger/backend.rb | 4 ++-- lib/uttk/path_filters/PathFilter.rb | 2 +- test/unit/dumpers/xml_test.rb | 2 +- test/unit/dumpers/yaml_test.rb | 2 +- test/unit/fetchers/fetchers_test.rb | 8 +++----- test/unit/logger/section_node_test.rb | 8 +++----- test/unit/logger/severity_test.rb | 8 +++----- test/unit/logger/to_uttk_log_test.rb | 4 ++-- test/unit/logger/verbosity_test.rb | 8 +++----- 17 files changed, 35 insertions(+), 43 deletions(-) Index: test/unit/dumpers/xml_test.rb --- test/unit/dumpers/xml_test.rb (revision 796) +++ test/unit/dumpers/xml_test.rb (working copy) @@ -1,6 +1,6 @@ # Author:: Nicolas Pouillard . # Copyright:: Copyright (c) 2004, 2005 Uttk Team. All rights reserved. -# License:: Ruby license. +# License:: LGPL # Revision:: $Id$ test_section __FILE__ do Index: test/unit/dumpers/yaml_test.rb --- test/unit/dumpers/yaml_test.rb (revision 796) +++ test/unit/dumpers/yaml_test.rb (working copy) @@ -1,6 +1,6 @@ # Author:: Nicolas Pouillard . # Copyright:: Copyright (c) 2004, 2005 Uttk Team. All rights reserved. -# License:: Ruby license. +# License:: LGPL # Revision:: $Id$ test_section __FILE__ do Index: test/unit/logger/verbosity_test.rb --- test/unit/logger/verbosity_test.rb (revision 796) +++ test/unit/logger/verbosity_test.rb (working copy) @@ -1,8 +1,6 @@ -# Author:: Nicolas Despres . -# Copyright:: Copyright (c) 2004 Uttk Team. All rights reserved. -# License:: Ruby license. - -# $LastChangedBy: ertai $ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL # $Id$ Index: test/unit/logger/section_node_test.rb --- test/unit/logger/section_node_test.rb (revision 796) +++ test/unit/logger/section_node_test.rb (working copy) @@ -1,8 +1,6 @@ -# Author:: Nicolas Despres . -# Copyright:: Copyright (c) 2004 Uttk Team. All rights reserved. -# License:: Ruby license. - -# $LastChangedBy: ertai $ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL # $Id$ Index: test/unit/logger/severity_test.rb --- test/unit/logger/severity_test.rb (revision 796) +++ test/unit/logger/severity_test.rb (working copy) @@ -1,8 +1,6 @@ -# Author:: Nicolas Despres . -# Copyright:: Copyright (c) 2004 Uttk Team. All rights reserved. -# License:: Ruby license. - -# $LastChangedBy: ertai $ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL # $Id$ Index: test/unit/logger/to_uttk_log_test.rb --- test/unit/logger/to_uttk_log_test.rb (revision 796) +++ test/unit/logger/to_uttk_log_test.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ test_section __FILE__ do Index: test/unit/fetchers/fetchers_test.rb --- test/unit/fetchers/fetchers_test.rb (revision 796) +++ test/unit/fetchers/fetchers_test.rb (working copy) @@ -1,8 +1,6 @@ -# Author:: Nicolas Despres . -# Copyright:: Copyright (c) 2004 Uttk Team. All rights reserved. -# License:: Ruby license. - -# $LastChangedBy: ertai $ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL # $Id$ Index: lib/uttk/logger/backend.rb --- lib/uttk/logger/backend.rb (revision 796) +++ lib/uttk/logger/backend.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ module Uttk Index: lib/uttk/path_filters/PathFilter.rb --- lib/uttk/path_filters/PathFilter.rb (revision 796) +++ lib/uttk/path_filters/PathFilter.rb (working copy) @@ -1,6 +1,6 @@ # Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ module Uttk Index: lib/uttk/generators/dumper_generator.rb --- lib/uttk/generators/dumper_generator.rb (revision 796) +++ lib/uttk/generators/dumper_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::DumperGenerator < Uttk::Generators::Generator Index: lib/uttk/generators/generator.rb --- lib/uttk/generators/generator.rb (revision 796) +++ lib/uttk/generators/generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ module Uttk Index: lib/uttk/generators/path_filter_generator.rb --- lib/uttk/generators/path_filter_generator.rb (revision 796) +++ lib/uttk/generators/path_filter_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::PathFilterGenerator < Uttk::Generators::Generator Index: lib/uttk/generators/strategy_generator.rb --- lib/uttk/generators/strategy_generator.rb (revision 796) +++ lib/uttk/generators/strategy_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::StrategyGenerator < Uttk::Generators::Generator Index: lib/uttk/generators/filter_generator.rb --- lib/uttk/generators/filter_generator.rb (revision 796) +++ lib/uttk/generators/filter_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::FilterGenerator < Uttk::Generators::Generator Index: lib/uttk/generators/templates/generator.rb --- lib/uttk/generators/templates/generator.rb (revision 796) +++ lib/uttk/generators/templates/generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::<%= class_name %>Generator < Uttk::Generators::Generator Index: lib/uttk/generators/generator_generator.rb --- lib/uttk/generators/generator_generator.rb (revision 796) +++ lib/uttk/generators/generator_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::GeneratorGenerator < Uttk::Generators::Generator Index: lib/uttk/generators/loader_generator.rb --- lib/uttk/generators/loader_generator.rb (revision 796) +++ lib/uttk/generators/loader_generator.rb (working copy) @@ -1,6 +1,6 @@ -# Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. # Author:: Nicolas Pouillard . -# License:: Gnu General Public License. +# License:: LGPL # Revision:: $Id$ class Uttk::Generators::LoaderGenerator < Uttk::Generators::Generator -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060219/dd718c8f/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 18:07:08 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 00:07:08 +0100 (MET) Subject: [Uttk-Patches] 800: Test F::create_backend. Message-ID: <20060219230708.6D8A726E97@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/800 Index: ChangeLog from Nicolas Desprès Test F::create_backend. * test/unit/filters_test.rb: New. Test F::create_backend * lib/uttk/filters.rb: Check whether it is necessary to embrace the backend description inside curly brackets. * bin/getopts/uttk.rb: Update the filter documentation. * test/unit/logger_test.rb: Update forgotten bad header. bin/getopts/uttk.rb | 9 ++- lib/uttk/filters.rb | 9 +++ test/unit/filters_test.rb | 119 ++++++++++++++++++++++++++++++++++++++++++++++ test/unit/logger_test.rb | 8 +-- 4 files changed, 137 insertions(+), 8 deletions(-) Index: test/unit/logger_test.rb --- test/unit/logger_test.rb (revision 799) +++ test/unit/logger_test.rb (working copy) @@ -1,8 +1,6 @@ -# Author:: Nicolas Despres . -# Copyright:: Copyright (c) 2004 Uttk Team. All rights reserved. -# License:: Ruby license. - -# $LastChangedBy: ertai $ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL # $Id$ Index: test/unit/filters_test.rb --- test/unit/filters_test.rb (revision 0) +++ test/unit/filters_test.rb (revision 0) @@ -0,0 +1,119 @@ +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL +# $Id: filters.rb 796 2006-02-19 20:35:35Z polrop $ + + +test_section __FILE__ do + +module Uttk + + # Test the method provided by the Filters module. + class FiltersTest < Test::Unit::TestCase + + def test_backend + # test Yaml + backend = Uttk::Filters['Yaml'] + assert_equal 1, backend.size + assert_dumper backend.first, Uttk::Dumpers::Yaml, STDOUT + # test Yaml: foo + TempPath.new('filters_test') do |tmp| + io = tmp.open('w') + backend = Uttk::Filters["Yaml: #{tmp}"] + assert_equal 1, backend.size + assert_dumper backend.first, Uttk::Dumpers::Yaml, io + end + # test Xml: foo, Yaml: bar + TempPath.new('filters_test') do |tmp1| + io1 = tmp1.open('w') + TempPath.new('filters_test') do |tmp2| + io2 = tmp2.open('w') + backend = Uttk::Filters["Xml: #{tmp1}, Yaml: #{tmp2}"] + assert_dumpers(backend, 2, + [ Uttk::Dumpers::Xml, io1 ], + [ Uttk::Dumpers::Yaml, io2 ]) + end + end + # test [{Xml: foo}, {Xml: bar}] + TempPath.new('filters_test') do |tmp1| + io1 = tmp1.open('w') + TempPath.new('filters_test') do |tmp2| + io2 = tmp2.open('w') + backend = Uttk::Filters[" [{Xml: #{tmp1}}, {Xml: #{tmp2}}]"] + assert_equal 2, backend.size + assert_dumper backend.first, Uttk::Dumpers::Xml, io1 + assert_dumper backend.last, Uttk::Dumpers::Xml, io2 + end + end + # test Xml: [ foo, bar] + TempPath.new('filters_test') do |tmp1| + io1 = tmp1.open('w') + TempPath.new('filters_test') do |tmp2| + io2 = tmp2.open('w') + backend = Uttk::Filters["Xml: [#{tmp1}, #{tmp2}]"] + assert_equal 1, backend.size + assert_dumper backend.first, Uttk::Dumpers::Xml, io1, io2 + end + end + # test Basic, Xml: log.xml + TempPath.new('filters_test') do |tmp| + io = tmp.open('w') + backend = Uttk::Filters["Basic, Xml: #{tmp}"] + assert_dumpers(backend, 2, + [ Uttk::Dumpers::Basic, STDOUT ], + [ Uttk::Dumpers::Xml, io ]) + end + # test JustStatus: Basic + backend = Uttk::Filters["JustStatus: Basic"] + assert_equal 1, backend.size + observers = assert_filter backend.first, Uttk::Filters::JustStatus, 1 + assert_dumper observers.first, Uttk::Dumpers::Basic, STDOUT + # test JustStatus: {Basic, Xml: log.xml} + TempPath.new('filters_test') do |tmp| + io = tmp.open('w') + backend = Uttk::Filters["JustStatus: {Basic, Xml: #{tmp}}"] + assert_equal 1, backend.size + observers = assert_filter backend.first, Uttk::Filters::JustStatus, 2 + assert_dumpers(observers, 2, + [ Uttk::Dumpers::Yaml, STDOUT ], + [ Uttk::Dumpers::Xml, io ]) + end + end + + protected + + def assert_dumper(dumper, dumper_class, *outputs) + assert_kind_of dumper_class, dumper + dumper.each_output do |output| + assert_equal output.inspect, outputs.shift.inspect + end + end + + def assert_dumpers(dumpers, nb_dumpers, *descs) + assert_equal nb_dumpers, dumpers.size + dumpers.each { |dumper| check_dumper_desc(dumper, descs) } + end + + def check_dumper_desc(dumper, descs) + descs.each do |desc| + if desc.first == dumper.class + assert_dumper(dumper, *desc) + return true + end + end + return false + end + + def assert_filter(filter, filter_class, nb_observers) + assert_kind_of filter_class, filter + observers = [] + filter.instance_eval { observers = @observer_peers } + assert_equal nb_observers, observers.size + observers + end + + end # class Filters + +end # module Uttk + +end # test_section __FILE__ Property changes on: test/unit/filters_test.rb ___________________________________________________________________ Name: svn:keywords + Id Index: lib/uttk/filters.rb --- lib/uttk/filters.rb (revision 799) +++ lib/uttk/filters.rb (working copy) @@ -9,7 +9,14 @@ module Filters def self.[] ( *yaml_desc ) - create_backend(YAML.load("--- {#{yaml_desc.join(', ')}}")).flatten + joined_yaml_desc = yaml_desc.join(', ') + joined_yaml_desc.sub!(/^\s+/, '') + if joined_yaml_desc[0,1] != '{' and joined_yaml_desc[0,1] != '[' + full_doc = "--- {#{joined_yaml_desc}}" + else + full_doc = "--- #{joined_yaml_desc}" + end + create_backend(YAML.load(full_doc)).flatten end def Symbol.yaml_load ( val ) Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 799) +++ bin/getopts/uttk.rb (working copy) @@ -151,10 +151,11 @@ | Examples: | Yaml # Use the Yaml output format on the stdout | Yaml: foo # Use Yaml on file foo - | Xml: foo, Xml: bar # Use Xml on files foo and bar + | Xml: foo, Yaml: bar # Use Xml on file foo and Yaml on file bar + | Xml: [ foo, bar] # Use Xml on files foo and bar | Yaml, Xml: log.xml # Use Yaml on stdout and Xml on log.xml | JustStatus: Yaml # Use the filter JustStatus and display - | # it's output with Yaml + | # its output with Yaml | JustStatus: {Yaml, Xml: log.xml} | # Use Yaml on stdout and Xml on log.xml but trough the | # filter JustStatus. @@ -163,6 +164,10 @@ | | You can make your own compositions and save them, see the | documentation of the Filters module. + | + | Warning: + | Xml: foo, Xml: bar # Will create only one Xml dumper since + | # this is a hash with twice the same key. |}.head_cut! exit end -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/632057fa/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 18:17:59 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 00:17:59 +0100 (MET) Subject: [Uttk-Patches] 801: Remove temporarily the distribute mode. Message-ID: <20060219231759.C2E9727105@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/801 Index: ChangeLog from Nicolas Desprès Remove temporarily the distribute mode. * test/dist-suite.yml, * test/dist, * test/dist/dist-dispatch.yml, * test/dist/local-fetch.yml, * test/dist/tester.yml, * test/dist/cat, * test/dist/cat/file.in, * test/dist/cat/file.out, * test/dist/dist-nested-pass.yml, * test/dist/dist-pass.yml, * test/dist/dist-abort.yml, * test/dist/dist-cat.yml, * test/dist/dist-error.yml, * test/dist/dist-suite.yml, * test/dist/dist-delegate.yml, * test/dist/dist-ribute.yml, * test/dist/dist-fail.yml, * lib/uttk/services, * lib/uttk/services/MonitorServer.rb, * lib/uttk/services/FetcherClient.rb, * lib/uttk/services/TesterSlave.rb, * lib/uttk/services/TesterMaster.rb, * lib/uttk/services/TesterClient.rb, * lib/uttk/services/DRbService, * lib/uttk/services/DRbService/sub_testable.rb, * lib/uttk/services/MonitorClient.rb, * lib/uttk/services/FetcherServer.rb, * lib/uttk/services/DRbService.rb, * lib/uttk/daemons, * lib/uttk/daemons/daemon, * lib/uttk/daemons/daemon/logger.rb, * lib/uttk/daemons/Daemon.rb, * lib/uttk/daemons/Slave.rb, * lib/uttk/daemons/Master.rb, * lib/uttk/testers, * lib/uttk/testers/tester, * lib/uttk/testers/tester/remote_status.rb, * lib/uttk/testers/tester/notifier.rb, * lib/uttk/testers/tester/running_task.rb, * lib/uttk/testers/tester/config.rb, * lib/uttk/testers/tester/query_node.rb, * lib/uttk/testers/tester/score.rb, * lib/uttk/testers/Tester.rb, * lib/uttk/testers/Slave.rb, * lib/uttk/testers/Master.rb, * lib/uttk/fetchers, * lib/uttk/fetchers/Client.rb, * lib/uttk/fetchers/server, * lib/uttk/fetchers/server/sender.rb, * lib/uttk/fetchers/Server.rb, * lib/uttk/fetchers/client, * lib/uttk/fetchers/client/receiver.rb, * lib/uttk/monitors, * lib/uttk/monitors/Client.rb, * lib/uttk/monitors/Server.rb, * lib/uttk/monitors/Monitor.rb, * lib/uttkd.rb, * bin/uttkm, * bin/getopts/uttkm.rb, * bin/getopts/uttkd.rb, * bin/uttkd: Remove. * test/uttk-check.yml: Update a FIXME. uttk-check.yml | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: test/uttk-check.yml --- test/uttk-check.yml (revision 800) +++ test/uttk-check.yml (working copy) @@ -1,7 +1,7 @@ --- Run all test suites: !S::Iterate - over: !pathlist <>/({unit,functional,ruby,pkg})-suite.yml # FIXME dist,pool + over: !pathlist <>/({unit,functional,ruby,pkg})-suite.yml # FIXME pool iter: [it_file, it_name] test: Run the <> suite: !S::Import -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/29c32e7f/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 19:05:14 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 01:05:14 +0100 (MET) Subject: [Uttk-Patches] 802: Minor fixes for the presentation. Message-ID: <20060220000514.73F6D26A31@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/802 Index: ChangeLog from Nicolas Desprès Minor fixes for the presentation. * test/examples/basic.yml, * test/examples/basic.rb: New. The most basic example. * doc/presentation/presentation.textile: Minor fixes. doc/presentation/presentation.textile | 134 ++++++++++++++++++++++++---------- test/examples/basic.rb | 12 +++ test/examples/basic.yml | 9 ++ 3 files changed, 116 insertions(+), 39 deletions(-) Index: test/examples/basic.yml --- test/examples/basic.yml (revision 0) +++ test/examples/basic.yml (revision 0) @@ -0,0 +1,9 @@ +# The most basic example. +--- +Test whether bc works fine: !S::Cmd + command: bc + input: "42*42\n" + output: | + 1764 + error: "" + exit: 0 Index: test/examples/basic.rb --- test/examples/basic.rb (revision 0) +++ test/examples/basic.rb (revision 0) @@ -0,0 +1,12 @@ +# The most basic example. +S::Cmd.new("Test whether bc works fine") do + command "bc" + input < svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/803 Index: ChangeLog from Nicolas Desprès Update from review r802. * test/examples/basic.rb: Synchornize with the textile document. * doc/presentation/presentation.textile: Update from patch review r802. doc/presentation/presentation.textile | 2 +- test/examples/basic.rb | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) Index: test/examples/basic.rb --- test/examples/basic.rb (revision 802) +++ test/examples/basic.rb (working copy) @@ -1,9 +1,7 @@ # The most basic example. S::Cmd.new("Test whether bc works fine") do command "bc" - input < svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/804 Index: ChangeLog from Nicolas Desprès Update the SPEC description. * SPEC.yml: Update the description. SPEC.yml | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: SPEC.yml --- SPEC.yml (revision 803) +++ SPEC.yml (working copy) @@ -12,8 +12,8 @@ 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 XML as input - and output languages to describe both tests and results. + since Uttk provides cluster features. Uttk understands YAML and Ruby as + input languages and YAML, XML and HTML as output languages. homepage: http://rubyforge.org/projects/uttk root_test_suite: test/uttk-distcheck.yml -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/d8cdce2f/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 20:53:38 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 02:53:38 +0100 (MET) Subject: [Uttk-Patches] 806: Remove remaining distributed mode features. Message-ID: <20060220015338.444E0269AF@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/806 Index: ChangeLog from Nicolas Desprès Remove remaining distributed mode features. * lib/uttk/strategies/Fetcher.rb: Remove. * lib/uttk/strategies/DistDelegate.rb: Remove. * lib/uttk/strategies/Tester.rb: Remove. * lib/uttk/strategies/Distribute.rb: Remove. * lib/uttk/strategies/DistStrategy.rb: Remove. * lib/uttk/strategies/Fetch.rb: Remove. * lib/uttk/strategies/DistDuplicate.rb: Remove. * lib/uttk.rb: Remove :tester_uris from the SymTbl. * bin/getopts/uttk.rb: Remove the tester_uris option. bin/getopts/uttk.rb | 9 --------- lib/uttk.rb | 2 -- 2 files changed, 11 deletions(-) Index: lib/uttk.rb --- lib/uttk.rb (revision 805) +++ lib/uttk.rb (working copy) @@ -185,7 +185,6 @@ :log_severity => Logger::Severity::INFO, :log_verbosity => 0, :log_section => [], #FIXME: freeze - :tester_uris => [], #FIXME: freeze :benchmark => false, :profile => false, :force_fetch => false, @@ -213,7 +212,6 @@ symtbl[:symtbl_class] = symtbl.class symtbl[:pwd] = Pathname.pwd.expand_path symtbl[:loader] = options[:loader].new - symtbl[:tester_uris] = options[:tester_uris] symtbl[:force_fetch] = options[:force_fetch] symtbl[:log_factory] = log_factory symtbl[:log] = log Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 805) +++ bin/getopts/uttk.rb (working copy) @@ -189,15 +189,6 @@ end end - ### Tester options - - optparser.separator '' - optparser.separator 'Server options:' - - optparser.on('-t', '--tester URI', 'Remote tester uri') do |uri| - opts[:tester_uris] << URI.parse(uri) - end - ### Logger options optparser.separator '' -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/3710342c/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 20:01:09 2006 From: nicolas.despres at gmail.com (=?ISO-8859-1?Q?Nicolas_Despr=E8s?=) Date: Mon, 20 Feb 2006 02:01:09 +0100 Subject: [Uttk-Patches] 802: Minor fixes for the presentation. In-Reply-To: References: <20060220000514.73F6D26A31@pm-mx6.mx.noos.fr> Message-ID: <840b875c0602191701h52dc1df5od678de4453c4f7c@mail.gmail.com> On 2/20/06, Nicolas Pouillard wrote: > On 2/20/06, Nicolas Despr?s wrote: > > svn://svn.feydakins.org/ttk/trunk > > > > You can also view this changeset here: > > > > http://dev.uttk.org/repository/changesets/802 > > > > Index: ChangeLog > > from Nicolas Despr?s > > > > Minor fixes for the presentation. > > > > * test/examples/basic.yml, > > * test/examples/basic.rb: New. The most basic example. > > * doc/presentation/presentation.textile: Minor fixes. > > > > doc/presentation/presentation.textile | 134 ++++++++++++++++++++++++---------- > > test/examples/basic.rb | 12 +++ > > test/examples/basic.yml | 9 ++ > > 3 files changed, 116 insertions(+), 39 deletions(-) > > > > [...] > > > Index: test/examples/basic.rb > > --- test/examples/basic.rb (revision 0) > > +++ test/examples/basic.rb (revision 0) > > @@ -0,0 +1,12 @@ > > +# The most basic example. > > +S::Cmd.new("Test whether bc works fine") do > > + command "bc" > > + input < > +42*42 > > +EOF > > + output < > +1764 > > +EOF > > Why these heredocs? > To show the equivalence with Yaml pipe operator. > [...] > > > -* Everyone do not speak the same language we understand it ????? > > +* Everyone do not speak the same language: do we understand it ????? > > > > The ????? was to say that I do not know if one want it. > The sentence is not a question but an assertion perhaps an "and" > is missing. > > > +* Everyone do not speak the same language and we understand it > Ok -- Nicolas Despr?s _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 20:56:01 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 02:56:01 +0100 (MET) Subject: [Uttk-Patches] 807: Remove remaining distributed mode code. Message-ID: <20060220015601.10C8F26937@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/807 Index: ChangeLog from Nicolas Desprès Remove remaining distributed mode code. * lib/uttk/strategies/Strategy.rb: Remove distributed mode code. Strategy.rb | 6 ------ 1 files changed, 6 deletions(-) Index: lib/uttk/strategies/Strategy.rb --- lib/uttk/strategies/Strategy.rb (revision 806) +++ lib/uttk/strategies/Strategy.rb (working copy) @@ -426,12 +426,6 @@ end @log.new_node(self.name, :type => self.class) end - unless @symtbl[:tester].nil? - @log[:tester] = "#{@symtbl[:tester].config[:tester_name]} " + - "[#{@symtbl[:tester].config[:tester_type]}] " + - "{#{@symtbl[:tester].uri.host}:" + - "#{@symtbl[:tester].uri.port}}" - end @log << res end protected :prologue -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/1d0f6ac7/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Sun Feb 19 21:15:01 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Mon, 20 Feb 2006 03:15:01 +0100 (MET) Subject: [Uttk-Patches] 808: Remove remaining fetcher code. Message-ID: <20060220021501.1D65026853@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/808 Index: ChangeLog from Nicolas Desprès Remove remaining fetcher code. * test/unit/fetchers: Remove. * test/unit/fetchers/fetchers_test.rb: Remove. * test/unit/fetchers/fetchers_test.rb: Remove. * lib/uttk.rb: Remove the :force_fetch key from the SymTbl. * bin/getopts/uttk.rb: Remove the --force-fetch option. bin/getopts/uttk.rb | 5 ----- lib/uttk.rb | 2 -- 2 files changed, 7 deletions(-) Index: lib/uttk.rb --- lib/uttk.rb (revision 807) +++ lib/uttk.rb (working copy) @@ -187,7 +187,6 @@ :log_section => [], #FIXME: freeze :benchmark => false, :profile => false, - :force_fetch => false, :dump_status => false, :cache_mode => false, :cache_proc => DumpableProc.new('|test, status| @@ -212,7 +211,6 @@ symtbl[:symtbl_class] = symtbl.class symtbl[:pwd] = Pathname.pwd.expand_path symtbl[:loader] = options[:loader].new - symtbl[:force_fetch] = options[:force_fetch] symtbl[:log_factory] = log_factory symtbl[:log] = log symtbl[:cache] = {} Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 807) +++ bin/getopts/uttk.rb (working copy) @@ -293,11 +293,6 @@ opts[:profile] = true end - optparser.on('--force-fetch', - 'Force to fetch file even on the same host') do - opts[:force_fetch] = true - end - optparser.on('--dump-status', 'Dump the global status at the end (STDOUT)') do opts[:dump_status] = true -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060220/7db5b413/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 07:41:24 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 13:41:24 +0100 (MET) Subject: [Uttk-Patches] 813: Add Subversion Id keyword. Message-ID: <20060221124124.9B1D126A24@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/813 Index: ChangeLog from Nicolas Desprès Add Subversion Id keyword. * script/destroy: . * script/generate: . 0 files changed Property changes on: script/destroy ___________________________________________________________________ Name: svn:keywords + Id Property changes on: script/generate ___________________________________________________________________ Name: svn:keywords + Id -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/4905756a/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 07:46:01 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 13:46:01 +0100 (MET) Subject: [Uttk-Patches] 814: Update the command tutorial. Message-ID: <20060221124601.8DA7726CB3@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/814 Index: ChangeLog from Nicolas Desprès Update the command tutorial. * test/fixtures/demo, * test/fixtures/demo/command-tutorial, * test/fixtures/demo/command-tutorial/steps, * test/fixtures/demo/command-tutorial/steps/1, * test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/1/check.yml, * test/fixtures/demo/command-tutorial/steps/2, * test/fixtures/demo/command-tutorial/steps/2/bad_check.yml, * test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/2/check.yml, * test/fixtures/demo/command-tutorial/steps/3.1, * test/fixtures/demo/command-tutorial/steps/3.1/check.yml, * test/fixtures/demo/command-tutorial/steps/3, * test/fixtures/demo/command-tutorial/steps/3/check.yml, * test/fixtures/demo/command-tutorial/steps/4.1, * test/fixtures/demo/command-tutorial/steps/4.1/check.yml, * test/fixtures/demo/command-tutorial/steps/4.1/bird.txt, * test/fixtures/demo/command-tutorial/steps/4, * test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/4/check.yml, * test/fixtures/demo/command-tutorial/steps/5.1, * test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/5.1/check.yml, * test/fixtures/demo/command-tutorial/steps/5.1/bird.txt, * test/fixtures/demo/command-tutorial/steps/5, * test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/5/check.yml, * test/fixtures/demo/command-tutorial/steps/5/bird.txt, * test/fixtures/demo/command-tutorial/steps/6.1, * test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/6.1/check.yml, * test/fixtures/demo/command-tutorial/steps/6.1/bird.txt, * test/fixtures/demo/command-tutorial/steps/6, * test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/6/check.yml, * test/fixtures/demo/command-tutorial/steps/6/bird.txt, * test/fixtures/demo/command-tutorial/steps/7, * test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb, * test/fixtures/demo/command-tutorial/steps/7/check.yml, * test/fixtures/demo/command-tutorial/steps/7/bird.txt: New. Examples used by the command-tutorial. * misc/textile_compiler: New. Compile .rtextile files and provides them a 'comment' command and 'command' command. * doc/demo: New. * doc/demo/command-tutorial.rtextile: New. The command tutorial with some ERB features provided by the textile_compiler. doc/demo/command-tutorial.rtextile | 450 ++++++++++++ misc/textile_compiler | 194 +++++ test/fixtures/demo/command-tutorial/steps/1/check.yml | 5 test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb | 10 test/fixtures/demo/command-tutorial/steps/2/bad_check.yml | 7 test/fixtures/demo/command-tutorial/steps/2/check.yml | 7 test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb | 10 test/fixtures/demo/command-tutorial/steps/3.1/check.yml | 13 test/fixtures/demo/command-tutorial/steps/3/check.yml | 17 test/fixtures/demo/command-tutorial/steps/4.1/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/4.1/check.yml | 14 test/fixtures/demo/command-tutorial/steps/4/check.yml | 14 test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb | 12 test/fixtures/demo/command-tutorial/steps/5.1/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/5.1/check.yml | 19 test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb | 17 test/fixtures/demo/command-tutorial/steps/5/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/5/check.yml | 18 test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb | 16 test/fixtures/demo/command-tutorial/steps/6.1/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/6.1/check.yml | 24 test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb | 17 test/fixtures/demo/command-tutorial/steps/6/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/6/check.yml | 23 test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb | 17 test/fixtures/demo/command-tutorial/steps/7/bird.txt | 1 test/fixtures/demo/command-tutorial/steps/7/check.yml | 24 test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb | 17 28 files changed, 951 insertions(+) Index: test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb (revision 0) @@ -0,0 +1,10 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length != 1) + exit 1 + end + puts ARGV[0] + "s" +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/1/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/1/check.yml --- test/fixtures/demo/command-tutorial/steps/1/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/1/check.yml (revision 0) @@ -0,0 +1,5 @@ +--- +Test the plural program: !S::Cmd + command: ./pluralizer.rb + args: + - "bird" Index: test/fixtures/demo/command-tutorial/steps/2/bad_check.yml --- test/fixtures/demo/command-tutorial/steps/2/bad_check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/2/bad_check.yml (revision 0) @@ -0,0 +1,7 @@ +--- +Test the plural program: !S::Cmd + command: ruby plural.rb + args: + - "bird" + output: "wrong value\n" + exit: 0 Index: test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb (revision 0) @@ -0,0 +1,10 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length != 1) + exit 1 + end + puts ARGV[0] + "s" +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/2/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/2/check.yml --- test/fixtures/demo/command-tutorial/steps/2/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/2/check.yml (revision 0) @@ -0,0 +1,7 @@ +--- +Test the plural program: !S::Cmd + command: ./pluralizer.rb + args: + - "bird" + output: "birds\n" + exit: 0 Index: test/fixtures/demo/command-tutorial/steps/3.1/check.yml --- test/fixtures/demo/command-tutorial/steps/3.1/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/3.1/check.yml (revision 0) @@ -0,0 +1,13 @@ +--- +Test the plural program: + strategy: Suite + attributes: !S::Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + args: "bird" + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" Index: test/fixtures/demo/command-tutorial/steps/3/check.yml --- test/fixtures/demo/command-tutorial/steps/3/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/3/check.yml (revision 0) @@ -0,0 +1,17 @@ +--- +Test the plural program: + strategy: Suite + contents: + - Test the bird word: + strategy: Cmd + command: ./pluralizer.rb + args: + - "bird" + output: "birds\n" + exit: 0 + - Test the ant word: + strategy: Cmd + command: ./pluralizer.rb + args: "ant" + output: "ants\n" + exit: 0 Index: test/fixtures/demo/command-tutorial/steps/4.1/check.yml --- test/fixtures/demo/command-tutorial/steps/4.1/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/4.1/check.yml (revision 0) @@ -0,0 +1,14 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" Index: test/fixtures/demo/command-tutorial/steps/4.1/bird.txt --- test/fixtures/demo/command-tutorial/steps/4.1/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/4.1/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb (revision 0) @@ -0,0 +1,12 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + stream = STDIN.gets.chomp + puts stream + "s" + else + puts ARGV[0] + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/4/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/4/check.yml --- test/fixtures/demo/command-tutorial/steps/4/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/4/check.yml (revision 0) @@ -0,0 +1,14 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: "bird" + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" Index: test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb (revision 0) @@ -0,0 +1,17 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + exit 1 + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/5.1/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/5.1/check.yml --- test/fixtures/demo/command-tutorial/steps/5.1/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5.1/check.yml (revision 0) @@ -0,0 +1,19 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" + - Test a bad word: + args: "b1rd" + output: "" + error: "wrong word!\n" + exit: 1 Index: test/fixtures/demo/command-tutorial/steps/5.1/bird.txt --- test/fixtures/demo/command-tutorial/steps/5.1/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5.1/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb (revision 0) @@ -0,0 +1,16 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/5/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/5/check.yml --- test/fixtures/demo/command-tutorial/steps/5/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5/check.yml (revision 0) @@ -0,0 +1,18 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" + - Test a bad word: + args: "b1rd" + output: "" + error: "wrong word!\n" Index: test/fixtures/demo/command-tutorial/steps/5/bird.txt --- test/fixtures/demo/command-tutorial/steps/5/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/5/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb (revision 0) @@ -0,0 +1,17 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + exit 1 + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/6.1/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/6.1/check.yml --- test/fixtures/demo/command-tutorial/steps/6.1/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6.1/check.yml (revision 0) @@ -0,0 +1,24 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" + - Test a bad word: + weight: 2 + args: "b1rd" + output: "" + error: "wrong word!\n" + exit: 1 + - Test the trap word: + weight: -1 + args: "child" + output: "childs\n" Index: test/fixtures/demo/command-tutorial/steps/6.1/bird.txt --- test/fixtures/demo/command-tutorial/steps/6.1/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6.1/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb (revision 0) @@ -0,0 +1,17 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + exit 1 + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/6/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/6/check.yml --- test/fixtures/demo/command-tutorial/steps/6/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6/check.yml (revision 0) @@ -0,0 +1,23 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" + - Test a bad word: + args: "b1rd" + output: "" + error: "wrong word!\n" + exit: 1 + - Test the trap word: + weight: -1 + args: "child" + output: "childs\n" Index: test/fixtures/demo/command-tutorial/steps/6/bird.txt --- test/fixtures/demo/command-tutorial/steps/6/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/6/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb --- test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb (revision 0) +++ test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb (revision 0) @@ -0,0 +1,17 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + exit 1 + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/command-tutorial/steps/7/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/command-tutorial/steps/7/check.yml --- test/fixtures/demo/command-tutorial/steps/7/check.yml (revision 0) +++ test/fixtures/demo/command-tutorial/steps/7/check.yml (revision 0) @@ -0,0 +1,24 @@ +--- +Test the plural program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: !path bird.txt + output: "birds\n" + - Test the ant word: + args: "ant" + output: "ants\n" + - Test a bad word: + weight: <> + args: "b1rd" + output: "" + error: "wrong word!\n" + exit: 1 + - Test the trap word: + weight: -1 + args: "child" + output: "childs\n" Index: test/fixtures/demo/command-tutorial/steps/7/bird.txt --- test/fixtures/demo/command-tutorial/steps/7/bird.txt (revision 0) +++ test/fixtures/demo/command-tutorial/steps/7/bird.txt (revision 0) @@ -0,0 +1 @@ +bird Index: misc/textile_compiler --- misc/textile_compiler (revision 0) +++ misc/textile_compiler (revision 0) @@ -0,0 +1,194 @@ +#! /usr/bin/env ruby +# Author:: Nicolas Desprès . +# Copyright:: Copyright (c) 2005 Uttk Team. All rights reserved. +# License:: LGPL +# $Id: filters.rb 800 2006-02-19 23:07:06Z polrop $ + +require 'erb' +require 'pathname' +require 'optparse' + +module TextileCompiler + + DEFAULT_SEVERITY_LEVEL = :warning + + SEVERITY_LEVELS = { + :fatal => 0, + :error => 1, + :warning => 2, + :info => 3, + :debug => 4 + } + + def self.severity_level=(level) + @@severity_level = level + end + + def self.severity_level + @@severity_level + end + + def self.log(level, message) + @@severity_level ||= DEFAULT_SEVERITY_LEVEL + if SEVERITY_LEVELS[level] <= SEVERITY_LEVELS[@@severity_level] + STDERR.puts "#{File.basename($0)}: #{level}: #{message}" + end + end + + def self.error(message) + log(:error, message) + end + + def self.fatal(message) + log(:fatal, message) + raise message + end + + def self.warning(message) + log(:warning, message) + end + + def self.info(message) + log(:info, message) + end + + def self.debug(message) + log(:debug, message) + end + + class Compiler + + DEFAULT_OPTIONS = { + :input_extension => '.rtextile', + :output_extension => '.textile' + } + + def initialize(commands, options={}) + @command = commands + @options = DEFAULT_OPTIONS + @options.merge!(options) + TextileCompiler.debug("current directory = `#{Pathname.pwd}'") + end + + def compile(*pathnames) + pathnames.each do |src_pathname| + if src_pathname.extname == @options[:input_extension] + base_pathname = src_pathname.to_s.sub(/#{src_pathname.extname}$/, '') + dest_pathname = Pathname.new(base_pathname + + @options[:output_extension]) + dest_pathname.open('w') do |f| + f.write ERB.new(src_pathname.read).result(@command.get_binding) + end + else + TextileCompiler.warning("unknown file extension, ignore `#{src_pathname}'") + end + end + end + + end # class Compiler + + class Textile + + def initialize + @fixtures_directory = Pathname.new(".") + end + + def get_binding + binding + end + + def comment(&block) + end + + def command(command, options={}) + args = options[:arguments] + args ||= [] + args = args.join(' ') + + cmd = "#{command} #{args}" + cmd = "echo #{options[:input]} | #{cmd}" if options[:input] + TextileCompiler.info("cmd `#{cmd}'") + + result = "|{background:#ddd}.$ #{cmd}|\n\n" + + TextileCompiler.debug("options[:directory] = `#{options[:directory]}'") + directory = options[:directory] + directory ||= "." + directory = @fixtures_directory + Pathname.new(directory) + unless directory.directory? and directory.executable? and directory.readable? + TextileCompiler.error("bad directory `#{directory}' " + + "(fixtures_directory = `#{@fixtures_directory}'") + end + TextileCompiler.debug("directory = `#{directory}'") + + full_cmd = "cd #{directory} && #{cmd}" + full_cmd += " 2>&1" if options[:with_stderr] + TextileCompiler.debug("run `#{full_cmd}'") + unless options[:without_output] + result += "
\n" + `#{full_cmd}` + "\n
" + end + status = $?.exitstatus + if status != 0 + TextileCompiler.warning("the command `#{full_cmd}' has exited with " + + "status #{status}") + end + result + end + + def fixtures_directory=(new_value) + tmp = Pathname.new(new_value) + if tmp.directory? and tmp.executable? and tmp.readable? + @fixtures_directory = tmp + else + TextileCompiler.error("bad fixture directory `#{tmp}'") + end + end + + attr_reader :fixtures_directory + + end # class Textile + +end # class TextileCompiler + + +ME_DIR, ME = Pathname.new($0).split + +options = TextileCompiler::Compiler::DEFAULT_OPTIONS +opts = OptionParser.new do |opts| + + opts.banner = "Usage: #{ME} [options] <.rtextile files>..." + opts.separator '' + + opts.summary_indent = ' ' + opts.summary_width = 28 + + opts.on('--input-extension EXT', + "Input extention (default: #{options[:input_extension]})") do |ext| + options[:input_extenstion] = ext + end + + opts.on('--output-extension EXT', + "Output extention (default: #{options[:output_extension]})") do |ext| + options[:output_extenstion] = ext + end + + opts.on('-s', + '--severity LEVEL', + TextileCompiler::SEVERITY_LEVELS.keys, + 'Log severity level (no argument for the list)') do |lvl| + if lvl.nil? + puts "Log severity level:" + TextileCompiler::SEVERITY_LEVELS.keys.each { |l| puts " - #{l}" } + exit + else + TextileCompiler.severity_level = lvl + end + end + +end + +opts.parse!(ARGV) +ARGV.map! { |arg| Pathname.new(arg) } + +TextileCompiler::Compiler.new(TextileCompiler::Textile.new).compile(*ARGV) + Property changes on: misc/textile_compiler ___________________________________________________________________ Name: svn:executable + * Name: svn:keywords + Id Index: doc/demo/command-tutorial.rtextile --- doc/demo/command-tutorial.rtextile (revision 0) +++ doc/demo/command-tutorial.rtextile (revision 0) @@ -0,0 +1,450 @@ +<% + self.fixtures_directory = "test/fixtures/demo/command-tutorial" +%> + +h1. Testing command line programs + +This tutorial explains step by step with a concrete example, how to use Uttk in +order to test command line programs. More precisely, it describes how to write +a good test file and how to perform common tests (diff standard output/error, +program exit status, etc...). After reading this tutorial, you will have a good +understanding of what you can do with Cmd strategy. + +h2. What you will learn + +This part will teach you how to write a very simple test file to check a +command line program. You will see that Uttk is very powerful, especially with +that kind of programs. + +For this tutorial, we will use a simple program written in Ruby. It takes a +word as argument, and write it to the standard output in its plural form. The +goal is to show you how to write a test suite for this program in different +ways. So, you will learn how to write a Uttk test file to : + +* call a program in command line with some arguments +* call a program in command line using standard input +* check the standard output +* check the the error output +* check the exit code +* balance the importance of your test +* use environment variables + +h2. Step 1 - Run a command + +h3. The program to test + +We are now ready to begin ! The following is the program to test : + +<%= command "cat", + :arguments => [ "pluralizer.rb" ], + :directory => "steps/1" + %> + +Don't forget to add execution flag to the file: + +<%= command "chmod", + :arguments => [ "u+x", "pluralizer.rb" ], + :directory => "steps/1", + :without_output => true + %> + +If you try this program in your shell like that : + +<%= command "./pluralizer.rb", + :arguments => [ "bird" ], + :directory => "steps/1" + %> + +h3. The TTK test file + +Now, here is the TTK test file, at the moment it is very simple : + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/1" + %> + +You can see that the test file is in Yaml format, which is the default format. +However, there are some tips you should know in order to not to waste your time +with stupid stuff due to using that format (for example, the indentation is +strict). For further details about how to use Yaml please refer to the "Yaml's +cookbook":http://yaml4r.sourceforge.net/cookbook/ + +Ok, now, let's examine the file : +|Yaml lines|description| +|Test the plurial program:|This line is the name of the test| +|strategy: Cmd|You specify here the way of checking your program, we are talking about checking a program in command line.| +|command: ruby plural.rb|Because we have chosen the Cmd Strategy, we must precise the command to execute, so our program to check| +|args: "bird"|Here are the arguments you can give to the command| + + +This test file doesn't check anything at the moment but we are now able to call +it with Uttk ! + +h3. The result + +In order to test your program, you only have to execute Uttk with your test +file in argument. + +<%= command "uttk", + :arguments => [ "check.yml" ], + :directory => "steps/1" + %> + +You can notice that the output is very short and looks like more or less the +input. Actually, the output is Yaml compliant. If you want a more details about +the result of your test, you can look at the @log.yml@ file: + +<%= command "cat", + :arguments => [ "log.yml" ], + :directory => "steps/1" + %> + +Note, that there are also @log.xml@ and @log.html@ which contain your test +result respectively in XML and HTML. + +If you want, no log file to be created and only to see the Yaml output in your +terminal you can run: + +<%= command "uttk", + :arguments => [ "-F Yaml", "check.yml" ], + :directory => "steps/1" + %> + +Finally, we can notice that the output is very similar to the input. So there +is a new Strategy called _Suite_. This one has been automatically created. In +fact, you can call Uttk with several input files as argument, and thus all +strategy mentioned in those files are bunched together in one strategy suite +called _root_. This point will be detailed later at step three. + +For further information about, how to tune the output of Uttk, see: + +<%= command "uttk", + :arguments => [ "--filter-help" ], + :directory => "steps/1", + :without_output => true + %> + +and you can use the following command to see the list of available filters: + +<%= command "uttk", + :arguments => [ "-F" ], + :directory => "steps/1", + :without_output => true + %> + +h4. Get some help + +Every strategy of Uttk embed an online reference documentation about the use of +its attribute. To get some help about the _Cmd_ strategy, do the following: + +<%= command "uttk", + :arguments => [ "-H Cmd" ], + :directory => "steps/1", + :without_output => true + %> + +To obtain the list of all available Uttk strategies, do the following: + +<%= command "uttk", + :arguments => [ "--strategy-list" ], + :directory => "steps/1", + :without_output => true + %> + + +h2. Step 2 - Output and exit status + +h3. The test file + +In this step, we will really check our program. We must check the output +depending on the input. Moreover, the exit status must be correct too. + +This step is very easy if you have correctly followed the previous one. In +fact, we only need two new lines in our Yaml test file. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/2" + %> + +Here, we specify the expected output ("birds\n") for the given argument +("bird"). We also specify the exit status the command must return. + +h3. The result + +<%= command "uttk", + :arguments => [ "check.yml" ], + :directory => "steps/2" + %> + +We can see that our program pass the test. If you aren't convinced, you can try +to change the expected output. If we replace it with a +wrong value, we see that Uttk shows us an error : + +<%= command "cat", + :arguments => [ "bad_check.yml" ], + :directory => "steps/2" + %> + +<%= command "uttk", + :arguments => [ "bad_check.yml" ], + :directory => "steps/2" + %> + +<%= command "cat", + :arguments => [ "log.yml" ], + :directory => "steps/2" + %> + +Ok, that's all for this step ! + +h2. Step 3 - Bunch all your test in a test suite + +h3. Introduction + +This step is very important because it deals with the Suite Strategy, which +allows you to write more than one test in a single file. We have seen, at the +end of the first step, that a Suite strategy had been created automatically. +Indeed, you can run Uttk with several input files as argument. See the +following example. + +<%= command "uttk", + :arguments => [ "check.yml", "check.yml" ], + :directory => "steps/2" + %> + +Now, we are able to check our program with many test files. However, creating a +new test file for each test is not very handy ! So, we can create ourselves a +Suite strategy which will simplify our work. The following test file shows how +to write it in a naive way. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/3" + %> + +In this case, we must specify that the main test is a test suite by using the +_Suite_ strategy. Thus, we have to specify the contents of the Suite, using its +contents attribute, followed by each test we want to run. Be careful ! Remember +that Yaml syntax is strict, you must respect the indentation (*no tabulation +but only white space*) and the colon after each test name. + +h3. A common test file + +As you can see, there are some lines in common in each test that composed the +test suite. Indeed, each one is composed of the same Strategy, with the same +exit code, and so on. Uttk allows you to factor these attributes using the +attribute _attributes_ of the Suite strategy. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/3.1" + %> + +Here, we precise all common attributes for each test in the contents. + +h2. Step 4 - Input stream + +h3. Standard input + +It is very common to create a program which reads input data from the standard +input. With Uttk it is very simple to check this kind of program. First of all, +we need that our _pluralizer.rb_ program handles the standard input. So, we +modify it this way : + +<%= command "cat", + :arguments => [ "pluralizer.rb" ], + :directory => "steps/4" + %> + +Thus, if we don't give any argument to it, it reads on the standard input. So, +if we execute our program like that : + +<%= command "./pluralizer.rb", + :input => "bird", + :directory => "steps/4" + %> + +How to check that behavior? It's very simple. Let's see how to write that +in your Yaml file. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/4" + %> + +We have introduced the attribute @input at . The contents of this attribute is +sent to the standard input of our program. + +h3. File input + +When the input contents of your test is big you may want to store it in a +separate file instead of writing it directly in your test suite file. The +attribute @input@ allows you to do so. + +<%= command "cat", + :arguments => [ "bird.txt" ], + :directory => "steps/4.1" + %> + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/4.1" + %> + +In order to precise the given file name, you just need to warn Uttk that you +are giving a path name by writing @!path@ before the file name. + +h2. Step 5 - Error management + +h3. Standard error output + +In this part, we detail how to check the standard error output. In order to do +that we will first falsify our program. + +<%= command "cat", + :arguments => [ "pluralizer.rb" ], + :directory => "steps/5" + %> + +Ok, let's sum up the tested program. If we run it without argument, the word to +pluralized is picked up from the standard input. Otherwise, if we give at least +one argument, the word is the first argument. After, the program verifies if +the word is correct by testing its composition : if it contains at least one +digit, the word is wrong and so it writes on the error output the string + at bad word !@. In order to test that behavior, we need to modify the Yaml test +file by adding a new attribute. See the following. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/5" + %> + +In fact, in the first test of the contents, we check two things: the output +must be empty and the error output must be exactly equal to the string +@"wrong word!\n"@. + +Moreover, if we want to return a special exit code in this case, we only have +to precise it by adding to the test the @exit:@ attribute with the expected +value, as we have seen in the second step. The default attribute @exit: 0@ will +be overrided if you specify it again. + +Our patched program: + +<%= command "cat", + :arguments => [ "pluralizer.rb" ], + :directory => "steps/5.1" + %> + +and the corresponding test suite: + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/5.1" + %> + +and the result: + +<%= command "uttk", + :arguments => [ "check.yml" ], + :directory => "steps/5.1" + %> + +h2. Step 6 - The attribute Weight + +This part presents the use of the attribute weight common to all the +strategies. This attribute has been introduced in order to balance the +importance of each test. The weight influence the final grade of the global +test suite. Look at the example below: + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/6" + %> + +The third test introduce the attribute @weight@, with a value of @-1 at . This +means that the result status will be inverted. In this case, if the output is +@"childs\n"@ when the argument of the command is @child@, it means that the +test is wrong ! So, we have the result : + +<%= command "uttk", + :arguments => [ "check.yml" ], + :directory => "steps/6" + %> + +As you can see, the status of the third test is @PASS@, but because of the +negative value of the weight, the result of the test is in fact wrong. As a +consequence, we have two good tests and one fail, so the final status is + at FAIL@ (the tested program have passed only 75% of all tests). + +At last, there is another use of this new attribute. As its name let guess it, +it can be use for balance each test with a weight. Let's see the following. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/6.1" + %> + +The result is : + +<%= command "uttk", + :arguments => [ "check.yml" ], + :directory => "steps/6.1" + %> + +We have balanced the first test with a weight of 2, that's why the final +percentage is 88%. + +h2. Step 7 - The symbol table + +h3. Introduction + +Uttk also implements a scoped environment variables. We call these "environment +variables": *symbols*. They are all kept in a hash which may have a sub hashes +that represent sub scopes. + +For instance, we can use the variable @my_var@ instead of hard writing the +value of the weight in the Yaml file. In fact, the symbol written between @<<@ +and @>>@ are expanded. + +<%= command "cat", + :arguments => [ "check.yml" ], + :directory => "steps/7" + %> + +Obviously, we need to define this variable first. Some of these symbols are +defined by the strategies themselves, but you can define you own to factor +common information in your test file. Indeed, every strategies have the +attribute @symbols@ which takes a hash of symbols as argument. But you can also +define some symbols from the command line by using the @-S@ option. See the +following example : + +<%= command "uttk", + :arguments => [ "-S 'my_var: 2'", "check.yml" ], + :directory => "steps/7" + %> + +h2. Step 8 - Select the test to run + +It is often needed to run only a sub part of a big test suite. To address this +issue, Uttk allow you to select the test you want to run using a technology +similar to XPath. + +Using the last @check.yml@ of the step 6, the following command select only +the test: @"Test the bird word"@ and @"Test the ant word"@ + +<%= command "uttk", + :arguments => [ "--rpath '/////(bird|ant)'", "check.yml" ], + :directory => "steps/6.1" + %> + +You can check that all other tests are skipped. Some of you may wish to not +see all the skipped test. In order to learn how to do so, follow the tutorial +at FIXME. + +<% comment do %> + + LocalWords: Uttk Yaml XPath + +<% end %> -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/7308b786/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 08:12:37 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 14:12:37 +0100 (MET) Subject: [Uttk-Patches] 815: Add svn:executable. Message-ID: <20060221131237.161CA26D5C@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/815 Index: ChangeLog from Nicolas Desprès Add svn:executable. * script/destroy: . * script/generate: . 0 files changed Property changes on: script/destroy ___________________________________________________________________ Name: svn:executable + * Property changes on: script/generate ___________________________________________________________________ Name: svn:executable + * -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/ba0ed6ff/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 08:15:29 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 14:15:29 +0100 (MET) Subject: [Uttk-Patches] 816: Use the DefaultColor backend only if STDOUT is a tty. Message-ID: <20060221131529.29A9026C0C@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/816 Index: ChangeLog from Nicolas Desprès Use the DefaultColor backend only if STDOUT is a tty. * lib/uttk/filters/DefaultColor.rb: New. Copy of the older Default. * lib/uttk/filters/Default.rb: Remove the ColorStatus filter. * lib/uttk.rb, bin/getopts/uttk.rb: Choose DefaultColor if STDOUT is a tty otherwise choose Default for the Default backend. bin/getopts/uttk.rb | 7 +++++-- lib/uttk.rb | 2 +- lib/uttk/filters/Default.rb | 2 +- lib/uttk/filters/DefaultColor.rb | 4 ++-- 4 files changed, 9 insertions(+), 6 deletions(-) Index: lib/uttk/filters/DefaultColor.rb --- lib/uttk/filters/DefaultColor.rb (revision 814) +++ lib/uttk/filters/DefaultColor.rb (working copy) @@ -8,7 +8,7 @@ module Filters - class Default < Id + class DefaultColor < Id def self.template ( str ) [ @@ -20,7 +20,7 @@ composition template('log') - end # class Default + end # class DefaultColor end # module Filters Index: lib/uttk/filters/Default.rb --- lib/uttk/filters/Default.rb (revision 815) +++ lib/uttk/filters/Default.rb (working copy) @@ -13,7 +13,7 @@ def self.template ( str ) [ 'Yaml: [%s.yml]', "Xml: [%s.xml]", - 'JustStatus: [RemoveTypes: [ColorStatus: [Yaml]]]', + 'JustStatus: [RemoveTypes: [Yaml]]', 'Compact: [NodeCut: [!skip ^contents$, [Html: [%s.html]]]]', ].join(', ') % [str, str, str] end Index: lib/uttk.rb --- lib/uttk.rb (revision 815) +++ lib/uttk.rb (working copy) @@ -177,7 +177,7 @@ DEFAULT_OPTIONS = { :input => nil, :observers => [], - :backend => 'Default', + :backend => STDOUT.tty? ? 'DefaultColor' : 'Default', :loader => Loaders::Yaml, :wclass => Weights::Default, :attributes => {}, #FIXME: freeze Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 815) +++ bin/getopts/uttk.rb (working copy) @@ -194,8 +194,11 @@ optparser.separator '' optparser.separator 'Logger options:' - optparser.on('-l', '--log STRING', 'Set the log base name for log files') do |log| - opts[:observers] << Filters::Default.template(log) + optparser.on('-l', + '--log STRING', + 'Set the log base name for log files') do |log| + default_filter = STDOUT.tty? ? F::DefaultColor : F::Default + opts[:observers] << default_filter.template(log) end optparser.on('-d', -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/649f9f9f/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 09:36:07 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 15:36:07 +0100 (MET) Subject: [Uttk-Patches] 817: Remove the -i option. Message-ID: <20060221143607.2C06126CDF@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/817 Index: ChangeLog from Nicolas Desprès Remove the -i option. * lib/uttk.rb: Remove the :input option. * bin/getopts/uttk.rb: Remove the -i option. * bin/uttk: No longer check the :input option. bin/getopts/uttk.rb | 14 ++------------ bin/uttk | 6 ------ lib/uttk.rb | 1 - 3 files changed, 2 insertions(+), 19 deletions(-) Index: lib/uttk.rb --- lib/uttk.rb (revision 816) +++ lib/uttk.rb (working copy) @@ -175,7 +175,6 @@ # Set default options DEFAULT_OPTIONS = { - :input => nil, :observers => [], :backend => STDOUT.tty? ? 'DefaultColor' : 'Default', :loader => Loaders::Yaml, Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 816) +++ bin/getopts/uttk.rb (working copy) @@ -57,19 +57,9 @@ optparser.summary_indent = ' ' optparser.summary_width = 25 - ### IO options + ### Path options - optparser.separator 'IO options:' - - optparser.on('-i', - '--input FILE', - 'Set input file (only a Result)') do |aFile| - if aFile == '-' - opts[:input] = STDIN - else - opts[:input] = File.new(aFile, 'r') - end - end + optparser.separator 'Path options:' optparser.on('-I', '--include PATH', Index: bin/uttk --- bin/uttk (revision 816) +++ bin/uttk (working copy) @@ -47,8 +47,6 @@ log = symtbl[:log] at_exit { log.close } - if opts[:input].nil? - t = argv.uttk_testify(symtbl) # Load the cache file if cache_dir is set. @@ -163,10 +161,6 @@ end exit(2) end - else - #FIXME: and test me - symtbl[:loader].load(opts[:input]).to_uttk_log(log) - end rescue SystemExit raise -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/2174dd3d/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 10:11:44 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 16:11:44 +0100 (MET) Subject: [Uttk-Patches] 818: Fix a bug with -I. Message-ID: <20060221151144.05CA026C34@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/818 Index: ChangeLog from Nicolas Desprès Fix a bug with -I. * lib/uttk.rb: Build the list of all the "uttk_module". Check whether the directory of a module is accessible. * bin/getopts/uttk.rb: Resetup the autoload for all the "uttk_module" and not only strategy. bin/getopts/uttk.rb | 2 +- lib/uttk.rb | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) Index: lib/uttk.rb --- lib/uttk.rb (revision 817) +++ lib/uttk.rb (working copy) @@ -94,9 +94,13 @@ end module_function :pathname_to_class + UTTK_MODULES = [] + class ::Module def uttk_module module_eval do + UTTK_MODULES << self + def self.module_dirs mod = name.demodulize.underscore Uttk.load_path.map { |path| path/mod } @@ -104,11 +108,13 @@ def self.setup_autoload module_dirs.each do |module_dir| + if module_dir.directory? and module_dir.readable? and module_dir.executable? autoload_tree(module_dir, false) do |p| Uttk.pathname_to_class(p) end end end + end setup_autoload def self.define_module @@ -131,6 +137,12 @@ end end + def self.setup_autoload_all + UTTK_MODULES.each do |uttk_module| + uttk_module.setup_autoload + end + end + class ObserverError < ArgumentError def initialize ( anObject ) @obs = anObject Index: bin/getopts/uttk.rb --- bin/getopts/uttk.rb (revision 817) +++ bin/getopts/uttk.rb (working copy) @@ -66,7 +66,7 @@ 'Add PATH to root path (PATH/strategies, ' + 'PATH/filters...)') do |aPath| ::Uttk.load_path += aPath.split(':').map { |x| x.to_path } - ::Uttk::Strategies.setup_autoload + ::Uttk.setup_autoload_all end ### Strategy options -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/7847522f/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 11:16:01 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 17:16:01 +0100 (MET) Subject: [Uttk-Patches] 822: A tutorial about the filters. Message-ID: <20060221161601.D76DB26F59@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/822 Index: ChangeLog from Nicolas Desprès A tutorial about the filters. * test/fixtures/demo/filter-tutorial: New. * test/fixtures/demo/filter-tutorial/filters: New. * test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb: New. * test/fixtures/demo/filter-tutorial/pluralizer.rb: New. * test/fixtures/demo/filter-tutorial/check.yml: New. * test/fixtures/demo/filter-tutorial/filters: New. * test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb: New. * test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb: New. * test/fixtures/demo/filter-tutorial/pluralizer.rb: New. * test/fixtures/demo/filter-tutorial/check.yml: New. * doc/demo/filter-tutorial.rtextile: New. doc/demo/filter-tutorial.rtextile | 128 +++++++++++++++ test/fixtures/demo/filter-tutorial/check.yml | 22 ++ test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb | 19 ++ test/fixtures/demo/filter-tutorial/pluralizer.rb | 17 + 4 files changed, 186 insertions(+) Index: test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb --- test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb (revision 0) +++ test/fixtures/demo/filter-tutorial/filters/CutSkip100.rb (revision 0) @@ -0,0 +1,19 @@ +module Uttk + + module Filters + + class CutSkip100 < RPathFilter + include Concrete + + match '^status$/!SKIP\(100%\)\Z', :display + + def display ( path ) + leaf = path.pop.segment + notif :new_leaf, path, leaf + end + + end # class CutSkip100 + + end # module Filters + +end # module Uttk Index: test/fixtures/demo/filter-tutorial/pluralizer.rb --- test/fixtures/demo/filter-tutorial/pluralizer.rb (revision 0) +++ test/fixtures/demo/filter-tutorial/pluralizer.rb (revision 0) @@ -0,0 +1,17 @@ +#! /usr/bin/env ruby + +def main() + if (ARGV.length == 0) + word = STDIN.gets.chomp + else + word = ARGV[0] + end + if word =~ /\d/ + STDERR.puts "wrong word!" + exit 1 + else + puts word + "s" + end +end + +main Property changes on: test/fixtures/demo/filter-tutorial/pluralizer.rb ___________________________________________________________________ Name: svn:executable + * Index: test/fixtures/demo/filter-tutorial/check.yml --- test/fixtures/demo/filter-tutorial/check.yml (revision 0) +++ test/fixtures/demo/filter-tutorial/check.yml (revision 0) @@ -0,0 +1,22 @@ +--- +Test the pluralizer program: + strategy: Suite + attributes: + strategy: Cmd + command: ./pluralizer.rb + exit: 0 + contents: + - Test the bird word: + input: "bird" + output: "birds\n" + - Test the mouse word: + args: "mouse" + output: "mice\n" + - Test a bad word: + args: "b1rd" + output: "" + error: "wrong word!\n" + exit: 1 + - Test the child word: + args: "child" + output: "children\n" Index: doc/demo/filter-tutorial.rtextile --- doc/demo/filter-tutorial.rtextile (revision 0) +++ doc/demo/filter-tutorial.rtextile (revision 0) @@ -0,0 +1,128 @@ +<% + self.fixtures_directory = "test/fixtures/demo/filter-tutorial" +%> + +h1. Simple log filtering + +This tutorial explains how to write a simple filter for the Uttk's back end. +This +filter is simple and is 10 lines of code long, but very powerful. When using, +the @--rpath@ option of Uttk, there are a lot of tests with a status equals to + at SKIP(100%)@ which are logged. You probably want only the test you have +selected with the @--rpath@ option. The filter, we are going to write through +this tutorial, do that job. + +First of all, this tutorial presents the basic concept to understand how the +back end of Uttk works. Then it explains how to write the filter. + +h2. The back end + +Uttk's back end is tree of classes that observe themselves using the +_Observable_ design pattern. The root of the tree is an instance of the Logger +class. The inner node are instances of one of the filter class hierarchy. +The leaves are instances of one of the dumper class hierarchy. + +The logger receives notification from the strategy being run. Then, it dispatch +them to all its observers. An observer of the logger may be either a dumper or +a filter. The dumper cannot be observed (they do not implement the _Observable_ +design pattern) but are associated to a stream in which they dump all the +notifications they receive from the class they observe. There are several +format available for dumping the notification (Yaml, XML, HTML, ...). The +filters observe a logger or another filter and are observed by several other +filters/dumpers. The filters may block or forward/repeat some of the +notifications they receive to their observers. + +h2. The filter: CutSkip100 + +Consider the following test suite: + + +<%= command "cat", + :arguments => [ "check.yml" ] + %> + +of this little program: + +<%= command "cat", + :arguments => [ "pluralizer.rb" ] + %> + +This program pass only 50% of its test suite: + +<%= command "uttk", + :arguments => [ "check.yml" ] + %> + +So now, since we are debugging our great program we don't want to run all the +tests each time we test our modifications. So we use the @--rpath@ option to +select the failed desired test: + +<%= command "uttk", + :arguments => [ "--rpath '/////(mouse|child)'", "check.yml" ] + %> + +We also don't want to see the test with a SKIP(100%) status. To do so, we will +write the @CutSkip100@ filter. But before, we need to understand how look like +the notification that pass through a filter. The @Basic@ dumper allow us to +see them verbatim: + +<%= command "uttk", + :arguments => [ "--rpath '/////(mouse|child)'", + "-F Basic", + "check.yml" ], + :without_output => true + %> + +You can see that a notification is composed by: + +* an identifier: @:new_leaf@ +* a path: the path (from the root) of the leaf being notified +* a value: the value of the leaf being notified + +Actually, there is also an information about whether or not a block is +provided but you can consider that it is always false. Plus, you can also +consider that the identifier is always a @:new_leaf at . + +What we want is to see only the status different of @SKIP(100%)@, so we must +first match all the notifications with a path that end with @"status"@ and +display only those which have a value not equal to @SKIP(100%)@. + +First we must create a directory where to store our filters: + +<%= command "mkdir", + :arguments => [ "filters" ], + :without_output => true + %> + +Then, edit the new filter class: + +<%= command "cat", + :arguments => [ "filters/CutSkip100.rb" ] + %> + +The @match@ method is the key point of this filter (note that this method +is available only because we inherits from the filter @RPathFilter@ instead of +the filter @Filter at . This method takes a _"regexp_path"_ as first argument +and a method to call as second argument. The _"regexp_path"_ is matched +against the path of every notification the filter receive. If the notification +path match then the method mentioned as second argument is called. The method + at display@ that we define just below does only repeat the notification. + +Now, you can try your filter using this command: + +<%= command "uttk", + :arguments => [ "--rpath '/////(mouse|child)'", + "-I .", + "-F 'CutSkip100: Default'", + "check.yml" ] + %> + +Further information, about how to use the RegexpPath and/or the RPathFilter can +be found in the Uttk API documentation. + + +<% comment do %> + + LocalWords: Uttk Yaml XPath RPathFilter CutSkip pluralizer mkdir uttk API + +<% end %> -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/8fafa249/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 11:33:50 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 17:33:50 +0100 (MET) Subject: [Uttk-Patches] 823: Fix typo in the tuto. Message-ID: <20060221163350.E783D26EC9@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/823 Index: ChangeLog from Nicolas Desprès Fix typo in the tuto. * test/fixtures/demo/command-tutorial/steps/1/check.yml: . * test/fixtures/demo/command-tutorial/steps/2/bad_check.yml: . * test/fixtures/demo/command-tutorial/steps/2/check.yml: . * test/fixtures/demo/command-tutorial/steps/3.1/check.yml: . * test/fixtures/demo/command-tutorial/steps/3/check.yml: . * test/fixtures/demo/command-tutorial/steps/4.1/check.yml: . * test/fixtures/demo/command-tutorial/steps/4/check.yml: . * test/fixtures/demo/command-tutorial/steps/5.1/check.yml: . * test/fixtures/demo/command-tutorial/steps/5/check.yml: . * test/fixtures/demo/command-tutorial/steps/6.1/check.yml: . * test/fixtures/demo/command-tutorial/steps/6/check.yml: . * test/fixtures/demo/command-tutorial/steps/7/check.yml: . * test/fixtures/demo/filter-tutorial/check.yml: . * doc/demo/command-tutorial.rtextile: . doc/demo/command-tutorial.rtextile | 12 +++++------- test/fixtures/demo/command-tutorial/steps/1/check.yml | 2 +- test/fixtures/demo/command-tutorial/steps/2/bad_check.yml | 2 +- test/fixtures/demo/command-tutorial/steps/2/check.yml | 2 +- test/fixtures/demo/command-tutorial/steps/3.1/check.yml | 3 +-- test/fixtures/demo/command-tutorial/steps/3/check.yml | 9 +++------ test/fixtures/demo/command-tutorial/steps/4.1/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/4/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/5.1/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/5/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/6.1/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/6/check.yml | 6 ++---- test/fixtures/demo/command-tutorial/steps/7/check.yml | 6 ++---- test/fixtures/demo/filter-tutorial/check.yml | 6 ++---- 14 files changed, 28 insertions(+), 50 deletions(-) Index: test/fixtures/demo/command-tutorial/steps/1/check.yml --- test/fixtures/demo/command-tutorial/steps/1/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/1/check.yml (working copy) @@ -1,5 +1,5 @@ --- -Test the plural program: !S::Cmd +Test the pluralizer program: !S::Cmd command: ./pluralizer.rb args: - "bird" Index: test/fixtures/demo/command-tutorial/steps/2/bad_check.yml --- test/fixtures/demo/command-tutorial/steps/2/bad_check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/2/bad_check.yml (working copy) @@ -1,5 +1,5 @@ --- -Test the plural program: !S::Cmd +Test the pluralizer program: !S::Cmd command: ruby plural.rb args: - "bird" Index: test/fixtures/demo/command-tutorial/steps/2/check.yml --- test/fixtures/demo/command-tutorial/steps/2/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/2/check.yml (working copy) @@ -1,5 +1,5 @@ --- -Test the plural program: !S::Cmd +Test the pluralizer program: !S::Cmd command: ./pluralizer.rb args: - "bird" Index: test/fixtures/demo/command-tutorial/steps/3.1/check.yml --- test/fixtures/demo/command-tutorial/steps/3.1/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/3.1/check.yml (working copy) @@ -1,6 +1,5 @@ --- -Test the plural program: - strategy: Suite +Test the pluralizer program: !S::Suite attributes: !S::Cmd command: ./pluralizer.rb exit: 0 Index: test/fixtures/demo/command-tutorial/steps/3/check.yml --- test/fixtures/demo/command-tutorial/steps/3/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/3/check.yml (working copy) @@ -1,16 +1,13 @@ --- -Test the plural program: - strategy: Suite +Test the pluralizer program: !S::Suite contents: - - Test the bird word: - strategy: Cmd + - Test the bird word: !S::Cmd command: ./pluralizer.rb args: - "bird" output: "birds\n" exit: 0 - - Test the ant word: - strategy: Cmd + - Test the ant word: !S::Cmd command: ./pluralizer.rb args: "ant" output: "ants\n" Index: test/fixtures/demo/command-tutorial/steps/4.1/check.yml --- test/fixtures/demo/command-tutorial/steps/4.1/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/4.1/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/4/check.yml --- test/fixtures/demo/command-tutorial/steps/4/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/4/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/5.1/check.yml --- test/fixtures/demo/command-tutorial/steps/5.1/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/5.1/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/5/check.yml --- test/fixtures/demo/command-tutorial/steps/5/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/5/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/6.1/check.yml --- test/fixtures/demo/command-tutorial/steps/6.1/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/6.1/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/6/check.yml --- test/fixtures/demo/command-tutorial/steps/6/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/6/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/command-tutorial/steps/7/check.yml --- test/fixtures/demo/command-tutorial/steps/7/check.yml (revision 822) +++ test/fixtures/demo/command-tutorial/steps/7/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the plural program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: test/fixtures/demo/filter-tutorial/check.yml --- test/fixtures/demo/filter-tutorial/check.yml (revision 822) +++ test/fixtures/demo/filter-tutorial/check.yml (working copy) @@ -1,8 +1,6 @@ --- -Test the pluralizer program: - strategy: Suite - attributes: - strategy: Cmd +Test the pluralizer program: !S::Suite + attributes: !S::Cmd command: ./pluralizer.rb exit: 0 contents: Index: doc/demo/command-tutorial.rtextile --- doc/demo/command-tutorial.rtextile (revision 822) +++ doc/demo/command-tutorial.rtextile (working copy) @@ -55,9 +55,9 @@ :directory => "steps/1" %> -h3. The TTK test file +h3. The Uttk test file -Now, here is the TTK test file, at the moment it is very simple : +Now, here is the Uttk test file, at the moment it is very simple : <%= command "cat", :arguments => [ "check.yml" ], @@ -71,12 +71,10 @@ cookbook":http://yaml4r.sourceforge.net/cookbook/ Ok, now, let's examine the file : -|Yaml lines|description| -|Test the plurial program:|This line is the name of the test| -|strategy: Cmd|You specify here the way of checking your program, we are talking about checking a program in command line.| -|command: ruby plural.rb|Because we have chosen the Cmd Strategy, we must precise the command to execute, so our program to check| -|args: "bird"|Here are the arguments you can give to the command| +We first give a name to our test directly followed by the strategy used to +performed it. Then, we specify the attribute values of the test. In that case, +the name of the command to start and the argument to submit to this command. This test file doesn't check anything at the moment but we are now able to call it with Uttk ! -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/cba76f25/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 12:33:00 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 18:33:00 +0100 (MET) Subject: [Uttk-Patches] 824: Update the API documentation. Message-ID: <20060221173300.EA5EF26CC1@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/824 Index: ChangeLog from Nicolas Desprès Update the API documentation. * SPEC.yml: . * README: . * lib/uttk/dumpers/Dumper.rb: . * lib/uttk/filters/RPathFilter.rb: . * lib/uttk/filters/Filter.rb: . * lib/uttk/strategies/RUnit.rb: . * lib/uttk/strategies/Cmd.rb: . * NEWS: Updated. NEWS | 23 ++++++++-- README | 89 ++++++++++++++-------------------------- SPEC.yml | 3 - lib/uttk/dumpers/Dumper.rb | 4 - lib/uttk/filters/Filter.rb | 3 - lib/uttk/filters/RPathFilter.rb | 6 ++ lib/uttk/strategies/Cmd.rb | 3 - lib/uttk/strategies/RUnit.rb | 29 +------------ 8 files changed, 67 insertions(+), 93 deletions(-) Index: SPEC.yml --- SPEC.yml (revision 823) +++ SPEC.yml (working copy) @@ -29,16 +29,13 @@ - lib/uttk/strategies/Strategy.rb - lib/uttk/filters/Filter.rb - lib/uttk/weights/Weight.rb - - lib/uttkd.rb - lib/uttk.rb #FIXME: rdoc + gem fails for the main rdoc_files: !filelist - README - AUTHORS - - TODO - NEWS - - template/README - test/examples/README - lib/uttk/**/*.rb Index: README --- README (revision 823) +++ README (working copy) @@ -16,14 +16,19 @@ Uttk's philosophy follows the principle that you can always extend already made test strategy to specialize it for your own case. Initially, Uttk comes with a -few test strategies and provides specially abstract test strategies. Thus, Uttk -will become bigger only by contributions from its users who publish their test -strategies. At the end, it will provide enough test strategies that almost +few test strategies and provides specially, abstract test strategies. Thus, +Uttk will become bigger only by contributions from its users who publish their +test strategies. At the end, it will provide enough test strategies that almost everybody will find the test strategy he needs. Uttk comes with a set of classic test strategies, statistics computation, -a test suite manager, a pluggable loader/dumper architecture, and a distributed -mode. +a test suite manager, a loader architecture, a back end that support powerful +filter. + +Previous released were shipped with a distributed mode. This is no longer the +case. Uttk's architecture has changed and the former distributed mode doesn't +work any more to be almost rewritten from scratch. That's why, we decided to +not include it in this release. It will be back soon! = Roadmap @@ -53,12 +58,15 @@ % uttk [files...] Strategies described in the files are instantiated and run. The files format -must follow the one the chosen loader understand. By default, Uttk uses the YAML -loader. Use the -P option to use another loader. If no file are specified, Uttk -will read on the standard input. You can also use the -i option to change that. +must follow the one the chosen loader understand. By default, Uttk uses the +YAML loader. Use the -L option to use another loader. You can have a description of all Uttk's options using this command: + % uttk --long-help + +A shorter help message is printed by: + % uttk -h Uttk can show you a list of all dynamic strategies available, this way: @@ -68,17 +76,13 @@ If you want to have a description of all the available attributes of a given strategy, use this command: - % uttk -h + % uttk -H If you want to see the list of all the available loader, type this command: % uttk -L -For dumpers, do that: - - % uttk -P - -For filter: +For the filters/dumpers do that: % uttk -F @@ -101,8 +105,8 @@ = Examples Some examples are available in the test/examples directory. These examples -are written for the default loader of Uttk (the YAML loader). YAML is very easy -to read and write. If you want to learn it, see the YAML cookbook at +are written for the default loader of Uttk (the YAML loader). If you want to +learn more about YAML, see its cookbook at http://yaml4r.sourceforge.net/cookbook/. A detailed description of these examples is available in the @@ -111,22 +115,18 @@ = Stable and unstable parts -Uttk is still under development. Thus, there are some part of it which are still -unstable. Of course, even some stable part are not free from bugs. Perfection +Uttk is still under development. Thus, there are some part of it which are +still unstable. Of course, even some stable part are not bug free: Perfection doesn't exist! * Stable parts: - - The loader, dumper, strategy and logger architecture. - - The YAML loader. - - The YAML and the XML dumper. - - All strategies, expect those mentioned in the _unstable strategies_ - section, are considered stable. + - The loaders, filters, dumpers, strategies and logger architecture. + - The YAML and Ruby loader. + - The YAML, XML and HTML dumper. + - All strategies are considered stable except if a special warning is + mentioned in its documentation. * Unstable parts: - - The filter architecture is very unstable and not yet well developed. This - part will be fully functional in the next release. We discourage its usage. - - The distributed mode already provides some basic features but it is not - considered as really usable. We discourage its usage. - The timeout features provided by the abstract strategy _Strategy_ tend to be stable but it may block some times. You can use it, since it works most of the time. @@ -135,27 +135,6 @@ - Some old YAML loader are still in the repository, for backward compatibility reasons, but we discourage their usage. - -= Unstable strategies - -[*RUnit*] It works fine most a time, but doesn't not handle yet the abort - features. If you try to abort it, using the timeout features (or - whatever) for instance, some processes may stayed alive. You can use - it, otherwise. - -[*Test*] It works fine, but it will be redesign in the next release, because it - needs some upgrades. You can use it carefully. - -[*JUnit*] It has been stable a long time ago, but hasn't been adapted to the - recent strategy architecture changes yet. We discourage its usage. - -[*Distribute*] It is still under development and doesn't give correct results - yet. We discourage its usage. - -[*DistDuplicate*] It needs to be adapted to the recent strategy architecture - changes. We discourage its usage. - - = Repository tree description [NEWS] What's new in each release of Uttk. @@ -163,25 +142,23 @@ [bin] Contains all drivers provided by Uttk. [ChangeLog] Keep track of the changes of Uttk for all revisions. [COPYING] Describe the license. -[DESCRIPTION] A short and a long description of Uttk (used for rubygem). +[LGPL] The Gnu Lesser General Public license. +[GUIDELINES] Some guide lines for the developers. [doc] Documentation directory. [doc/html] RDoc output directory. +[doc/demo] Some tutorials. +[doc/presentation] Slides of presentation. [lib] Contains the library. [misc] Some useful miscellaneous scripts when developing Uttk. [NORM] Everybody who write code for Uttk must follow the rules written in this file. [Rakefile] For rubygem, doc generation and more generaly packaging operations. [README] This file. -[ruby_ex] Some useful Ruby's extensions. The end user is not supposed to look - at this directory. Those files will be bundle in one or several - separated packages in the futur. -[template] Some ERB templates to ease writting new strategies. -[template/README] Explains how to use these templates. +[script] Useful script for the end users and the developers similar to Rails + script directory). [test] Contains Uttk's tests. [TODO] What maintainers have to do. [VERSION] The current version of Uttk. -[REVISION] The SubVersion repository revision. -[DATE] The date of the SubVersion repository last update. = Bugs report and features request Index: lib/uttk/dumpers/Dumper.rb --- lib/uttk/dumpers/Dumper.rb (revision 823) +++ lib/uttk/dumpers/Dumper.rb (working copy) @@ -7,9 +7,7 @@ module Uttk # Dumpers are backends of Uttk. - # You can easily write your own dumper. - # For this, you only need to have a look to template/README, - # and template/new_dumper.rb. + # You can easily write your own dumper. See Uttk::Dumpers::Dumper module Dumpers # The dumper is a specific Logger::Backend. Index: lib/uttk/filters/RPathFilter.rb --- lib/uttk/filters/RPathFilter.rb (revision 823) +++ lib/uttk/filters/RPathFilter.rb (working copy) @@ -60,7 +60,11 @@ class_inheritable_accessor :matchers self.matchers = [] - + # The _aRegexpPath_ is matched against the path of every notification + # the filter receive. If the notification path matches, then the method + # mentioned as second argument is called. If no method are mentioned, it + # looks for a block. You must supply either a method or a block, not + # both. def self.match ( aRegexPath, aMethod=nil, &block ) if aMethod.nil? and block.nil? raise ArgumentError, "no block or method given" Index: lib/uttk/filters/Filter.rb --- lib/uttk/filters/Filter.rb (revision 823) +++ lib/uttk/filters/Filter.rb (working copy) @@ -6,7 +6,8 @@ module Uttk - # FIXME: explain here how to write a new filter + # There is tutorial that introduce this strategy at + # http://wiki.feydakins.org/uttk/pages/Simple+log+filtering module Filters Index: lib/uttk/strategies/RUnit.rb --- lib/uttk/strategies/RUnit.rb (revision 823) +++ lib/uttk/strategies/RUnit.rb (working copy) @@ -27,8 +27,8 @@ # = Examples # # You need to first write your unit test suite using the test/unit package - # and the YAML TestRunner. Then, you write a few line in the input Uttk file - # to incorporate the unit test in the Uttk's suite. + # and the YAML TestRunner. Then, you write a few line in the input Uttk + # file to incorporate the unit test in the Uttk's suite. # # == The unit test suite file: foo_test.rb # @@ -52,29 +52,8 @@ # == One suite for all your unit test suite # # If you find cumbersome to write for every unit test files a single RUnit - # strategy into the YAML input file of Uttk, there is another way to do so. - # Here we go: - # - # --- - # Uttk's unit test suite: - # strategy: Glob - # glob: '<>/../runit/**/*_test.rb' - # regexp: !re /(runit/.+_test\.rb)$ - # test: - # 'Unit test <>': - # strategy: RUnit - # input: !path - # dir: <>/.. - # load_path: ../lib - # verbose: true - # - # This file is extracted from the Uttk's functional test suite - # (test/functional/unit_test.yml). The strategy upon it is based (Glob) - # looks for every file ending by `_test.rb' in a particular directory - # relative to the place the Uttk YAML input file is located (<>). All - # these files are loaded as RUnit strategy with a verbose mode on, the Uttk - # library loaded in the $LOAD_PATH Ruby variable, and the correct working - # directory. Thus, every unit test files are embedded in a Uttk suite. + # strategy into the YAML input file of Uttk, there is another way that is + # used in test/unit-suite.yml. # class RUnit < CmdBase include Concrete Index: lib/uttk/strategies/Cmd.rb --- lib/uttk/strategies/Cmd.rb (revision 823) +++ lib/uttk/strategies/Cmd.rb (working copy) @@ -8,7 +8,8 @@ module Strategies - # FIXME: explain here how to use it to test a command line based program + # There is tutorial that introduce this strategy at + # http://wiki.feydakins.org/uttk/pages/Testing+command+line+programs class Cmd < CmdBase include Concrete Index: NEWS --- NEWS (revision 823) +++ NEWS (working copy) @@ -1,6 +1,23 @@ = New in 0.3, 2005-16-06: -This release is a minor which provides also some interesting improvments: +This release is a minor which provides also some interesting improvements: + + * Templates: + + They are now managed by the Rails generator. So, you new Rails installed to + use them. + + * Select your test from the command line: + + Use the --rpath option to select the tests you want to run. + + * Logger/Dumpers/Filters: + + Bunch all together in a powerful back end set. Filters are reloaded! + + * Distributed mode: + + Not included in this release. Will be back soon! * Uttk binary: Clean the help option, split in two --help and --long-help. @@ -25,13 +42,13 @@ * Miscellaneous: - * Ruby is now in the symtbl: + * Ruby is now in the symbol table: In your tests you now must use <> instead of just ruby. This will permit to easily control and change the running ruby. = New in 0.2, 2005-05-06: -This release is mainly a BugFix release but it provides also some improvments: +This release is mainly a BugFix release but it provides also some improvements: * Add templates to easily create your own loaders, dumpers, strategies...: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/fa981d4a/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 14:29:40 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 20:29:40 +0100 (MET) Subject: [Uttk-Patches] 825: Fix tutorials URL. Message-ID: <20060221192940.98A3126A17@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/825 Index: ChangeLog from Nicolas Desprès Fix tutorials URL. * lib/uttk/strategies/Cmd.rb: . * lib/uttk/strategies/Strategy.rb: . * lib/uttk/filters/Filter.rb: . filters/Filter.rb | 4 ++-- strategies/Cmd.rb | 4 ++-- strategies/Strategy.rb | 3 ++- 3 files changed, 6 insertions(+), 5 deletions(-) Index: lib/uttk/strategies/Cmd.rb --- lib/uttk/strategies/Cmd.rb (revision 824) +++ lib/uttk/strategies/Cmd.rb (working copy) @@ -8,8 +8,8 @@ module Strategies - # There is tutorial that introduce this strategy at - # http://wiki.feydakins.org/uttk/pages/Testing+command+line+programs + # A tutorial introduces how to use this strategy at + # http://wiki.feydakins.org/uttk class Cmd < CmdBase include Concrete Index: lib/uttk/strategies/Strategy.rb --- lib/uttk/strategies/Strategy.rb (revision 824) +++ lib/uttk/strategies/Strategy.rb (working copy) @@ -9,7 +9,8 @@ module Uttk - # FIXME: explain here how to write a new strategy + # A tutorial introduces how to create new strategies at + # http://wiki.feydakins.org/uttk module Strategies # This is the base class for anything _testable_. It provides some basics Index: lib/uttk/filters/Filter.rb --- lib/uttk/filters/Filter.rb (revision 824) +++ lib/uttk/filters/Filter.rb (working copy) @@ -6,8 +6,8 @@ module Uttk - # There is tutorial that introduce this strategy at - # http://wiki.feydakins.org/uttk/pages/Simple+log+filtering + # A tutorial introduces how to create new filters at + # http://wiki.feydakins.org/uttk module Filters -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/c5ed2dbf/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 17:07:23 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Tue, 21 Feb 2006 23:07:23 +0100 (MET) Subject: [Uttk-Patches] 826: Add a little bit of documentation for almost all strategy. Message-ID: <20060221220723.39ECC27312@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/826 Index: ChangeLog from Nicolas Desprès Add a little bit of documentation for almost all strategy. * lib/uttk/strategies/Bootstrap.rb: . * lib/uttk/strategies/SubCmd.rb: . * lib/uttk/strategies/Authors.rb: . * lib/uttk/strategies/Compile.rb: . * lib/uttk/strategies/Composite.rb: . * lib/uttk/strategies/Stub.rb: . * lib/uttk/strategies/RMatch.rb: . * lib/uttk/strategies/Proxy.rb: . * lib/uttk/strategies/Configure.rb: . * lib/uttk/strategies/KillAll.rb: . * lib/uttk/strategies/Block.rb: . * lib/uttk/strategies/Collection.rb: . * lib/uttk/strategies/ProbabilityThreshold.rb: . * lib/uttk/strategies/Cmd.rb: . * lib/uttk/strategies/Pool.rb: . * lib/uttk/strategies/Import.rb: . * NEWS: Typo. NEWS | 4 ++-- lib/uttk/strategies/Authors.rb | 2 ++ lib/uttk/strategies/Block.rb | 1 + lib/uttk/strategies/Bootstrap.rb | 3 +++ lib/uttk/strategies/Cmd.rb | 4 ++++ lib/uttk/strategies/Collection.rb | 3 +++ lib/uttk/strategies/Compile.rb | 2 ++ lib/uttk/strategies/Composite.rb | 2 ++ lib/uttk/strategies/Configure.rb | 3 +++ lib/uttk/strategies/Import.rb | 3 +++ lib/uttk/strategies/KillAll.rb | 3 +++ lib/uttk/strategies/Pool.rb | 2 ++ lib/uttk/strategies/ProbabilityThreshold.rb | 2 ++ lib/uttk/strategies/Proxy.rb | 1 + lib/uttk/strategies/RMatch.rb | 2 ++ lib/uttk/strategies/Stub.rb | 2 ++ lib/uttk/strategies/SubCmd.rb | 1 + 17 files changed, 38 insertions(+), 2 deletions(-) Index: lib/uttk/strategies/Bootstrap.rb --- lib/uttk/strategies/Bootstrap.rb (revision 825) +++ lib/uttk/strategies/Bootstrap.rb (working copy) @@ -8,6 +8,9 @@ module Strategies + # I test whether the bootstrap process (in the context of the compilation + # of a project using the autotools) works fine. I'm not maintained that + # much since the _Package_ strategy do a better job than I. class Bootstrap < Proxy include Concrete Index: lib/uttk/strategies/SubCmd.rb --- lib/uttk/strategies/SubCmd.rb (revision 825) +++ lib/uttk/strategies/SubCmd.rb (working copy) @@ -8,6 +8,7 @@ module Strategies + # I run a sub Uttk. class SubCmd < CmdBase include Concrete Index: lib/uttk/strategies/Authors.rb --- lib/uttk/strategies/Authors.rb (revision 825) +++ lib/uttk/strategies/Authors.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I check whether a student has well written his _AUTHORS_ file. I'm very + # specific to the test of Epita's student tarballs. class Authors < Strategy include Concrete Index: lib/uttk/strategies/Compile.rb --- lib/uttk/strategies/Compile.rb (revision 825) +++ lib/uttk/strategies/Compile.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I'm not maintained that much since the _Package_ strategy do a better + # job than I. class Compile < Proxy include Concrete Index: lib/uttk/strategies/Composite.rb --- lib/uttk/strategies/Composite.rb (revision 825) +++ lib/uttk/strategies/Composite.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I'm the super class of every strategy class that are composed by other + # strategies. class Composite < Strategy include Abstract Index: lib/uttk/strategies/Stub.rb --- lib/uttk/strategies/Stub.rb (revision 825) +++ lib/uttk/strategies/Stub.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I repeat to the log the hash of value given to my attribute + # _"returned_value"_ class Stub < Strategy include Concrete Index: lib/uttk/strategies/RMatch.rb --- lib/uttk/strategies/RMatch.rb (revision 825) +++ lib/uttk/strategies/RMatch.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I can be used with to test a test strategy. I will be merged soon with + # the _Test_ strategy. class RMatch < Proxy include Concrete Index: lib/uttk/strategies/Proxy.rb --- lib/uttk/strategies/Proxy.rb (revision 825) +++ lib/uttk/strategies/Proxy.rb (working copy) @@ -8,6 +8,7 @@ module Strategies + # I'm composed by only one strategy and I'm transparent in the log. class Proxy < Composite include Abstract Index: lib/uttk/strategies/Configure.rb --- lib/uttk/strategies/Configure.rb (revision 825) +++ lib/uttk/strategies/Configure.rb (working copy) @@ -8,6 +8,9 @@ module Strategies + # I check whether the configure stage of a compilation process fail. + # I'm not maintained that much since the _Package_ strategy do a better + # job than I. class Configure < Proxy include Concrete Index: lib/uttk/strategies/KillAll.rb --- lib/uttk/strategies/KillAll.rb (revision 825) +++ lib/uttk/strategies/KillAll.rb (working copy) @@ -8,6 +8,9 @@ module Strategies + # I kill all the process that match my _regexp_ attribute by sending my + # _signal_ attribute. I'm unfortunately not compatible with all OS since I + # depend on the _ps_ program. class KillAll < Strategy include Concrete Index: lib/uttk/strategies/Block.rb --- lib/uttk/strategies/Block.rb (revision 825) +++ lib/uttk/strategies/Block.rb (working copy) @@ -8,6 +8,7 @@ module Strategies + # I can evaluate a Ruby block. class Block < IOBased include Concrete Index: lib/uttk/strategies/Collection.rb --- lib/uttk/strategies/Collection.rb (revision 825) +++ lib/uttk/strategies/Collection.rb (working copy) @@ -8,6 +8,9 @@ module Strategies + # I do the same job as the _Composite_ strategy, plus I provide the + # _attributes_ attribute which allow to share common attributes of the + # strategies I compose. class Collection < Composite include Abstract Index: lib/uttk/strategies/ProbabilityThreshold.rb --- lib/uttk/strategies/ProbabilityThreshold.rb (revision 825) +++ lib/uttk/strategies/ProbabilityThreshold.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I validate the status of the strategy _test_ if it is under the value of + # my _threshold_ attribute. class ProbabilityThreshold < Proxy include Concrete Index: lib/uttk/strategies/Cmd.rb --- lib/uttk/strategies/Cmd.rb (revision 825) +++ lib/uttk/strategies/Cmd.rb (working copy) @@ -8,6 +8,10 @@ module Strategies + # I can check many interaction with a command line based program, such as: + # its standard output, exit status, standard error. I can specify to a + # given command its arguments, environment variables and standard input. + # # A tutorial introduces how to use this strategy at # http://wiki.feydakins.org/uttk class Cmd < CmdBase Index: lib/uttk/strategies/Pool.rb --- lib/uttk/strategies/Pool.rb (revision 825) +++ lib/uttk/strategies/Pool.rb (working copy) @@ -8,6 +8,8 @@ module Strategies + # I'm a collection of strategies and I run all of them in a separated + # thread. class Pool < Collection include Concrete Index: lib/uttk/strategies/Import.rb --- lib/uttk/strategies/Import.rb (revision 825) +++ lib/uttk/strategies/Import.rb (working copy) @@ -8,6 +8,9 @@ module Strategies + # I can import a strategy from on another file. Just tell me which file + # using my _import_ attribute and which loader to use using my _loader_ + # attribute. class Import < Proxy include Concrete Index: NEWS --- NEWS (revision 825) +++ NEWS (working copy) @@ -4,8 +4,8 @@ * Templates: - They are now managed by the Rails generator. So, you new Rails installed to - use them. + They are now managed by the Rails generator. So, you need Rails installed + to use them. * Select your test from the command line: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060221/0a974457/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Tue Feb 21 20:13:03 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Wed, 22 Feb 2006 02:13:03 +0100 (MET) Subject: [Uttk-Patches] 830: Update the presentation. Message-ID: <20060222011303.DA66C26890@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/830 Index: ChangeLog from Nicolas Desprès Update the presentation. * SPEC.yml: Typo. * doc/presentation/presentation.textile: Fill the blanks and the english mistakes. SPEC.yml | 2 doc/presentation/presentation.textile | 157 ++++++++++++++++++++-------------- 2 files changed, 96 insertions(+), 63 deletions(-) Index: SPEC.yml --- SPEC.yml (revision 829) +++ SPEC.yml (working copy) @@ -14,7 +14,7 @@ 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 YAML, XML and HTML as output languages. + input languages and speaks YAML, XML and HTML as output languages. homepage: http://rubyforge.org/projects/uttk root_test_suite: test/uttk-distcheck.yml Index: doc/presentation/presentation.textile --- doc/presentation/presentation.textile (revision 829) +++ doc/presentation/presentation.textile (working copy) @@ -32,36 +32,41 @@ * You do not "see" what you are testing. * You give inputs, you get outputs. * You check the whole program. -* Pros -** You do not care about code details -** You can test anything that's suppose to behave like it -* Cons -** You cannot check each detail -** When it fails you do net know where it fails -** It can be very complex to test (GUI, Web, Net, System...) +* Advantages +** You do not care about code details. +** You can test anything that's suppose to behave like it should. +* Disadvantages +** You cannot check each detail. +** When it fails you do not know where it fails. +** It can be very complex to test (GUI, Web, Net, System...). t. White-Box testing -* You know what you are testing +* You know what you are testing. -* Pros -** Introspection -** You can build your tests using some other features of your project -** You can talk directly to your components -* Cons -** You can build your tests upon broken code -** Your tests does not simulate a real user +* Advantages +** Introspection. +** You can build your tests using some other features of your project. +** You can talk directly to your components. +* Disadvantages +** You can build your tests upon broken code. +** Your tests do not simulate a real user. t. Dynamic testing -* Orthogonal approaches -* You test something by *running* it -... +* Orthogonal approaches. +* You test something by *stressing/running*. +* You are closer to the real world usage. +* You can test things that cannot be white-box tested. t. Static testing -* You make a static analysis of the code (source/compiled) -... +You make a static analysis of your code, i.e: +* catch many more programming error (see also the _Lint_ project); +* detect dead code; +* warn to much nested @if@; +* warn about complexity issue; +* perform software metrics. t. Testing the gathering @@ -75,7 +80,17 @@ t. Unit testing -... +* Advantages +** Test one unit of a programming language. +** Close to the language used in the project. +** Powerful because based on a programming language. +** Easy to use because testers know the programming language. +** Easy to automate with reflexive languages. +* Disadvantages +** Hard to describe binary fixtures; +** Hard to check the system environment. +** May not stress some code. +** Hard to implement with non reflexive languages. t. Regression testing @@ -83,7 +98,13 @@ t. Functional/Integration testing -... +* Advantages +** Test the whole system. +** Test the system in the real world. +** Support reflexive and non reflexive languages. +* Disadvantages +** May not stress some code. +** Hard to set up. Uttk overview ------------- @@ -99,7 +120,9 @@ * Use more interesting structures than linear ones. -t. Why unify tests? +t. Why unified tests? + +Because it is so needed to deal with the whole log! t. Uttk actors @@ -113,7 +136,7 @@ * Loaders * Strategies -* Back-end via the logger: +* Back-end via the Logger: ** Filters ** Dumpers @@ -125,21 +148,21 @@ t. Strategies as first class components -* A strategy is not a test -* A test is an execution of a strategy instance +* A strategy is not a test. +* A test is an execution of a strategy instance. t. What is the strategy job -* Setup the environment to be able to run the test -* Run the test -* Decide the output status -* Clean up the environment -* Draw some information via the structured logger -** What are we testing -** What is the issue +* Setup the environment to be able to run the test. +* Run the test. +* Decide the output status. +* Clean up the environment. +* Draw some information via the structured logger. +** What are we testing? +** What is the issue? ** Why it's wrong... -t. What are statuses +t. What are status? * Pass: the test is successful * Fail(x%): the professor says that the student's answer is wrong but x% are ok (??ref?? != ??my??) @@ -161,10 +184,10 @@ t. The prologue section -* allocate resources -* log some useful information -* check the environment consistency -* skip if not feasible +* Allocate resources. +* Log some useful information. +* Check the environment consistency. +* Skip if the test is not feasible. * ... t. Run the real test (run_impl) @@ -175,8 +198,8 @@ t. The epilogue -* deallocate what was allocated in the prologue -* ... +* Free what was allocated in the prologue. +* Clean the test environment. t. Section protection schema @@ -186,7 +209,8 @@ t. Code by refinement -... +* We used a white inheriting approach. +* But end users mustn't know that much what is implemented in the super class. Some strategies --------------- @@ -198,33 +222,35 @@ * A base proxy => Proxy * Pass, Fail, Skip, Abort, Error -t. Running commands: The Cmd strategy - -... - t. Grouping tests: The Suite strategy -* The Composite design pattern -* Organize your tests as a tree -* Group and factorize the common parts +* The Composite design pattern. +* Organize your tests as a tree. +* Group and factorize the common parts. +* A suite is a sequence of test whereas a pool run test in parallel. t. The Iterate strategy -* You have a common test and some variable parts +* You have a common test and some variable parts. t. Test/RMatch * A strategy to test them all -* Used to bootstrap Uttk +* Used to bootstrap Uttk. + +t. Other strategies XUnit -t. Other strategies ... +* Up coming strategy. +* Aim at becoming a *unified* way to write unit test. +* Very small at the moment: only RUnit. +* Need more bindings... The front-end: Uttk loaders =========================== t. What is a loader? -* Something that makes a test (= instantiate a Strategy class) from something else +* Something that makes a test (= instantiate a Strategy class) from something else. * For instance, an XML loader makes a test from an XML document. * More generally, it's a class that implements the ??testify?? method. @@ -258,7 +284,7 @@ Ruby ---- -t. Ruby: A language for object-oriented scripting +t. Ruby: An object-oriented scripting language * Clean syntax because it avoids _magic_ words. * Highly reflexive, which makes us able to tune the syntax. @@ -271,7 +297,9 @@ S::Cmd.new("Test whether bc works fine") do command "bc" input "42*42\n" - output "1764\n" + output < svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/834 Index: ChangeLog from Nicolas Desprès Fix some typo. * doc/presentation/presentation.textile: . * lib/uttk/strategies/Bootstrap.rb: . * lib/uttk/strategies/Block.rb: . doc/presentation/presentation.textile | 2 ++ lib/uttk/strategies/Block.rb | 2 +- lib/uttk/strategies/Bootstrap.rb | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) Index: doc/presentation/presentation.textile --- doc/presentation/presentation.textile (revision 833) +++ doc/presentation/presentation.textile (working copy) @@ -125,6 +125,8 @@ t. The big picture +... + t. Uttk main components * Loaders Index: lib/uttk/strategies/Bootstrap.rb --- lib/uttk/strategies/Bootstrap.rb (revision 833) +++ lib/uttk/strategies/Bootstrap.rb (working copy) @@ -8,7 +8,7 @@ module Strategies - # Run the bootstarp(.sh)? script or a classic autoreconf. This strategy is + # Run the bootstrap(.sh)? script or a classic autoreconf. This strategy is # used by the _Package_ strategy in case of the tested package does use # the _autotools_ or not. class Bootstrap < Proxy Index: lib/uttk/strategies/Block.rb --- lib/uttk/strategies/Block.rb (revision 833) +++ lib/uttk/strategies/Block.rb (working copy) @@ -8,7 +8,7 @@ module Strategies - # I can evaluate a Ruby block. If the test fails if block raise an + # I can evaluate a Ruby block. The test fails if block raise an # excption or return a false/nil value. class Block < IOBased include Concrete -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060222/6b4ef7c3/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Wed Feb 22 04:33:05 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Wed, 22 Feb 2006 10:33:05 +0100 (MET) Subject: [Uttk-Patches] 836: Update the presentation. Message-ID: <20060222093305.BA286269AB@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/836 Index: ChangeLog from Nicolas Desprès Update the presentation. * doc/presentation/presentation.textile: Add two slides for the strategy extension. presentation.textile | 32 ++++++++++++++++++++++++++++---- 1 files changed, 28 insertions(+), 4 deletions(-) Index: doc/presentation/presentation.textile --- doc/presentation/presentation.textile (revision 835) +++ doc/presentation/presentation.textile (working copy) @@ -62,8 +62,8 @@ t. Static testing You make a static analysis of your code, i.e: -* catch many more programming error (see also the _Lint_ project); -* detect dead code; +* catch more programming errors (see also the _Lint_ project); +* detect dead codes; * warn to much nested @if@; * warn about complexity issue; * perform software metrics. @@ -122,7 +122,8 @@ t. Why unified tests? -Because it is so needed to deal with the whole log! +* Because it is so needed to deal with the whole log! +* To maximize the reuse. t. Uttk actors @@ -153,7 +154,7 @@ * A strategy is not a test. * A test is an execution of a strategy instance. -t. What is the strategy job +t. What is the strategy job? * Setup the environment to be able to run the test. * Run the test. @@ -247,6 +248,29 @@ * Very small at the moment: only RUnit. * Need more bindings... +Extend the strategies hierarchy +------------------------------- + +t. When? + +* Uttk to not fulfill your needs. +* Your need may be: +** specific +** general. + +t. How? + +* Write a sub class of an already made strategy. +* The higher in the hierarchy the harder the job is. +* The lower in the hierarchy the more feature you get for free. + +* Hook your new feature in the canvas: +** prologue: prepare the input of your complex input format. +** run_impl: only run your program. +** epilogue: clean some extra file that Uttk can't guess. +** assertion: use a specific diff algorithm for your unfriendly output. +** {pass,failed,skip,abort,error}_hook + The front-end: Uttk loaders =========================== -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060222/e0d29ff7/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 05:34:27 2006 From: nicolas.despres at gmail.com (=?ISO-8859-1?Q?Nicolas_Despr=E8s?=) Date: Thu, 23 Feb 2006 11:34:27 +0100 Subject: [Uttk-Patches] 825: Fix tutorials URL. In-Reply-To: References: <20060221192940.98A3126A17@pm-mx5.mx.noos.fr> Message-ID: <840b875c0602230234w2383d191v2ab4326c51976dd4@mail.gmail.com> On 2/23/06, Nicolas Pouillard wrote: > On 2/21/06, Nicolas Despr?s wrote: > > svn://svn.feydakins.org/ttk/trunk > > > > You can also view this changeset here: > > > > http://dev.uttk.org/repository/changesets/825 > > > > Index: ChangeLog > > from Nicolas Despr?s > > > > Fix tutorials URL. > > > > [...] > > > + # http://wiki.feydakins.org/uttk > > If the wiki grow too much this url will no more be relevant, so I > porpose to make a page Tutorials > and to put this link instead. > There is already this URL that contains a llink to the tutorial: http://uttk.org/shelf/documentation -- Nicolas Despr?s _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 07:03:54 2006 From: nicolas.despres at gmail.com (=?ISO-8859-1?Q?Nicolas_Despr=E8s?=) Date: Thu, 23 Feb 2006 13:03:54 +0100 Subject: [Uttk-Patches] 825: Fix tutorials URL. In-Reply-To: References: <20060221192940.98A3126A17@pm-mx5.mx.noos.fr> <840b875c0602230234w2383d191v2ab4326c51976dd4@mail.gmail.com> Message-ID: <840b875c0602230403p2b358df6n8b000b63250d00ad@mail.gmail.com> On 2/23/06, Nicolas Pouillard wrote: > On 2/23/06, Nicolas Despr?s wrote: > > On 2/23/06, Nicolas Pouillard wrote: > > > On 2/21/06, Nicolas Despr?s wrote: > > > > svn://svn.feydakins.org/ttk/trunk > > > > > > > > You can also view this changeset here: > > > > > > > > http://dev.uttk.org/repository/changesets/825 > > > > > > > > Index: ChangeLog > > > > from Nicolas Despr?s > > > > > > > > Fix tutorials URL. > > > > > > > > > > [...] > > > > > > > + # http://wiki.feydakins.org/uttk > > > > > > If the wiki grow too much this url will no more be relevant, so I > > > porpose to make a page Tutorials > > > and to put this link instead. > > > > > > > There is already this URL that contains a llink to the tutorial: > > > > http://uttk.org/shelf/documentation > > > > Ok perfect but I was just saying that this url > http://wiki.feydakins.org/uttk as the tuto url is not completly good. > Yes, I'll change it to the above one. -- Nicolas Despr?s _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 07:42:47 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Thu, 23 Feb 2006 13:42:47 +0100 (MET) Subject: [Uttk-Patches] 837: Change the tutorials URL. Message-ID: <20060223124247.7D284275D7@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/837 Index: ChangeLog from Nicolas Desprès Change the tutorials URL. * lib/uttk/filters/Filter.rb: . * lib/uttk/strategies/Strategy.rb: . * lib/uttk/strategies/Cmd.rb: . filters/Filter.rb | 2 +- strategies/Cmd.rb | 2 +- strategies/Strategy.rb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) Index: lib/uttk/filters/Filter.rb --- lib/uttk/filters/Filter.rb (revision 836) +++ lib/uttk/filters/Filter.rb (working copy) @@ -7,7 +7,7 @@ module Uttk # A tutorial introduces how to create new filters at - # http://wiki.feydakins.org/uttk + # http://uttk.org/shelf/documentation module Filters Index: lib/uttk/strategies/Strategy.rb --- lib/uttk/strategies/Strategy.rb (revision 836) +++ lib/uttk/strategies/Strategy.rb (working copy) @@ -10,7 +10,7 @@ module Uttk # A tutorial introduces how to create new strategies at - # http://wiki.feydakins.org/uttk + # http://uttk.org/shelf/documentation module Strategies # This is the base class for anything _testable_. It provides some basics Index: lib/uttk/strategies/Cmd.rb --- lib/uttk/strategies/Cmd.rb (revision 836) +++ lib/uttk/strategies/Cmd.rb (working copy) @@ -13,7 +13,7 @@ # given command its arguments, environment variables and standard input. # # A tutorial introduces how to use this strategy at - # http://wiki.feydakins.org/uttk + # http://uttk.org/shelf/documentation class Cmd < CmdBase include Concrete -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060223/4fa917ac/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 12:54:09 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Thu, 23 Feb 2006 18:54:09 +0100 (MET) Subject: [Uttk-Patches] [core_ex] 466: Update the NEWS file. Message-ID: <20060223175409.8FE65271FC@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ruby_ex/trunk/core_ex Index: ChangeLog from Nicolas Desprès Update the NEWS file. * NEWS: Updated for the upcoming release. NEWS | 19 +++++++++++++++++++ 1 files changed, 19 insertions(+) Index: NEWS --- NEWS (revision 465) +++ NEWS (working copy) @@ -1,3 +1,22 @@ += New in 0.5, 2006-02-24: + + This release make RubyEx compatible with ruby 1.8.4! + + Backward compatibility with older version of Ruby is no longer maintained. + + * LazyLoading: + Load Ruby files lazily. + + * DTime: + Is now Comparable and supports some arithmetic operators. + + * Numeric#fact: + Extend the Numeric module with a factorial method. + + * Version: + Follows a "Gentoo's approach". + + = New in 0.4, 2005-10-03: This release is mainly a bugfix release compatible with ruby 1.8.3! -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060223/7cc3f2f2/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 12:54:43 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Thu, 23 Feb 2006 18:54:43 +0100 (MET) Subject: [Uttk-Patches] [ruby_ex] 467: Update the NEWS file. Message-ID: <20060223175443.D7CA12793E@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ruby_ex/trunk Index: ChangeLog from Nicolas Desprès Update the NEWS file. * NEWS: Updated for the upcoming release. NEWS | 17 +++++++++++++++++ 1 files changed, 17 insertions(+) Index: NEWS --- NEWS (revision 466) +++ NEWS (working copy) @@ -1,3 +1,20 @@ += New in 0.2, 2006-02-24: + + This release make RubyEx compatible with ruby 1.8.4! + + Backward compatibility with older version of Ruby is no longer maintained. + + * RPath: + Introduced in the previous release. Now supports negative regular + expression. + + * Command: + - The pipe support is reloaded. + - Introduction of the NoRun and the Popen runners. + + * Uri extension: + Add support for the "rsync" uri. + = New in 0.3, 2005-10-03: This release make RubyEx compatible with ruby 1.8.3! -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060223/9fe126e0/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 12:57:03 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Thu, 23 Feb 2006 18:57:03 +0100 (MET) Subject: [Uttk-Patches] 839: Update NEWS and GUIDELINES. Message-ID: <20060223175703.9FEAE26F90@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/839 Index: ChangeLog from Nicolas Desprès Update NEWS and GUIDELINES. * NEWS: Add an item about Ruby compatibility. * GUIDELINES: Ensure to check the date in the NEWS file. GUIDELINES | 3 ++- NEWS | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) Index: NEWS --- NEWS (revision 838) +++ NEWS (working copy) @@ -2,6 +2,11 @@ This release is a minor which provides also some interesting improvements: + * Compatibility: + + Uttk is now fully compatible with Ruby 1.8.4. Backward compatibility with + older version of Ruby is no longer maintained. + * Templates: They are now managed by the Rails generator. So, you need Rails installed Index: GUIDELINES --- GUIDELINES (revision 838) +++ GUIDELINES (working copy) @@ -68,7 +68,8 @@ at project schedule and news. * Retrieve the latest development archive (Subversion). * Hunt FIXMEs. -* Update NEWS file with new version and its major changes. +* Update NEWS file with new version and its major changes. (Ensure the date is + the date of the realse day) * Update all version numbers (SPEC.yml, documentation, configure.ac ...). * Review the documentation. * Review all READMEs files. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060223/00480d1d/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 21:07:14 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Fri, 24 Feb 2006 03:07:14 +0100 (MET) Subject: [Uttk-Patches] 842: Update the release date. Message-ID: <20060224020714.9671826929@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/842 Index: ChangeLog from Nicolas Desprès Update the release date. * NEWS: Update the release date. NEWS | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: NEWS --- NEWS (revision 841) +++ NEWS (working copy) @@ -1,4 +1,4 @@ -= New in 0.3, 2005-16-06: += New in 0.3, 2006-02-24: This release is a minor which provides also some interesting improvements: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060224/d88c7b89/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 23:23:23 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Fri, 24 Feb 2006 05:23:23 +0100 (MET) Subject: [Uttk-Patches] 843: Update the AUTHORS. Message-ID: <20060224042323.4A36B26A6F@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/843 Index: ChangeLog from Nicolas Desprès Update the AUTHORS. * AUTHORS: Describe member roles instead of what member have implemented since the ChangeLog and Subversion already do that job. AUTHORS | 42 +++++++++++++++++++++--------------------- 1 files changed, 21 insertions(+), 21 deletions(-) Index: AUTHORS --- AUTHORS (revision 842) +++ AUTHORS (working copy) @@ -2,32 +2,32 @@ Uttk was written by and with the assistance of: - Vincent Cuissard : - - SqlQuery strategy - - A lot of feedback + - Observer + - Developer - Nicolas Desprès : - - Initial Design - - Maintenance - - Distributed mode - - Global kernel code review - - Current logger implementation + - Designer + - Developer + - Documentation manager + - Web site manager - Nicolas Pouillard : - - Initial Design - - Maintenance - - Abstract strategies - - Initial logger implementation - - YAML loader and dumper - - Current repository administration - - Mailing list administration - - Tracker administration + - Developer + - Designer + - Repository manager + - Mailing list manager + - Ticket manager + - Web site manager + - Release manager + - Package manager + - Documentation manager - Jerome Pouiller : - - Initial Design - - First repository administration - - Initial XML dumper + - Designer + - Developer + - Former repository manager - Marco Tessari : - - Initial Design - - YAML transformations (YPath) - - Author, Compile, Extract strategies + - Observer + - Designer + - Developer -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060224/e62d2c93/signature-0001.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Thu Feb 23 23:30:14 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Fri, 24 Feb 2006 05:30:14 +0100 (MET) Subject: [Uttk-Patches] 844: Add forgotten observers. Message-ID: <20060224043014.D3DD72692A@pm-mx6.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/844 Index: ChangeLog from Nicolas Desprès Add forgotten observers. * AUTHORS: Add forgotten "Observer" since every body mentioned in this file is an observer. AUTHORS | 3 +++ 1 files changed, 3 insertions(+) Index: AUTHORS --- AUTHORS (revision 843) +++ AUTHORS (working copy) @@ -6,12 +6,14 @@ - Developer - Nicolas Desprès : + - Observer - Designer - Developer - Documentation manager - Web site manager - Nicolas Pouillard : + - Observer - Developer - Designer - Repository manager @@ -23,6 +25,7 @@ - Documentation manager - Jerome Pouiller : + - Observer - Designer - Developer - Former repository manager -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060224/d72f721c/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches From nicolas.despres at gmail.com Fri Feb 24 07:52:10 2006 From: nicolas.despres at gmail.com (Nicolas Desprès) Date: Fri, 24 Feb 2006 13:52:10 +0100 (MET) Subject: [Uttk-Patches] 845: Update AUTHORS. Message-ID: <20060224125210.CDAD426C7F@pm-mx5.mx.noos.fr> svn://svn.feydakins.org/ttk/trunk You can also view this changeset here: http://dev.uttk.org/repository/changesets/845 Index: ChangeLog from Nicolas Desprès Update AUTHORS. * AUTHORS: Update Marco roles' description. * GUIDELINES: Fix typo. AUTHORS | 4 ++-- GUIDELINES | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) Index: AUTHORS --- AUTHORS (revision 844) +++ AUTHORS (working copy) @@ -30,7 +30,7 @@ - Developer - Former repository manager - - Marco Tessari : + - Marco Tessari : - Observer - Designer - - Developer + - Former developer Index: GUIDELINES --- GUIDELINES (revision 844) +++ GUIDELINES (working copy) @@ -69,7 +69,7 @@ * Retrieve the latest development archive (Subversion). * Hunt FIXMEs. * Update NEWS file with new version and its major changes. (Ensure the date is - the date of the realse day) + the date of the release day) * Update all version numbers (SPEC.yml, documentation, configure.ac ...). * Review the documentation. * Review all READMEs files. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: OpenPGP digital signature Url : http://rubyforge.org/pipermail/ttk-patches/attachments/20060224/953eba36/signature.bin -------------- next part -------------- _______________________________________________ Uttk-Patches mailing list Uttk-Patches at lists.feydakins.org http://mailman.feydakins.org/mailman/listinfo/uttk-patches