Sha256: ec4b5407474a6e50c5daf4916f2c940d7548dc6bc33d848d67d9c22a497253ea

Contents?: true

Size: 904 Bytes

Versions: 3

Compression:

Stored size: 904 Bytes

Contents

require File.join(File.dirname(__FILE__), *%w[spec_helper])

shared_examples_for "non-empty Stack" do

  it { @stack.should_not be_empty }

  it "should return the top item when sent #peek" do
    @stack.peek.should == @last_item_added
  end

  it "should NOT remove the top item when sent #peek" do
    @stack.peek.should == @last_item_added
    @stack.peek.should == @last_item_added
  end

  it "should return the top item when sent #pop" do
    @stack.pop.should == @last_item_added
  end

  it "should remove the top item when sent #pop" do
    @stack.pop.should == @last_item_added
    unless @stack.empty?
      @stack.pop.should_not == @last_item_added
    end
  end

end

shared_examples_for "non-full Stack" do

  it { @stack.should_not be_full }

  it "should add to the top when sent #push" do
    @stack.push "newly added top item"
    @stack.peek.should == "newly added top item"
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
picolena-0.1.6 rails_plugins/rspec/examples/pure/shared_stack_examples.rb
picolena-0.1.7 rails_plugins/rspec/examples/pure/shared_stack_examples.rb
picolena-0.1.8 rails_plugins/rspec/examples/pure/shared_stack_examples.rb