Sha256: b95e5c128eab899ad222f1c2f1dad024078eab58182554bd4d788014f44e8e74
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
require 'spec_helper' describe 'Veritas::Optimizer::Algebra::Restriction::OrderOperand#optimize' do subject { object.optimize } let(:klass) { Optimizer::Algebra::Restriction::OrderOperand } let(:base) { Relation.new([ [ :id, Integer ] ], [ [ 1 ] ].each) } let(:predicate) { base[:id].eq(1) } let(:object) { klass.new(relation) } before do object.operation.should be_kind_of(Algebra::Restriction) object.operand.should be_kind_of(Relation::Operation::Order) end context 'when new operation is optimizable' do let(:relation) { base.restrict(predicate).order.restrict(predicate) } it { should be_kind_of(Relation::Operation::Order) } its(:operand) { should eql(base.restrict(predicate)) } end context 'when new operation is not optimizable' do let(:relation) { base.order.restrict(predicate) } it { should be_kind_of(Relation::Operation::Order) } its(:operand) { should eql(base.restrict(predicate)) } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
veritas-0.0.2 | spec/unit/veritas/optimizer/algebra/restriction/order_operand/optimize_spec.rb |
veritas-0.0.1 | spec/unit/veritas/optimizer/algebra/restriction/order_operand/optimize_spec.rb |