Sha256: f3b618486c1ab22a88ec007463af50bbdc6ecd52422c7b9d3b0e683473d9b778
Contents?: true
Size: 1.07 KB
Versions: 2
Compression:
Stored size: 1.07 KB
Contents
module OutputHelpers extend RSpec::Matchers::DSL matcher :return_and_output do |expected, *lines| supports_block_expectations match do |block| stdout = lines.flatten.join("\n") + "\n" begin expect{@return = block.call}.to output(stdout).to_stdout rescue Exception => error @error = error return false else return values_match? expected, @return end end failure_message do |block| if @error return @error else return "expected #{block} to return #{expected}, but returned #{@return}" end end end matcher :output_table do |lines| supports_block_expectations match do |block| stdout = Regexp.new('^' + lines.map{|fields| fields.join('\s+')}.join('\n') + '\n$', Regexp::MULTILINE) begin expect{@return = block.call}.to output(stdout).to_stdout rescue Exception => error @error = error return false else return true end end failure_message do |block| return @error end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kontena-cli-1.1.0.rc1 | spec/support/output_helpers.rb |
kontena-cli-1.1.0.pre1 | spec/support/output_helpers.rb |