Sha256: 397f239ccbfae9877363ee3487e615654141842c6d06f4ab7abdcd028ae9f1a1

Contents?: true

Size: 1.15 KB

Versions: 2

Compression:

Stored size: 1.15 KB

Contents

class Autotestforphp
  class Result
    include REXML

    attr_reader(:num_tests,
                :num_assertions,
                :num_errors,
                :num_failures)

    def initialize(num_tests, num_assertions, num_errors, num_failures)
      @num_tests = num_tests
      @num_assertions = num_assertions
      @num_errors = num_errors
      @num_failures = num_failures
    end

    def message
      "#{num_tests} tests, #{num_assertions} assertions, #{num_failures} failures, #{num_errors} errors"
    end

    def image
      config = Autotestforphp::Notification::Config
      if num_failures == 0 and num_errors == 0
        config.success_image
      else
        config.fail_image
      end
    end

    def self.build_from_xml(xml)
      unless xml.is_a?(Document)
        xml = Document.new(xml)
      end
      results = XPath.first(xml, '//testsuite')
      num_tests = results.attributes["tests"].to_i
      num_failures = results.attributes["failures"].to_i
      num_errors = results.attributes["errors"].to_i
      num_assertions = results.attributes["assertions"].to_i
      new(num_tests, num_assertions, num_errors, num_failures)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fgrehm-autotestforphp-0.0.1 lib/autotestforphp/result.rb
fgrehm-autotestforphp-0.0.2 lib/autotestforphp/result.rb