diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2017-01-17 23:53:27 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-17 23:53:27 -0500 |
commit | f5f81be73df89011fe9bc89915b99d81e0c9a67f (patch) | |
tree | bd238ddda782d8918d9b798761cc7696e3ec6d94 /lib/arel | |
parent | ab109d3bf1c773da5e78ddc93bb6b55aebbb1c2a (diff) | |
parent | 33d0d962b777a98f3bdda0be41ee03acc0410676 (diff) | |
download | rails-f5f81be73df89011fe9bc89915b99d81e0c9a67f.tar.gz rails-f5f81be73df89011fe9bc89915b99d81e0c9a67f.tar.bz2 rails-f5f81be73df89011fe9bc89915b99d81e0c9a67f.zip |
Merge pull request #467 from composerinteralia/custom-errors
Raise custom error on empty join
Diffstat (limited to 'lib/arel')
-rw-r--r-- | lib/arel/errors.rb | 7 | ||||
-rw-r--r-- | lib/arel/select_manager.rb | 2 | ||||
-rw-r--r-- | lib/arel/table.rb | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/lib/arel/errors.rb b/lib/arel/errors.rb new file mode 100644 index 0000000000..c8a6af9f77 --- /dev/null +++ b/lib/arel/errors.rb @@ -0,0 +1,7 @@ +module Arel + class ArelError < StandardError + end + + class EmptyJoinError < ArelError + end +end diff --git a/lib/arel/select_manager.rb b/lib/arel/select_manager.rb index eae3bc8cbc..6af9b6fbe6 100644 --- a/lib/arel/select_manager.rb +++ b/lib/arel/select_manager.rb @@ -106,7 +106,7 @@ module Arel case relation when String, Nodes::SqlLiteral - raise if relation.empty? + raise EmptyJoinError if relation.empty? klass = Nodes::StringJoin end diff --git a/lib/arel/table.rb b/lib/arel/table.rb index 3e06f94272..130b7ea028 100644 --- a/lib/arel/table.rb +++ b/lib/arel/table.rb @@ -37,7 +37,7 @@ module Arel case relation when String, Nodes::SqlLiteral - raise if relation.empty? + raise EmptyJoinError if relation.empty? klass = Nodes::StringJoin end |