Updated RubySpec source to d6754b35 except language/def_spec.rb.
[rbx.git] / spec / frozen / 1.8 / core / env / shared / each.rb
blobed8539218b3fa4c385cb182ec1532bec86eae72d
1 shared :env_each do |cmd|
2   describe "ENV.#{cmd}" do
4     it "returns each pair" do
5       orig = ENV.to_hash
6       e = []
7       begin
8         ENV.clear
9         ENV["foo"] = "bar"
10         ENV["baz"] = "boo"
11         ENV.send(cmd) { |k, v| e << [k, v] }
12         e.should include(["foo", "bar"])
13         e.should include(["baz", "boo"])
14       ensure
15         ENV.replace orig
16       end
17     end
19     ruby_version_is "" ... "1.8.7" do
20       it "raises LocalJumpError if no block given" do
21         lambda { ENV.send(cmd) }.should raise_error(LocalJumpError)
22       end
23     end
25     ruby_version_is "1.8.7" do
26       it "returns an Enumerator if called without a block" do
27         ENV.send(cmd).should be_kind_of(Enumerable::Enumerator)
28       end
29     end
31   end
32 end