Sha256: f8442b3ba0b360874c57ff67f02ac8a9f936248ce4e1a55903aa5065b609fa69

Contents?: true

Size: 1.3 KB

Versions: 2

Compression:

Stored size: 1.3 KB

Contents

module Jeka
  module Console
    
    def self.add_algorithms(dir)
      Jeka::Algorithm.reset
      ok = false
      Dir.glob(dir).each do |d|
        ok = true
        load d
      end
      ok
    end
    
    def self.run(n=1, output="analysis.jeka")
      error = false
      Jeka::Algorithm.run_all(n, output) do |p, t, o|
        self._show(p, t, o, false)
      end
    end
    
    def self.build
      error = false
      Jeka::Algorithm.build_all do |p, t, o|
        self._show(p, t, o, true)
      end
    end
    
    def self.test
      error = false
      Jeka::Algorithm.test_all do |p, t, o|
        self._show(p, t, o, false)
      end
    end
    
    def self._show(p, t, o, s)
      case t
        when :step
          p = p.to_s
          while p.length < 3
            p = " " + p
          end
          puts "[#{p}%] #{o}"
        when :output
          if s
            o = o.join
            if o.length > 0
              puts o
            end
          end
        when :test
          puts "       > #{o}"
        when :error
          o = o.join
          if o.length > 0
            puts o
          end
          error = true
        when :done
          if error
            puts "[100%] Some error occurs..."
          else
            puts "[100%] Done!"
          end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
jeka-0.2.3 lib/jeka/console.rb
jeka-0.2.2 lib/jeka/console.rb