attestify 0.1.0.pre.2 → 0.1.0.pre.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/attestify.rb +6 -1
- data/lib/attestify/assertions.rb +77 -72
- data/lib/attestify/assertions/output_assertion.rb +1 -3
- data/lib/attestify/autorun.rb +9 -1
- data/lib/attestify/cli.rb +1 -0
- data/lib/attestify/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7277786172463a5c2d2b1e37dcb5d9336e69465f
         | 
| 4 | 
            +
              data.tar.gz: 3b2bdd5dbcf9cc1cad6d36f23fc2e13bce86e84d
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 1da0ce79a1f218b79f81f1d299957657f6a8b7308896ecdc59dfc1e4450e55e50a03ed3d3882e2f8fc3a0664ffb0e7af7cad70fbeb75567936a9190dee559213
         | 
| 7 | 
            +
              data.tar.gz: eba4dafcd0f9bc8cafde2366fdf478af5a72e0490f136389083c2bbd16474b3418e7aaed97835920cb7447193f5e15d8ca2c7b6be743b5e371be9b4938b76879
         | 
    
        data/lib/attestify.rb
    CHANGED
    
    | @@ -20,7 +20,12 @@ module Attestify | |
| 20 20 | 
             
                @root ||= File.realpath(File.expand_path("../..", __FILE__)).freeze
         | 
| 21 21 | 
             
              end
         | 
| 22 22 |  | 
| 23 | 
            +
              def self.disable_autorun
         | 
| 24 | 
            +
                @autorun_disabled = true
         | 
| 25 | 
            +
                @autorun.disable if @autorun
         | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
             | 
| 23 28 | 
             
              def self.autorun
         | 
| 24 | 
            -
                @autorun ||= Attestify::Autorun.new.tap | 
| 29 | 
            +
                @autorun ||= Attestify::Autorun.new.tap { |a| a.enable unless @autorun_disabled }
         | 
| 25 30 | 
             
              end
         | 
| 26 31 | 
             
            end
         | 
    
        data/lib/attestify/assertions.rb
    CHANGED
    
    | @@ -9,100 +9,97 @@ module Attestify | |
| 9 9 | 
             
                autoload :OutputAssertion, "attestify/assertions/output_assertion"
         | 
| 10 10 |  | 
| 11 11 | 
             
                def assert(value, message = nil)
         | 
