В `shoulda-matchers` уже есть матчер `allow_value`:
```ruby
it { should allow_value("isbn 1 2345 6789 0").for(:isbn) }
```