def assert_keys coll, *keys
      check_responds_to coll, :[]

      check_not_empty keys

      assert keys.all? { |key| coll[key] },
             "Expected coll to include all keys"
    end
def assert_keys coll, *keys
      check_responds_to coll, :[]

      check_not_empty keys

      assert keys.all? { |key| coll[key] },
             "Expected coll to include all keys"
    end
If any key is not present in coll, raise AssertionFailureError,
 else return nil.

 @example Passing
   assert_keys {a: 2, b: 1}, :a, :b
   #=> nil

 @example Failing
   assert_keys {a: 2, b: 1}, :a, :b, :c
   # raises AssertionFailureError

 @param coll [#[]] collection of things
 @param *keys keys to check for

 @raise [AssertionFailureError] if coll does include every key
 @raise [ArgumentError] if coll doesn't respond to :[]

 @return [nil] if coll has every key