Module Uttk
In: lib/uttk/filters.rb
lib/uttk/logger.rb
lib/uttk/logger_factory.rb
lib/uttk/status.rb
lib/uttk/streams.rb
lib/uttk/version_id.rb
lib/uttk/weights.rb
lib/uttk/dumpers/Basic.rb
lib/uttk/dumpers/BasicColor.rb
lib/uttk/dumpers/Html.rb
lib/uttk/dumpers/Mail.rb
lib/uttk/dumpers/Path.rb
lib/uttk/dumpers/Xml.rb
lib/uttk/dumpers/Yaml.rb
lib/uttk/filters/Buffer.rb
lib/uttk/filters/Compact.rb
lib/uttk/filters/Default.rb
lib/uttk/filters/DefaultColor.rb
lib/uttk/filters/Id.rb
lib/uttk/filters/JustStatus.rb
lib/uttk/filters/KeepSkipBased.rb
lib/uttk/filters/NodeCut.rb
lib/uttk/filters/RPathFilter.rb
lib/uttk/filters/Saver.rb
lib/uttk/filters/TextFilter.rb
lib/uttk/generators/generator.rb
lib/uttk/generators/templates/dumper.rb
lib/uttk/generators/templates/filter.rb
lib/uttk/generators/templates/loader.rb
lib/uttk/generators/templates/path_filter.rb
lib/uttk/generators/templates/strategy-command.rb
lib/uttk/generators/templates/strategy.rb
lib/uttk/generators/templates/unit_test.rb
lib/uttk/loaders/Ruby.rb
lib/uttk/loaders/Yaml.rb
lib/uttk/logger/backend.rb
lib/uttk/logger/path.rb
lib/uttk/logger/section_node.rb
lib/uttk/logger/severity.rb
lib/uttk/logger/to_uttk_log.rb
lib/uttk/logger/verbosity.rb
lib/uttk/path_filters/ColorStatus.rb
lib/uttk/path_filters/PathFilter.rb
lib/uttk/path_filters/RemoveTypes.rb
lib/uttk/strategies/Abort.rb
lib/uttk/strategies/Assert.rb
lib/uttk/strategies/Authors.rb
lib/uttk/strategies/Block.rb
lib/uttk/strategies/Bootstrap.rb
lib/uttk/strategies/Checkout.rb
lib/uttk/strategies/Clean.rb
lib/uttk/strategies/Cmd.rb
lib/uttk/strategies/CmdBase.rb
lib/uttk/strategies/Collection.rb
lib/uttk/strategies/Command.rb
lib/uttk/strategies/Compile.rb
lib/uttk/strategies/Composite.rb
lib/uttk/strategies/Configure.rb
lib/uttk/strategies/Error.rb
lib/uttk/strategies/Fail.rb
lib/uttk/strategies/HostSelector.rb
lib/uttk/strategies/Import.rb
lib/uttk/strategies/IOBased.rb
lib/uttk/strategies/Iterate.rb
lib/uttk/strategies/Jump.rb
lib/uttk/strategies/JUnit.rb
lib/uttk/strategies/KillAll.rb
lib/uttk/strategies/Make.rb
lib/uttk/strategies/Package.rb
lib/uttk/strategies/PackageCollection.rb
lib/uttk/strategies/Pass.rb
lib/uttk/strategies/Pool.rb
lib/uttk/strategies/Proxy.rb
lib/uttk/strategies/RMatch.rb
lib/uttk/strategies/RUnit.rb
lib/uttk/strategies/SignalCmd.rb
lib/uttk/strategies/Sleep.rb
lib/uttk/strategies/SqlQuery.rb
lib/uttk/strategies/Stub.rb
lib/uttk/strategies/SubCmd.rb
lib/uttk/strategies/Suite.rb
lib/uttk/strategies/Test.rb
lib/uttk/strategies/Threshold.rb
lib/uttk/strategies/Composite/contents_eval.rb
lib/uttk/streams/Diff.rb
lib/uttk/streams/HexaDiff.rb
lib/uttk/streams/Stream.rb
lib/uttk/weights/WExpr.rb
lib/uttk/weights/WFloat.rb
lib/uttk/weights/WMin.rb
lib/uttk/dumpers/Dumper.rb
lib/uttk/loaders/Loader.rb
lib/uttk/strategies/Strategy.rb
lib/uttk/filters/Filter.rb
lib/uttk/weights/Weight.rb
lib/uttk.rb

Introduction

This is the Uttk namespace. All Uttk is included into this namespace. This module provides some function to set up and run a Uttk pipeline.

How to use Uttk as a library

FIXME: document me

Methods

Classes and Modules

Module Uttk::<
Module Uttk::Dumpers
Module Uttk::Filters
Module Uttk::Generators
Module Uttk::Loaders
Module Uttk::PathFilters
Module Uttk::Strategies
Module Uttk::Streams
Module Uttk::VersionId
Module Uttk::Weights
Class Uttk::AbortStatus
Class Uttk::ErrorStatus
Class Uttk::FailStatus
Class Uttk::Logger
Class Uttk::LoggerFactory
Class Uttk::ObserverError
Class Uttk::PassStatus
Class Uttk::RunningStatus
Class Uttk::SkipStatus
Class Uttk::StartStatus
Class Uttk::Status
Class Uttk::TimeoutAbortStatus
Class Uttk::UttkException

