Sha256: c924bdd15306091ed0cf3701707ffc7f1b8a137e974509eaec5562c7cbca944f

Contents?: true

Size: 797 Bytes

Versions: 1

Compression:

Stored size: 797 Bytes

Contents

require 'listen'
require 'string/similarity'

require "retest/version"
require "retest/runner"
require "retest/repository"
require "retest/test_options"
require "retest/listen_options"
require "retest/options"

module Retest
  class Error < StandardError; end

  def self.start(command)
    puts "Launching Retest..."

    build(runner: Retest::Runner.for(command))
      .start

    puts "Ready to refactor! You can make file changes now"
  end

  def self.build(runner:)
    Listen.to('.', ListenOptions.to_h) do |modified, added, removed|
      begin
        if modified.any?
          system('clear 2>/dev/null') || system('cls 2>/dev/null')
          runner.run(modified.first.strip)
        end
      rescue => e
        puts "Something went wrong: #{e.message}"
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
retest-0.7.0 lib/retest.rb