Sha256: 476edcd68d8b9ea7901a3b408186082ffc3e1fc37d6821a793e878aa6b134c89

Contents?: true

Size: 1.14 KB

Versions: 3

Compression:

Stored size: 1.14 KB

Contents

# Run me with:
#   $ watchr specs.watchr

# --------------------------------------------------
# Rules
# --------------------------------------------------
watch( '^test.*/test_.*\.rb'                 )  { |m| ruby  m[0] }
watch( '^lib/(.*)\.rb'                       )  { |m| ruby "test/test_#{m[1]}.rb" }
watch( '^lib/watchr/(.*)\.rb'                )  { |m| ruby "test/test_#{m[1]}.rb" }
watch( '^lib/watchr/event_handlers/(.*)\.rb' )  { |m| ruby "test/event_handlers/test_#{m[1]}.rb" }
watch( '^test/test_helper\.rb'               )  { ruby tests }

# --------------------------------------------------
# Signal Handling
# --------------------------------------------------
Signal.trap('QUIT') { ruby tests  } # Ctrl-\
Signal.trap('INT' ) { abort("\n") } # Ctrl-C

# --------------------------------------------------
# Helpers
# --------------------------------------------------
def ruby(*paths)
  run "ruby #{gem_opt} -I.:lib:test -e'%w( #{paths.flatten.join(' ')} ).each {|p| require p }'"
end

def tests
  Dir['test/**/test_*.rb'] - ['test/test_helper.rb']
end

def run( cmd )
  puts   cmd
  system cmd
end

def gem_opt
  defined?(Gem) ? "-rubygems" : ""
end

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
social_url_stats-0.0.1 vendor/ruby/1.9.1/gems/watchr-0.7/specs.watchr
watchr-0.7 specs.watchr
watchr-0.6 specs.watchr