Files
gitlabhq/spec/lib/gitlab/sql/union_spec.rb
T
Yorick Peterse d769596aec Added Gitlab::SQL::Union class
This class can be used to join multiple AcitveRecord::Relation objects
together using a SQL UNION statement. ActiveRecord < 5.0 sadly doesn't
support UNION and existing Gems out there don't handle prepared
statements (e.g. they never incremented the variable bindings).
2015-11-18 13:02:43 +01:00

17 lines
458 B
Ruby

require 'spec_helper'
describe Gitlab::SQL::Union do
describe '#to_sql' do
it 'returns a String joining relations together using a UNION' do
rel1 = User.where(email: 'alice@example.com')
rel2 = User.where(email: 'bob@example.com')
union = described_class.new([rel1, rel2])
sql1 = rel1.reorder(nil).to_sql
sql2 = rel2.reorder(nil).to_sql
expect(union.to_sql).to eq("(#{sql1}) UNION (#{sql2})")
end
end
end