lib/teuton/case/dsl/expect.rb in teuton-2.7.3 vs lib/teuton/case/dsl/expect.rb in teuton-2.8.0

- old
+ new

@@ -16,14 +16,18 @@ end def expect2(cond, args = {}) @action_counter += 1 @action[:id] = @action_counter - @action[:check] = cond + if @result.exitcode < 0 + @action[:check] = false + @action[:result] = @action[:output] + else + @action[:check] = cond + @action[:result] = (args[:value] || @result.value) + end - @action[:result] = (args[:value] || @result.value) - @action[:alterations] = @result.alterations @action[:expected] = (args[:expected] || @result.expected) @report.lines << @action.clone weight(1.0) @@ -55,10 +59,18 @@ (real_value == value.to_i) end expect2 cond, value: real_value, expected: expect_value end + def expect_fail + @result.alterations = "Read exit code" + real_value = result.exitcode + expect_value = "Greater than 0" + cond = (real_value > 0) + expect2 cond, value: real_value, expected: expect_value + end + def expect_first(input, args = {}) @result.first output = input output = args[:expected] if args[:expected] expect2 input, expected: output @@ -91,9 +103,13 @@ input.each { |i| result.find(i) } else result.find(input) end expect2 result.count.eq(1), args + end + + def expect_ok + expect_exit 0 end def weight(value = nil) # Set weight value for the action if value.nil?