1

テストを実行する小さなコンソール スクリプトを Ruby で作成しようとしています。私は、Peter Cooper によるこの Rake タスクに基づいています。

それは機能しますが、実行する前にコンソールをクリアするといいでしょう。

誰かがそれを行う方法を教えてもらえますか?

これが私がこれまでに持っているものです:

require 'find'
files = {}

session_count = 0

puts "Watching #{File.expand_path(File.dirname(__FILE__))}."

loop do
  changed = false
  Find.find(File.dirname(__FILE__)) do |file|
    next unless file =~ /\.rb$/
    ctime = File.ctime(file).to_i

    if ctime != files[file]
      files[file] = ctime
      changed = true
    end
  end

  if changed

    command = 'ruby -Itest test/**/*_test.rb'

    puts '---------------------------------------------------------------------------------------------------------'
    puts "[#{session_count}] #### Running:\n      #{command}"
    puts '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'

    puts `#{command}`

    puts '---------------------------------------------------------------------------------------------------------'
    puts "[#{session_count}] #### Done"
    puts '---------------------------------------------------------------------------------------------------------'

    session_count += 1

  end

  sleep 1
end

Mac OS 10.7.5 で Zsh 4.3.11 を使用しています。

4

1 に答える 1

4

あなたがすることができます:

 if changed
    system('clear') 
...
于 2013-02-22T03:09:16.293 に答える