Sha256: 83eaf410d2769939ef69adbfd24544cdd97a99b2cff7fd00c895f10b63746fb7

Contents?: true

Size: 1.81 KB

Versions: 11

Compression:

Stored size: 1.81 KB

Contents

module Coveralls
  require "thor"

  class CommandLine < Thor

    desc "push", "Runs your test suite and pushes the coverage results to Coveralls."
    def push
      return unless ensure_can_run_locally!
      ENV["COVERALLS_RUN_LOCALLY"] = "true"
      cmd = "bundle exec rake"
      if File.exists?('.travis.yml')
        cmd = YAML.load_file('.travis.yml')["script"] || cmd rescue cmd
      end
      exec cmd
      ENV["COVERALLS_RUN_LOCALLY"] = nil
    end

    desc "report", "Runs your test suite locally and displays coverage statistics."
    def report
      ENV["COVERALLS_NOISY"] = "true"
      exec "bundle exec rake"
      ENV["COVERALLS_NOISY"] = nil
    end

    desc "open", "View this repository on Coveralls."
    def open
      open_token_based_url "https://coveralls.io/repos/%@"
    end

    desc "service", "View this repository on your CI service's website."
    def service
      open_token_based_url "https://coveralls.io/repos/%@/service"
    end

    desc "last", "View the last build for this repository on Coveralls."
    def last
      open_token_based_url "https://coveralls.io/repos/%@/last_build"
    end

    desc "version", "See version"
    def version
      puts Coveralls::VERSION
    end

    private

    def open_token_based_url url
      config = Coveralls::Configuration.configuration
      if config[:repo_token]
        url = url.gsub("%@", config[:repo_token])
        `open #{url}`
      else
        puts "No repo_token configured."
      end
    end

    def ensure_can_run_locally!
      config = Coveralls::Configuration.configuration
      if config[:repo_token].nil?
        puts "Coveralls cannot run locally because no repo_secret_token is set in .coveralls.yml".red
        puts "Please try again when you get your act together.".red
        return false
      end
      true
    end

  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
coveralls-0.6.7 lib/coveralls/command.rb
coveralls-0.6.6 lib/coveralls/command.rb
coveralls-0.6.5 lib/coveralls/command.rb
coveralls-0.6.4 lib/coveralls/command.rb
coveralls-0.6.3 lib/coveralls/command.rb
coveralls-0.6.2 lib/coveralls/command.rb
coveralls-0.6.1 lib/coveralls/command.rb
coveralls-0.6.0 lib/coveralls/command.rb
coveralls-0.5.9 lib/coveralls/command.rb
coveralls-0.5.8 lib/coveralls/command.rb
coveralls-0.5.7 lib/coveralls/command.rb