Sha256: 451b8e731cd8dae8fe7f895d08fd42413739fa47d057f5c5d8b8a01f23473d4c

Contents?: true

Size: 839 Bytes

Versions: 4

Compression:

Stored size: 839 Bytes

Contents

require 'phantomjs'

module Jasmine
  module Runners
    class PhantomJs
      def initialize(formatter, jasmine_server_url, result_batch_size)
        @formatter = formatter
        @jasmine_server_url = jasmine_server_url
        @result_batch_size = result_batch_size
      end

      def run
        command = "#{Phantomjs.path} '#{File.join(File.dirname(__FILE__), 'phantom_jasmine_run.js')}' #{jasmine_server_url} #{result_batch_size}"
        IO.popen(command) do |output|
          output.each do |line|
            raw_results = JSON.parse(line, :max_nesting => false)
            results = raw_results.map { |r| Result.new(r) }
            formatter.format(results)
          end
        end
        formatter.done
      end

      private
      attr_reader :formatter, :jasmine_server_url, :result_batch_size
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
jasmine-2.0.0 lib/jasmine/runners/phantom_js.rb
jasmine-2.0.0.rc5 lib/jasmine/runners/phantom_js.rb
jasmine-2.0.0.rc4 lib/jasmine/runners/phantom_js.rb
jasmine-2.0.0.rc3 lib/jasmine/runners/phantom_js.rb