Sha256: 754e130b23700fa4b06ceb3c2714477e434ddc36d0ffd3c96c7615cf231794ff
Contents?: true
Size: 1.04 KB
Versions: 2
Compression:
Stored size: 1.04 KB
Contents
# encoding: utf-8 require 'spec_helper' describe Optimizer::Algebra::Summarization, '#summarizers' do subject { object.summarizers } let(:base) { Relation.new([[:id, Integer]], [[1]]) } let(:attribute) { Attribute::Object.new(:test) } let(:summarize_per) { TABLE_DEE } let(:relation) { base.summarize(summarize_per) { |r| r.add(attribute, function) } } let(:object) { described_class.new(relation) } before do expect(object.operation).to be_kind_of(Algebra::Summarization) end context 'when summarizers are optimized' do let(:function) { base[:id].sum } it { should eql(relation.summarizers) } end context 'when summarizers are not optimized' do let(:function) { Aggregate::Sum.new(Function::Numeric::Absolute.new(1)) } it { should_not be(relation.summarizers) } it { should eql(attribute => Aggregate::Sum.new(1)) } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
axiom-optimizer-0.2.0 | spec/unit/axiom/optimizer/algebra/summarization/summarizers_spec.rb |
axiom-optimizer-0.1.1 | spec/unit/axiom/optimizer/algebra/summarization/summarizers_spec.rb |