diff options
author | Daniel Colson <danieljamescolson@gmail.com> | 2017-01-17 23:13:37 -0500 |
---|---|---|
committer | Daniel Colson <danieljamescolson@gmail.com> | 2017-01-17 23:13:37 -0500 |
commit | 33d0d962b777a98f3bdda0be41ee03acc0410676 (patch) | |
tree | bd238ddda782d8918d9b798761cc7696e3ec6d94 /test | |
parent | ab109d3bf1c773da5e78ddc93bb6b55aebbb1c2a (diff) | |
download | rails-33d0d962b777a98f3bdda0be41ee03acc0410676.tar.gz rails-33d0d962b777a98f3bdda0be41ee03acc0410676.tar.bz2 rails-33d0d962b777a98f3bdda0be41ee03acc0410676.zip |
Raise custom error on empty join
Diffstat (limited to 'test')
-rw-r--r-- | test/test_select_manager.rb | 10 | ||||
-rw-r--r-- | test/test_table.rb | 6 |
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]) |