added RSpec and RSpec on Rails
This commit is contained in:
parent
ddd5b4cf19
commit
3f607d565b
316 changed files with 23828 additions and 0 deletions
63
vendor/gems/rspec-1.1.2/examples/pure/stack_spec.rb
vendored
Normal file
63
vendor/gems/rspec-1.1.2/examples/pure/stack_spec.rb
vendored
Normal file
|
@ -0,0 +1,63 @@
|
|||
require File.dirname(__FILE__) + '/spec_helper'
|
||||
require File.dirname(__FILE__) + "/stack"
|
||||
require File.dirname(__FILE__) + '/shared_stack_examples'
|
||||
|
||||
describe Stack, " (empty)" do
|
||||
before(:each) do
|
||||
@stack = Stack.new
|
||||
end
|
||||
|
||||
# NOTE that this one auto-generates the description "should be empty"
|
||||
it { @stack.should be_empty }
|
||||
|
||||
it_should_behave_like "non-full Stack"
|
||||
|
||||
it "should complain when sent #peek" do
|
||||
lambda { @stack.peek }.should raise_error(StackUnderflowError)
|
||||
end
|
||||
|
||||
it "should complain when sent #pop" do
|
||||
lambda { @stack.pop }.should raise_error(StackUnderflowError)
|
||||
end
|
||||
end
|
||||
|
||||
describe Stack, " (with one item)" do
|
||||
before(:each) do
|
||||
@stack = Stack.new
|
||||
@stack.push 3
|
||||
@last_item_added = 3
|
||||
end
|
||||
|
||||
it_should_behave_like "non-empty Stack"
|
||||
it_should_behave_like "non-full Stack"
|
||||
|
||||
end
|
||||
|
||||
describe Stack, " (with one item less than capacity)" do
|
||||
before(:each) do
|
||||
@stack = Stack.new
|
||||
(1..9).each { |i| @stack.push i }
|
||||
@last_item_added = 9
|
||||
end
|
||||
|
||||
it_should_behave_like "non-empty Stack"
|
||||
it_should_behave_like "non-full Stack"
|
||||
end
|
||||
|
||||
describe Stack, " (full)" do
|
||||
before(:each) do
|
||||
@stack = Stack.new
|
||||
(1..10).each { |i| @stack.push i }
|
||||
@last_item_added = 10
|
||||
end
|
||||
|
||||
# NOTE that this one auto-generates the description "should be full"
|
||||
it { @stack.should be_full }
|
||||
|
||||
it_should_behave_like "non-empty Stack"
|
||||
|
||||
it "should complain on #push" do
|
||||
lambda { @stack.push Object.new }.should raise_error(StackOverflowError)
|
||||
end
|
||||
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue