Sha256: 5834495bb2ad9c80a7bc823739638e9239ea80e6d7027413bed8badf616c2b03

Contents?: true

Size: 870 Bytes

Versions: 5

Compression:

Stored size: 870 Bytes

Contents

require 'spec_helper'
module Alf::Shell::Operator
  describe Project do

    let(:input){ [] }
    subject{ Project.run(argv) }

    before do
      subject.should be_a(Alf::Operator::Relational::Project)
      subject.operands.should eq([input])
    end

    context "--no-allbut" do
      let(:argv){ [input, "--", "a", "b"] }
      specify{
        subject.attributes.should eq(Alf::AttrList[:a, :b])
        subject.allbut.should eq(false)
      }
    end

    context "--allbut" do
      let(:argv){ [input, "--allbut", "--", "a", "b"] }
      specify{
        subject.attributes.should eq(Alf::AttrList[:a, :b])
        subject.allbut.should eq(true)
      }
    end

    context "none projected" do
      let(:argv){ [input] }
      specify{
        subject.attributes.should eq(Alf::AttrList[])
        subject.allbut.should eq(false)
      }
    end

  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
alf-0.12.2 spec/unit/alf-shell/operator/test_project.rb
alf-0.12.1 spec/unit/alf-shell/operator/test_project.rb
alf-0.12.0 spec/unit/alf-shell/operator/test_project.rb
alf-0.11.1 spec/unit/alf-shell/operator/test_project.rb
alf-0.11.0 spec/unit/alf-shell/operator/test_project.rb