From 33d0d962b777a98f3bdda0be41ee03acc0410676 Mon Sep 17 00:00:00 2001 From: Daniel Colson Date: Tue, 17 Jan 2017 23:13:37 -0500 Subject: Raise custom error on empty join --- lib/arel/errors.rb | 7 +++++++ lib/arel/select_manager.rb | 2 +- lib/arel/table.rb | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 lib/arel/errors.rb (limited to 'lib/arel') 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 -- cgit v1.2.3