BracketErrorSuggestion
describe BracketErrorSuggestion do
it "suggests the place where invalid access happens" do
tree = {foo: { bar: [{baz: "foo"}] } }
BracketErrorSuggestion.enable do
expect{ tree[:foo][:bar][:baz] }.to raise_error(TypeError,
"no implicit conversion of Symbol into Integer, it attempted to access " +
"<Hash>[:foo][:bar][:baz] but <Hash>[:foo][:bar] is an Array")
expect{ tree[:foo][:baz][:bar] }.to raise_error(NoMethodError,
"undefined method `[]' for nil:NilClass, maybe it attempted to access: " +
"<Hash>[:foo][:baz][:bar] but <Hash>[:foo][:baz] is nil")
end
end
Installation
Add this line to your application's Gemfile:
gem 'bracket_error_suggestion'
And then execute:
$ bundle
Or install it yourself as:
$ gem install bracket_error_suggestion
Usage
TODO: Write usage instructions here
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request