Sha256: 1b6de377640ef73a6d46e0d3580e1cd8a86fcfef48b92ec91ac7cc133fc2673e

Contents?: true

Size: 909 Bytes

Versions: 4

Compression:

Stored size: 909 Bytes

Contents

module Snapdragon
  class Suite
    def initialize
      @specs = []
      @require_paths = Set.new
      @filtered = false
      @spec_query_param = ''
    end

    def add_spec_file(spec_file)
      if spec_file.filtered?
        @filtered = true
        @spec_query_param = spec_file.spec_query_param
      end
      @specs << spec_file
      @require_paths.merge(spec_file.require_paths)
    end

    def add_spec_files(spec_files)
      spec_files.each do |spec|
        add_spec_file(spec)
      end
    end

    def spec_files
      @specs
    end

    def output_spec_dependencies
      require_content = ""
      @require_paths.each do |require_path|
        f = File.open(require_path, 'r')
        require_content << f.read
        f.close
      end
      return require_content
    end

    def spec_query_param
      @spec_query_param
    end

    def filtered?
      @filtered
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
snapdragon-0.1.3 lib/snapdragon/suite.rb
snapdragon-0.1.2 lib/snapdragon/suite.rb
snapdragon-0.1.1 lib/snapdragon/suite.rb
snapdragon-0.1.0 lib/snapdragon/suite.rb