Sha256: 66feb1272f617c320c0c2458ccbd8abdfc78348322e67cf89f7edd114bac2296

Contents?: true

Size: 564 Bytes

Versions: 5

Compression:

Stored size: 564 Bytes

Contents

# encoding: utf-8

require 'spec_helper'

describe Algebra::Projection, '#hash' do
  subject { object.hash }

  let(:body)       { [ [ 1, 'Dan Kubb' ], [ 2, 'Dan Kubb' ], [ 2, 'Alex Kubb'] ] }
  let(:operand)    { Relation.new([ [ :id, Integer ], [ :name, String ] ], body) }
  let(:attributes) { [ :id ]                                                     }
  let(:object)     { described_class.new(operand, attributes)                    }

  it_should_behave_like 'a hash method'

  it { should == described_class.hash ^ operand.hash ^ object.header.hash }
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
axiom-0.1.0 spec/unit/axiom/algebra/projection/hash_spec.rb
veritas-0.0.7 spec/unit/veritas/algebra/projection/hash_spec.rb
veritas-0.0.6 spec/unit/veritas/algebra/projection/hash_spec.rb
veritas-0.0.5 spec/unit/veritas/algebra/projection/hash_spec.rb
veritas-0.0.4 spec/unit/veritas/algebra/projection/hash_spec.rb