aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2017-01-17 23:53:27 -0500
committerGitHub <noreply@github.com>2017-01-17 23:53:27 -0500
commitf5f81be73df89011fe9bc89915b99d81e0c9a67f (patch)
treebd238ddda782d8918d9b798761cc7696e3ec6d94 /test
parentab109d3bf1c773da5e78ddc93bb6b55aebbb1c2a (diff)
parent33d0d962b777a98f3bdda0be41ee03acc0410676 (diff)
downloadrails-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 'test')
-rw-r--r--test/test_select_manager.rb10
-rw-r--r--test/test_table.rb6
2 files changed, 16 insertions, 0 deletions
diff --git a/test/test_select_manager.rb b/test/test_select_manager.rb
index 9a225edeec..e88f0e8e11 100644
--- a/test/test_select_manager.rb
+++ b/test/test_select_manager.rb
@@ -618,6 +618,16 @@ module Arel
manager = Arel::SelectManager.new
manager.join(nil).must_equal manager
end
+
+ it 'raises EmptyJoinError on empty' do
+ left = Table.new :users
+ manager = Arel::SelectManager.new
+
+ manager.from left
+ assert_raises(EmptyJoinError) do
+ manager.join("")
+ end
+ end
end
describe 'outer join' do
diff --git a/test/test_table.rb b/test/test_table.rb
index 168fde370d..e36a6e3a41 100644
--- a/test/test_table.rb
+++ b/test/test_table.rb
@@ -71,6 +71,12 @@ module Arel
mgr.to_sql.must_be_like %{ SELECT FROM "users" }
end
+ it 'raises EmptyJoinError on empty' do
+ assert_raises(EmptyJoinError) do
+ @relation.join ""
+ end
+ end
+
it 'takes a second argument for join type' do
right = @relation.alias
predicate = @relation[:id].eq(right[:id])