Sha256: 25ac6c47397c80fd7a0d0005d9e2a43e08392793bc5a3e76223330bc51d87fb7
Contents?: true
Size: 1.98 KB
Versions: 1
Compression:
Stored size: 1.98 KB
Contents
require 'pathname' require 'uuid' require 'rspec/core/formatters/base_formatter' module AllureRSpec class Formatter < RSpec::Core::Formatters::BaseFormatter def example_failed(example) AllureRSpec::Builder.stop_test( example.metadata[:example_group][:description_args].first, example.metadata[:description], example.metadata[:execution_result].merge(:caller => example.metadata[:caller]) ) super end def example_group_finished(group) AllureRSpec::Builder.stop_suite(group.metadata[:example_group][:description_args].first) super end def example_group_started(group) AllureRSpec::Builder.start_suite(group.metadata[:example_group][:description_args].first) super end def example_passed(example) AllureRSpec::Builder.stop_test( example.metadata[:example_group][:description_args].first, example.metadata[:description], example.metadata[:execution_result].merge(:caller => example.metadata[:caller]) ) super end def example_pending(example) super end def example_started(example) suite = example.metadata[:example_group][:description_args].first test = example.metadata[:description] AllureRSpec::Builder.start_test(suite, test) super end def start(example_count) dir = Pathname.new(AllureRSpec::Config.output_dir) FileUtils.rm_rf(dir) end def stop AllureRSpec::Builder.each_suite_build do |suite, xml| dir = Pathname.new(AllureRSpec::Config.output_dir) FileUtils.mkdir_p(dir) out_file = dir.join("#{UUID.new.generate}.xml") File.open(out_file, 'w+') do |file| file.write(xml) end #xsd = Nokogiri::XML::Schema(File.read("allure-model.xsd")) #doc = Nokogiri::XML(File.read(out_file)) # #xsd.validate(doc).each do |error| # puts error.message #end end super end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
allure-rspec-0.3 | lib/allure-rspec/formatter.rb |