Sha256: f9af14ac67595c6464a155e3bdd0c4b129c0607c5da604b73cb8912c271c17c3

Contents?: true

Size: 815 Bytes

Versions: 8

Compression:

Stored size: 815 Bytes

Contents

require 'open3'

module Evergreen
  class Spec
    attr_reader :name, :suite

    def initialize(suite, name)
      @suite = suite
      @name = name
    end

    def root
      suite.root
    end

    def full_path
      File.join(root, Evergreen.spec_dir, name)
    end

    def read
      if full_path =~ /\.coffee$/
        require 'coffee-script'
        CoffeeScript.compile(File.read(full_path))
      else
        File.read(full_path)
      end
    end
    alias_method :contents, :read

    def url
      "#{suite.mounted_at}/run/#{name}"
    end

    def passed?
      runner.passed?
    end

    def failure_messages
      runner.failure_messages
    end

    def exist?
      File.exist?(full_path)
    end

  protected

    def runner
      @runner ||= suite.runner.spec_runner(self)
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
evergreen-1.3.0 lib/evergreen/spec.rb
evergreen-1.2.0 lib/evergreen/spec.rb
evergreen-1.1.3 lib/evergreen/spec.rb
evergreen-1.1.2 lib/evergreen/spec.rb
evergreen-1.1.0 lib/evergreen/spec.rb
evergreen-1.0.1 lib/evergreen/spec.rb
evergreen-1.0.0 lib/evergreen/spec.rb
evergreen-1.0.0.rc lib/evergreen/spec.rb