Sha256: 64d011eeb7c1ff71eb53f1538d5d0bdc08b7f220d6c4d5a5a675981f1a8ca23c

Contents?: true

Size: 838 Bytes

Versions: 1

Compression:

Stored size: 838 Bytes

Contents

# encoding: utf-8

require 'spec_helper'

describe Relation::Base, '.new' do
  let(:name)   { 'users'.freeze                                }
  let(:header) { Relation::Header.coerce([ [ :id, Integer ] ]) }
  let(:object) { described_class                               }

  context 'when no tuples are provided' do
    subject { object.new(name, header) }

    it { should be_instance_of(described_class) }

    its(:name) { should equal(name) }

    its(:header) { should equal(header) }

    it { should be_empty }
  end

  context 'when tuples are provided' do
    subject { object.new(name, header, tuples) }

    let(:tuples) { LazyEnumerable.new([ [ 1 ] ]) }

    it { should be_instance_of(described_class) }

    its(:name) { should equal(name) }

    its(:header) { should equal(header) }

    it { should == tuples }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
axiom-0.1.0 spec/unit/axiom/relation/base/class_methods/new_spec.rb