| 12 | 
            -
                  record_assert(value) {  | 
| 12 | 
            +
                  record_assert(value, message) { "Failed assertion." }
         | 
| 13 13 | 
             
                end
         | 
| 14 14 |  | 
| 15 15 | 
             
                def assert_empty(object, message = nil)
         | 
| 16 16 | 
             
                  if object.respond_to?(:empty?)
         | 
| 17 | 
            -
                    record_assert(object.empty | 
| 17 | 
            +
                    record_assert(object.empty?, message) { "Expected #{object.inspect} to be empty" }
         | 
| 18 18 | 
             
                  else
         | 
| 19 | 
            -
                    record_assert(false) {  | 
| 19 | 
            +
                    record_assert(false, message) { "Expected #{object.inspect} to be empty, but it didn't respond_to(:empty?)" }
         | 
| 20 20 | 
             
                  end
         | 
| 21 21 | 
             
                end
         | 
| 22 22 |  | 
| 23 23 | 
             
                def assert_equal(expected, actual, message = nil)
         | 
| 24 | 
            -
                  record_assert(expected == actual) {  | 
| 24 | 
            +
                  record_assert(expected == actual, message) { "Expected #{expected.inspect} == #{actual.inspect}" }
         | 
| 25 25 | 
             
                end
         | 
| 26 26 |  | 
| 27 27 | 
             
                def assert_in_delta(expected, actual, delta = 0.001, message = nil)
         | 
| 28 | 
            -
                  record_assert((expected - actual).abs < delta) do
         | 
| 29 | 
            -
                     | 
| 28 | 
            +
                  record_assert((expected - actual).abs < delta, message) do
         | 
| 29 | 
            +
                    "Expected #{expected.inspect} == #{actual.inspect} within #{delta.inspect}"
         | 
| 30 30 | 
             
                  end
         | 
| 31 31 | 
             
                end
         | 
| 32 32 |  | 
| 33 33 | 
             
                def assert_includes(collection, object, message = nil)
         | 
| 34 34 | 
             
                  if collection.respond_to?(:include?)
         | 
| 35 | 
            -
                    record_assert(collection.include?(object)) do
         | 
| 36 | 
            -
                       | 
| 35 | 
            +
                    record_assert(collection.include?(object), message) do
         | 
| 36 | 
            +
                      "Expected #{collection.inspect} to include?(#{object.inspect})"
         | 
| 37 37 | 
             
                    end
         | 
| 38 38 | 
             
                  else
         | 
| 39 | 
            -
                    record_assert(false) do
         | 
| 40 | 
            -
                       | 
| 41 | 
            -
                                 "but it didn't respond_to(:include?)"
         | 
| 39 | 
            +
                    record_assert(false, message) do
         | 
| 40 | 
            +
                      "Expected #{collection.inspect} to include?(#{object.inspect}), but it didn't respond_to(:include?)"
         | 
| 42 41 | 
             
                    end
         | 
| 43 42 | 
             
                  end
         | 
| 44 43 | 
             
                end
         | 
| 45 44 |  | 
| 46 45 | 
             
                def assert_instance_of(clazz, object, message = nil)
         | 
| 47 46 | 
             
                  if clazz.is_a?(Module)
         | 
| 48 | 
            -
                    record_assert(object.instance_of?(clazz)) do
         | 
| 49 | 
            -
                       | 
| 47 | 
            +
                    record_assert(object.instance_of?(clazz), message) do
         | 
| 48 | 
            +
                      "Expected #{object.inspect} to be an instance_of?(#{clazz.inspect})"
         | 
| 50 49 | 
             
                    end
         | 
| 51 50 | 
             
                  else
         | 
| 52 | 
            -
                    record_assert(false) do
         | 
| 53 | 
            -
                       | 
| 54 | 
            -
             | 
| 51 | 
            +
                    record_assert(false, message) do
         | 
| 52 | 
            +
                      "Expected #{object.inspect} to be an instance_of?(#{clazz.inspect}), " \
         | 
| 53 | 
            +
                      "but #{clazz.inspect} is not a Class or Module"
         | 
| 55 54 | 
             
                    end
         | 
| 56 55 | 
             
                  end
         | 
| 57 56 | 
             
                end
         | 
| 58 57 |  | 
| 59 58 | 
             
                def assert_kind_of(clazz, object, message = nil)
         | 
| 60 59 | 
             
                  if clazz.is_a?(Module)
         | 
| 61 | 
            -
                    record_assert(object.is_a?(clazz)) do
         | 
| 62 | 
            -
                       | 
| 60 | 
            +
                    record_assert(object.is_a?(clazz), message) do
         | 
| 61 | 
            +
                      "Expected #{object.inspect} to be a kind_of?(#{clazz.inspect})"
         | 
| 63 62 | 
             
                    end
         | 
| 64 63 | 
             
                  else
         | 
| 65 | 
            -
                    record_assert(false) do
         | 
| 66 | 
            -
                       | 
| 67 | 
            -
                                 "but #{clazz.inspect} is not a Class or Module"
         | 
| 64 | 
            +
                    record_assert(false, message) do
         | 
| 65 | 
            +
                      "Expected #{object.inspect} to be a kind_of?(#{clazz.inspect}), but #{clazz.inspect} is not a Class or Module"
         | 
| 68 66 | 
             
                    end
         | 
| 69 67 | 
             
                  end
         | 
| 70 68 | 
             
                end
         | 
| 71 69 |  | 
| 72 70 | 
             
                def assert_match(matcher, object, message = nil)
         | 
| 73 | 
            -
                  record_assert(matcher =~ object) {  | 
| 71 | 
            +
                  record_assert(matcher =~ object, message) { "Expected #{matcher.inspect} =~ #{object.inspect}" }
         | 
| 74 72 | 
             
                end
         | 
| 75 73 |  | 
| 76 74 | 
             
                def assert_nil(object, message = nil)
         | 
| 77 | 
            -
                  record_assert(object.nil | 
| 75 | 
            +
                  record_assert(object.nil?, message) { "Expected #{object.inspect} to be nil" }
         | 
| 78 76 | 
             
                end
         | 
| 79 77 |  | 
| 80 78 | 
             
                def assert_operator(left_operand, operator, right_operand, message = nil)
         | 
| 81 79 | 
             
                  if left_operand.respond_to?(operator)
         | 
| 82 | 
            -
                    record_assert(left_operand.send(operator, right_operand)) do
         | 
| 83 | 
            -
                       | 
| 80 | 
            +
                    record_assert(left_operand.send(operator, right_operand), message) do
         | 
| 81 | 
            +
                      "Expected #{left_operand.inspect} #{operator} #{right_operand.inspect}"
         | 
| 84 82 | 
             
                    end
         | 
| 85 83 | 
             
                  else
         | 
| 86 | 
            -
                    record_assert(false) do
         | 
| 87 | 
            -
                       | 
| 88 | 
            -
             | 
| 84 | 
            +
                    record_assert(false, message) do
         | 
| 85 | 
            +
                      "Expected #{left_operand.inspect} #{operator} #{right_operand.inspect}, " \
         | 
| 86 | 
            +
                      "but #{left_operand.inspect} didn't respond_to?(#{operator})"
         | 
| 89 87 | 
             
                    end
         | 
| 90 88 | 
             
                  end
         | 
| 91 89 | 
             
                end
         | 
| 92 90 |  | 
| 93 91 | 
             
                def assert_output(expected_stdout = nil, expected_stderr = nil, message = nil)
         | 
| 94 92 | 
             
                  stdout, stderr = capture_io { yield }
         | 
| 95 | 
            -
                  assertion = Attestify::Assertions::OutputAssertion.new(expected_stdout, expected_stderr, stdout, stderr | 
| 96 | 
            -
                  record_assert(assertion.assert) { assertion.message }
         | 
| 93 | 
            +
                  assertion = Attestify::Assertions::OutputAssertion.new(expected_stdout, expected_stderr, stdout, stderr)
         | 
| 94 | 
            +
                  record_assert(assertion.assert, message) { assertion.message }
         | 
| 97 95 | 
             
                end
         | 
| 98 96 |  | 
| 99 97 | 
             
                def assert_predicate(object, predicate, message = nil)
         | 
| 100 98 | 
             
                  if object.respond_to?(predicate)
         | 
| 101 | 
            -
                    record_assert(object.send(predicate)) {  | 
| 99 | 
            +
                    record_assert(object.send(predicate), message) { "Expected #{object.inspect} to be #{predicate}" }
         | 
| 102 100 | 
             
                  else
         | 
| 103 | 
            -
                    record_assert(false) do
         | 
| 104 | 
            -
                       | 
| 105 | 
            -
                                 "but #{object.inspect} didn't respond_to?(#{predicate})"
         | 
| 101 | 
            +
                    record_assert(false, message) do
         | 
| 102 | 
            +
                      "Expected #{object.inspect} to be #{predicate}, but #{object.inspect} didn't respond_to?(#{predicate})"
         | 
| 106 103 | 
             
                    end
         | 
| 107 104 | 
             
                  end
         | 
| 108 105 | 
             
                end
         | 
| @@ -111,11 +108,11 @@ module Attestify | |
| 111 108 | 
             
                  message = exceptions.pop if exceptions.last.is_a?(String)
         | 
| 112 109 | 
             
                  exceptions = [StandardError] if exceptions.empty?
         | 
| 113 110 | 
             
                  yield
         | 
| 114 | 
            -
                  record_assert(false) {  | 
| 111 | 
            +
                  record_assert(false, message) { "Expected one of: #{exceptions.inspect} to be raised, but nothing was raised" }
         | 
| 115 112 | 
             
                  return nil
         | 
| 116 113 | 
             
                rescue => e
         | 
| 117 | 
            -
                  record_assert(exceptions.any? { |x| e.is_a?(x) }) do
         | 
| 118 | 
            -
                     | 
| 114 | 
            +
                  record_assert(exceptions.any? { |x| e.is_a?(x) }, message) do
         | 
| 115 | 
            +
                    "Expected one of: #{exceptions.inspect} to be raised, but instead got: #{e.class.name}"
         | 
| 119 116 | 
             
                  end
         | 
| 120 117 |  | 
| 121 118 | 
             
                  return e
         | 
| @@ -123,31 +120,31 @@ module Attestify | |
| 123 120 |  | 
| 124 121 | 
             
                def assert_respond_to(object, method, message = nil)
         | 
| 125 122 | 
             
                  if method.is_a?(String) || method.is_a?(Symbol)
         | 
| 126 | 
            -
                    record_assert(object.respond_to?(method)) do
         | 
| 127 | 
            -
                       | 
| 123 | 
            +
                    record_assert(object.respond_to?(method), message) do
         | 
| 124 | 
            +
                      "Expected #{object.inspect} to respond_to?(#{method.inspect})"
         | 
| 128 125 | 
             
                    end
         | 
| 129 126 | 
             
                  else
         | 
| 130 | 
            -
                    record_assert(false) do
         | 
| 131 | 
            -
                       | 
| 132 | 
            -
             | 
| 127 | 
            +
                    record_assert(false, message) do
         | 
| 128 | 
            +
                      "Expected #{object.inspect} to respond_to?(#{method.inspect}), " \
         | 
| 129 | 
            +
                      "but #{method.inspect} is not a String or Symbol"
         | 
| 133 130 | 
             
                    end
         | 
| 134 131 | 
             
                  end
         | 
| 135 132 | 
             
                end
         | 
| 136 133 |  | 
| 137 134 | 
             
                def assert_same(expected, actual, message = nil)
         | 
| 138 | 
            -
                  record_assert(expected.equal?(actual)) {  | 
| 135 | 
            +
                  record_assert(expected.equal?(actual), message) { "Expected #{expected.inspect} is equal?(#{actual.inspect})" }
         | 
| 139 136 | 
             
                end
         | 
| 140 137 |  | 
| 141 138 | 
             
                def assert_silent(message = nil)
         | 
| 142 139 | 
             
                  stdout, stderr = capture_io { yield }
         | 
| 143 | 
            -
                  assertion = Attestify::Assertions::OutputAssertion.new("", "", stdout, stderr | 
| 140 | 
            +
                  assertion = Attestify::Assertions::OutputAssertion.new("", "", stdout, stderr)
         | 
| 144 141 |  | 
| 145 | 
            -
                  record_assert(assertion.assert) do
         | 
| 146 | 
            -
                     | 
| 142 | 
            +
                  record_assert(assertion.assert, message) do
         | 
| 143 | 
            +
                    "Expected silence, but instead got: $stdout: #{stdout.inspect}, and $stderr: #{stderr.inspect}"
         | 
| 147 144 | 
             
                  end
         | 
| 148 145 | 
             
                end
         | 
| 149 146 |  | 
| 150 | 
            -
                def assert_42(expected, message = nil) # rubocop:disable Metrics/ | 
| 147 | 
            +
                def assert_42(expected, message = nil) # rubocop:disable Metrics/MethodLength
         | 
| 151 148 | 
             
                  record_assert(
         | 
| 152 149 | 
             
                    if expected.is_a?(Numeric)
         | 
| 153 150 | 
             
                      expected == 42
         | 
| @@ -157,9 +154,9 @@ module Attestify | |
| 157 154 | 
             
                      expected.send("42?")
         | 
| 158 155 | 
             
                    elsif expected.respond_to?(:forty_two?)
         | 
| 159 156 | 
             
                      expected.forty_two?
         | 
| 160 | 
            -
                    end
         | 
| 157 | 
            +
                    end, message
         | 
| 161 158 | 
             
                  ) do
         | 
| 162 | 
            -
                     | 
| 159 | 
            +
                    "Answer to the Ultimate Question of Life, The Universe, and Everything is Incorrect"
         | 
| 163 160 | 
             
                  end
         | 
| 164 161 | 
             
                end
         | 
| 165 162 |  | 
| @@ -206,7 +203,7 @@ module Attestify | |
| 206 203 | 
             
                end
         | 
| 207 204 |  | 
| 208 205 | 
             
                def flunk(message = nil)
         | 
| 209 | 
            -
                  record_assert(false) {  | 
| 206 | 
            +
                  record_assert(false, message) { "Flunked assertion." }
         | 
| 210 207 | 
             
                end
         | 
| 211 208 |  | 
| 212 209 | 
             
                def pass(_message = nil)
         | 
| @@ -214,31 +211,31 @@ module Attestify | |
| 214 211 | 
             
                end
         | 
| 215 212 |  | 
| 216 213 | 
             
                def refute(value, message = nil)
         | 
| 217 | 
            -
                  record_assert(!value) {  | 
| 214 | 
            +
                  record_assert(!value, message) { "Failed refutation." }
         | 
| 218 215 | 
             
                end
         | 
| 219 216 |  | 
| 220 217 | 
             
                def refute_empty(object, message = nil)
         | 
| 221 218 | 
             
                  if object.respond_to?(:empty?)
         | 
| 222 | 
            -
                    record_assert(!object.empty | 
| 219 | 
            +
                    record_assert(!object.empty?, message) { "Expected #{object.inspect} to not be empty" }
         | 
| 223 220 | 
             
                  else
         | 
| 224 221 | 
             
                    pass
         | 
| 225 222 | 
             
                  end
         | 
| 226 223 | 
             
                end
         | 
| 227 224 |  | 
| 228 225 | 
             
                def refute_equal(expected, actual, message = nil)
         | 
| 229 | 
            -
                  record_assert(expected != actual) {  | 
| 226 | 
            +
                  record_assert(expected != actual, message) { "Expected #{expected.inspect} != #{actual.inspect}" }
         | 
| 230 227 | 
             
                end
         | 
| 231 228 |  | 
| 232 229 | 
             
                def refute_in_delta(expected, actual, delta = 0.001, message = nil)
         | 
| 233 | 
            -
                  record_assert((expected - actual).abs >= delta) do
         | 
| 234 | 
            -
                     | 
| 230 | 
            +
                  record_assert((expected - actual).abs >= delta, message) do
         | 
| 231 | 
            +
                    "Expected #{expected.inspect} != #{actual.inspect} within #{delta.inspect}"
         | 
| 235 232 | 
             
                  end
         | 
| 236 233 | 
             
                end
         | 
| 237 234 |  | 
| 238 235 | 
             
                def refute_includes(collection, object, message = nil)
         | 
| 239 236 | 
             
                  if collection.respond_to?(:include?)
         | 
| 240 | 
            -
                    record_assert(!collection.include?(object)) do
         | 
| 241 | 
            -
                       | 
| 237 | 
            +
                    record_assert(!collection.include?(object), message) do
         | 
| 238 | 
            +
                      "Expected #{collection.inspect} to not include?(#{object.inspect})"
         | 
| 242 239 | 
             
                    end
         | 
| 243 240 | 
             
                  else
         | 
| 244 241 | 
             
                    pass
         | 
| @@ -247,8 +244,8 @@ module Attestify | |
| 247 244 |  | 
| 248 245 | 
             
                def refute_instance_of(clazz, object, message = nil)
         | 
| 249 246 | 
             
                  if clazz.is_a?(Module)
         | 
| 250 | 
            -
                    record_assert(!object.instance_of?(clazz)) do
         | 
| 251 | 
            -
                       | 
| 247 | 
            +
                    record_assert(!object.instance_of?(clazz), message) do
         | 
| 248 | 
            +
                      "Expected #{object.inspect} to not be an instance_of?(#{clazz.inspect})"
         | 
| 252 249 | 
             
                    end
         | 
| 253 250 | 
             
                  else
         | 
| 254 251 | 
             
                    pass
         | 
| @@ -257,8 +254,8 @@ module Attestify | |
| 257 254 |  | 
| 258 255 | 
             
                def refute_kind_of(clazz, object, message = nil)
         | 
| 259 256 | 
             
                  if clazz.is_a?(Module)
         | 
| 260 | 
            -
                    record_assert(!object.is_a?(clazz)) do
         | 
| 261 | 
            -
                       | 
| 257 | 
            +
                    record_assert(!object.is_a?(clazz), message) do
         | 
| 258 | 
            +
                      "Expected #{object.inspect} to not be a kind_of?(#{clazz.inspect})"
         | 
| 262 259 | 
             
                    end
         | 
| 263 260 | 
             
                  else
         | 
| 264 261 | 
             
                    pass
         | 
| @@ -266,17 +263,17 @@ module Attestify | |
| 266 263 | 
             
                end
         | 
| 267 264 |  | 
| 268 265 | 
             
                def refute_match(matcher, object, message = nil)
         | 
| 269 | 
            -
                  record_assert(!(matcher =~ object)) {  | 
| 266 | 
            +
                  record_assert(!(matcher =~ object), message) { "Expected not #{matcher.inspect} =~ #{object.inspect}" }
         | 
| 270 267 | 
             
                end
         | 
| 271 268 |  | 
| 272 269 | 
             
                def refute_nil(object, message = nil)
         | 
| 273 | 
            -
                  record_assert(!object.nil | 
| 270 | 
            +
                  record_assert(!object.nil?, message) { "Expected #{object.inspect} to not be nil" }
         | 
| 274 271 | 
             
                end
         | 
| 275 272 |  | 
| 276 273 | 
             
                def refute_operator(left_operand, operator, right_operand, message = nil)
         | 
| 277 274 | 
             
                  if left_operand.respond_to?(operator)
         | 
| 278 | 
            -
                    record_assert(!left_operand.send(operator, right_operand)) do
         | 
| 279 | 
            -
                       | 
| 275 | 
            +
                    record_assert(!left_operand.send(operator, right_operand), message) do
         | 
| 276 | 
            +
                      "Expected not #{left_operand.inspect} #{operator} #{right_operand.inspect}"
         | 
| 280 277 | 
             
                    end
         | 
| 281 278 | 
             
                  else
         | 
| 282 279 | 
             
                    pass
         | 
| @@ -285,7 +282,7 @@ module Attestify | |
| 285 282 |  | 
| 286 283 | 
             
                def refute_predicate(object, predicate, message = nil)
         | 
| 287 284 | 
             
                  if object.respond_to?(predicate)
         | 
| 288 | 
            -
                    record_assert(!object.send(predicate)) {  | 
| 285 | 
            +
                    record_assert(!object.send(predicate), message) { "Expected not #{object.inspect} #{predicate}" }
         | 
| 289 286 | 
             
                  else
         | 
| 290 287 | 
             
                    pass
         | 
| 291 288 | 
             
                  end
         | 
| @@ -293,8 +290,8 @@ module Attestify | |
| 293 290 |  | 
| 294 291 | 
             
                def refute_respond_to(object, method, message = nil)
         | 
| 295 292 | 
             
                  if method.is_a?(String) || method.is_a?(Symbol)
         | 
| 296 | 
            -
                    record_assert(!object.respond_to?(method)) do
         | 
| 297 | 
            -
                       | 
| 293 | 
            +
                    record_assert(!object.respond_to?(method), message) do
         | 
| 294 | 
            +
                      "Expected #{object.inspect} to not respond_to?(#{method.inspect})"
         | 
| 298 295 | 
             
                    end
         | 
| 299 296 | 
             
                  else
         | 
| 300 297 | 
             
                    pass
         | 
| @@ -302,8 +299,8 @@ module Attestify | |
| 302 299 | 
             
                end
         | 
| 303 300 |  | 
| 304 301 | 
             
                def refute_same(expected, actual, message = nil)
         | 
| 305 | 
            -
                  record_assert(!expected.equal?(actual)) do
         | 
| 306 | 
            -
                     | 
| 302 | 
            +
                  record_assert(!expected.equal?(actual), message) do
         | 
| 303 | 
            +
                    "Expected #{expected.inspect} is not equal?(#{actual.inspect})"
         | 
| 307 304 | 
             
                  end
         | 
| 308 305 | 
             
                end
         | 
| 309 306 |  | 
| @@ -323,11 +320,19 @@ module Attestify | |
| 323 320 |  | 
| 324 321 | 
             
                private
         | 
| 325 322 |  | 
| 326 | 
            -
                def record_assert(passed)
         | 
| 323 | 
            +
                def record_assert(passed, message = nil)
         | 
| 327 324 | 
             
                  if passed
         | 
| 328 325 | 
             
                    assertions.record(passed)
         | 
| 329 326 | 
             
                  else
         | 
| 330 | 
            -
                    assertions.record(passed, yield, caller_locations(2))
         | 
| 327 | 
            +
                    assertions.record(passed, combine_message(message, yield), caller_locations(2))
         | 
| 328 | 
            +
                  end
         | 
| 329 | 
            +
                end
         | 
| 330 | 
            +
             | 
| 331 | 
            +
                def combine_message(message, default_message)
         | 
| 332 | 
            +
                  if message && !message.empty?
         | 
| 333 | 
            +
                    "#{message}\n#{default_message}"
         | 
| 334 | 
            +
                  else
         | 
| 335 | 
            +
                    default_message
         | 
| 331 336 | 
             
                  end
         | 
| 332 337 | 
             
                end
         | 
| 333 338 | 
             
              end
         | 
| @@ -2,12 +2,11 @@ module Attestify | |
| 2 2 | 
             
              module Assertions
         | 
| 3 3 | 
             
                # A helper class for Attestify::Assertions#assert_output.
         | 
| 4 4 | 
             
                class OutputAssertion
         | 
| 5 | 
            -
                  def initialize(expected_stdout, expected_stderr, stdout, stderr | 
| 5 | 
            +
                  def initialize(expected_stdout, expected_stderr, stdout, stderr)
         | 
| 6 6 | 
             
                    @expected_stdout = expected_stdout
         | 
| 7 7 | 
             
                    @expected_stderr = expected_stderr
         | 
| 8 8 | 
             
                    @stdout = stdout
         | 
| 9 9 | 
             
                    @stderr = stderr
         | 
| 10 | 
            -
                    @message = message
         | 
| 11 10 | 
             
                  end
         | 
| 12 11 |  | 
| 13 12 | 
             
                  def assert
         | 
| @@ -15,7 +14,6 @@ module Attestify | |
| 15 14 | 
             
                  end
         | 
| 16 15 |  | 
| 17 16 | 
             
                  def message
         | 
| 18 | 
            -
                    return @message if @message
         | 
| 19 17 | 
             
                    messages = [stdout_message, stderr_message]
         | 
| 20 18 | 
             
                    "Expected #{messages.compact.join(", and ")}"
         | 
| 21 19 | 
             
                  end
         | 
    
        data/lib/attestify/autorun.rb
    CHANGED
    
    | @@ -23,14 +23,22 @@ module Attestify | |
| 23 23 | 
             
                    end
         | 
| 24 24 | 
             
                end
         | 
| 25 25 |  | 
| 26 | 
            +
                def disable
         | 
| 27 | 
            +
                  @disabled = true
         | 
| 28 | 
            +
                end
         | 
| 29 | 
            +
             | 
| 26 30 | 
             
                def enable
         | 
| 27 31 | 
             
                  parse_options
         | 
| 28 32 | 
             
                  require_helper
         | 
| 29 | 
            -
                  at_exit {  | 
| 33 | 
            +
                  at_exit { at_exit_hook }
         | 
| 30 34 | 
             
                end
         | 
| 31 35 |  | 
| 32 36 | 
             
                private
         | 
| 33 37 |  | 
| 38 | 
            +
                def at_exit_hook
         | 
| 39 | 
            +
                  start unless @disabled
         | 
| 40 | 
            +
                end
         | 
| 41 | 
            +
             | 
| 34 42 | 
             
                def parse_options
         | 
| 35 43 | 
             
                  option_parser.parse!(@args)
         | 
| 36 44 | 
             
                end
         | 
    
        data/lib/attestify/cli.rb
    CHANGED
    
    
    
        data/lib/attestify/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: attestify
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1.0.pre. | 
| 4 | 
            +
              version: 0.1.0.pre.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Mike Virata-Stone
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2016- | 
| 11 | 
            +
            date: 2016-10-12 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         |