Sha256: c60fc86748d4d6531026fb5ff716a97e80709273fde7074ccfd6760b65259f39

Contents?: true

Size: 777 Bytes

Versions: 11

Compression:

Stored size: 777 Bytes

Contents

module XCKnife
  module JsonStreamParserHelper
    extend self

    # Iterates over events, calling block once for each test_target/test event on a events (a parsed json_stream iterable)
    def each_test_event(events, &block)
      current_target = nil
      events.each do |result|
        current_target = result.targetName if result.event == "begin-ocunit"
        if result.test and result.event == "end-test"
          raise XCKnife::StreamParsingError, "No test target defined" if current_target.nil?
          block.call(current_target, normalize_result(result))
        end
      end
    end

    def normalize_result(result)
      if result.totalDuration.is_a?(String)
        result.totalDuration = result.totalDuration.to_f
      end
      result
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
xcknife-0.11.1 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.11.0 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.10.0 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.6 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.5 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.4 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.3 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.2 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.1 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.6.0 lib/xcknife/json_stream_parser_helper.rb
xcknife-0.5.0 lib/xcknife/json_stream_parser_helper.rb