Sha256: 755982cb0892cdddedacfcd880c1abab7ac7d3ca6f47b8e309303050b5320a23

Contents?: true

Size: 724 Bytes

Versions: 1

Compression:

Stored size: 724 Bytes

Contents

require "spec_helper"

require "hamster/stack"

describe Hamster::Stack do

  [:pop, :dequeue].each do |method|

    describe "##{method}" do

      [
        [[], []],
        [["A"], []],
        [%w[A B], ["A"]],
        [%w[A B C], %w[A B]],
      ].each do |values, expected|

        describe "on #{values.inspect}" do

          before do
            @original = Hamster.stack(*values)
            @result = @original.send(method)
          end

          it "preserves the original" do
            @original.should == Hamster.stack(*values)
          end

          it "returns #{expected.inspect}" do
            @result.should == Hamster.stack(*expected)
          end

        end

      end

    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hamster-1.0.1.pre.rc.1 spec/hamster/stack/pop_spec.rb