Constants

VersionId = ::Version.parse("dev-util/uttk-0.4_p2#Teenager")
UTTK_MODULES = []
S = Strategies   Modules shortcuts
L = Loaders
D = Dumpers
F = Filters
W = Weights
DEFAULT_OPTIONS = { :observers => [], :backend => STDOUT.tty? ? 'DefaultColor' : 'Default', :loader => Loaders::Yaml, :wclass => Weights::Default, :attributes => {}, #FIXME: freeze :symbols => {}, #FIXME: freeze :log_severity => Logger::Severity::INFO, :log_verbosity => 0, :log_section => [], #FIXME: freeze :benchmark => false, :profile => false, :dump_status => false, :cache_mode => false, :cache_proc => DumpableProc.new('|test, status| status.pass? or (status.is_a? Uttk::SkipStatus and status.weight.pass?)'   Set default options

Attributes

my_data  [R]  Contains the OCmd::Datas::Data object, the result of the command running.

Public Class methods

[Source]

# File lib/uttk.rb, line 278
  def self.bin
    Config::CONFIG["RUBY_INSTALL_NAME"].to_ocmd[dir.parent.parent + 'bin/uttk']
  end

Return the default logger factory

[Source]

# File lib/uttk.rb, line 256
  def self.default_log ( options=default_options,
                         log_factory=default_log_factory(options) )
    log = log_factory.create
    options[:observers] << options[:backend] if options[:observers].empty?
    options[:observers].each do |backend|
      Filters[backend].each do |obsv|
        raise ObserverError, obsv unless obsv.respond_to? :update
        log.add_observer(obsv)
      end
    end
    log.info_basicObserver do
      log.add_observer(Uttk::Dumpers::Basic.new(STDERR))
      nil
    end
    log
  end

Return the default logger factory

[Source]

# File lib/uttk.rb, line 242
  def self.default_log_factory ( options=default_options )
    log_factory = LoggerFactory.new
    if ENV.has_key?('UTTK_SEVERITY')
      log_factory.severity_level = ENV['UTTK_SEVERITY']
    else
      log_factory.severity_level = options[:log_severity]
    end
    log_factory.verbosity_level = options[:log_verbosity]
    log_factory.section_tree << Logger::SectionNode.new('basicObserver')
    log_factory.active_section = options[:log_section]
    log_factory
  end

[Source]

# File lib/uttk.rb, line 216
  def self.default_options
    DEFAULT_OPTIONS
  end

Return the default symbol table

[Source]

# File lib/uttk.rb, line 221
  def self.default_symtbl ( options=default_options,
                            log_factory=default_log_factory(options),
                            log=default_log(options, log_factory))
    symtbl = SymTbl.new(options)
    symtbl[:uttk] = Pathname.new($0).expand_path
    symtbl[:ruby] = Config::CONFIG['RUBY_INSTALL_PATH']
    symtbl['uttk-unit''uttk-unit'] = symtbl[:uttk_unit] =
      (Uttk.dir.parent.parent/'bin'/'uttk-unit').expand_path.cleanpath
    symtbl[:core_ex] = CoreEx.dir
    symtbl[:symtbl_class] = symtbl.class
    symtbl[:pwd] = Pathname.pwd.expand_path
    symtbl[:loader] = options[:loader].new
    symtbl[:log_factory] = log_factory
    symtbl[:log] = log
    symtbl[:cache] = {}
    symtbl[:cache_proc] = options[:cache_proc]
    symtbl[:suite_name] = 'root'
    symtbl
  end

[Source]

# File lib/uttk.rb, line 144
  def self.setup_autoload_all
    UTTK_MODULES.each do |uttk_module|
      uttk_module.setup_autoload
    end
  end

Evaluate code in the context of the Uttk module

[Source]

# File lib/uttk.rb, line 274
  def self.uttk_eval(string, symtbl, filename=__FILE__, lineno=1)
    eval(string, binding, filename, lineno)
  end

Public Instance methods

Autoload modules

[Source]

# File lib/uttk.rb, line 88
  def pathname_to_class(p)
    const = p.basename.to_s.sub(/\.rb$/, '')
    if const =~ ConstRegexp::RB_CONST
      const
    else
      raise(ArgumentError,
          "`#{p.to_s}' - your file doesn't follow our convention, " +
          "the filename must be equal to the class name you declared into.")
      nil
    end
  end

Protected Instance methods

[Source]

# File lib/uttk/generators/templates/strategy-command.rb, line 44
      def abort_hook
        @runner.abort @my_data if @runner and defined? @my_data
        super
      end

[Source]

# File lib/uttk/generators/templates/strategy-command.rb, line 33
      def assertion
        assert_cmd UM::StreamMatcher, @my_data,
                   :output => ...,
                   :error  => ...,
                   :exit   => ...
        # ...
        pass
      end

[Source]

# File lib/uttk/generators/templates/strategy-command.rb, line 51
      def epilogue
        @my_data.clean if defined? @my_data
        super
      end

[Source]

# File lib/uttk/generators/templates/strategy-command.rb, line 27
      def run_impl
        @my_data = @command.run @runner
      end

[Validate]