mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Update to ruby/spec@7de852d
This commit is contained in:
parent
994833085a
commit
79671ec57e
135 changed files with 4415 additions and 4885 deletions
52
spec/ruby/core/env/element_reference_spec.rb
vendored
52
spec/ruby/core/env/element_reference_spec.rb
vendored
|
|
@ -27,40 +27,38 @@ describe "ENV.[]" do
|
|||
end
|
||||
end
|
||||
|
||||
with_feature :encoding do
|
||||
describe "ENV.[]" do
|
||||
before :each do
|
||||
@variable = "env_element_reference_encoding_specs"
|
||||
describe "ENV.[]" do
|
||||
before :each do
|
||||
@variable = "env_element_reference_encoding_specs"
|
||||
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
end
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
end
|
||||
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
|
||||
ENV.delete @variable
|
||||
end
|
||||
ENV.delete @variable
|
||||
end
|
||||
|
||||
it "uses the locale encoding if Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
it "uses the locale encoding if Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
|
||||
locale = Encoding.find('locale')
|
||||
locale = Encoding::ASCII_8BIT if locale == Encoding::US_ASCII
|
||||
ENV[@variable] = "\xC3\xB8"
|
||||
ENV[@variable].encoding.should == locale
|
||||
end
|
||||
locale = Encoding.find('locale')
|
||||
locale = Encoding::ASCII_8BIT if locale == Encoding::US_ASCII
|
||||
ENV[@variable] = "\xC3\xB8"
|
||||
ENV[@variable].encoding.should == locale
|
||||
end
|
||||
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
# We cannot reliably know the locale encoding, so we merely check that
|
||||
# the result string has the expected encoding.
|
||||
ENV[@variable] = ""
|
||||
Encoding.default_internal = Encoding::IBM437
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
# We cannot reliably know the locale encoding, so we merely check that
|
||||
# the result string has the expected encoding.
|
||||
ENV[@variable] = ""
|
||||
Encoding.default_internal = Encoding::IBM437
|
||||
|
||||
ENV[@variable].encoding.should equal(Encoding::IBM437)
|
||||
end
|
||||
ENV[@variable].encoding.should equal(Encoding::IBM437)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
54
spec/ruby/core/env/shared/each.rb
vendored
54
spec/ruby/core/env/shared/each.rb
vendored
|
|
@ -25,39 +25,37 @@ describe :env_each, shared: true do
|
|||
end
|
||||
it_should_behave_like :enumeratorized_with_origin_size
|
||||
|
||||
with_feature :encoding do
|
||||
describe "with encoding" do
|
||||
before :each do
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
describe "with encoding" do
|
||||
before :each do
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
|
||||
@locale_encoding = Encoding.find "locale"
|
||||
@locale_encoding = Encoding.find "locale"
|
||||
end
|
||||
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
end
|
||||
|
||||
it "uses the locale encoding when Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
|
||||
ENV.send(@method) do |key, value|
|
||||
key.encoding.should equal(@locale_encoding)
|
||||
value.encoding.should equal(@locale_encoding)
|
||||
end
|
||||
end
|
||||
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
end
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
Encoding.default_internal = internal = Encoding::IBM437
|
||||
|
||||
it "uses the locale encoding when Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
|
||||
ENV.send(@method) do |key, value|
|
||||
key.encoding.should equal(@locale_encoding)
|
||||
value.encoding.should equal(@locale_encoding)
|
||||
end
|
||||
end
|
||||
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
Encoding.default_internal = internal = Encoding::IBM437
|
||||
|
||||
ENV.send(@method) do |key, value|
|
||||
key.encoding.should equal(internal)
|
||||
if value.ascii_only?
|
||||
value.encoding.should equal(internal)
|
||||
end
|
||||
ENV.send(@method) do |key, value|
|
||||
key.encoding.should equal(internal)
|
||||
if value.ascii_only?
|
||||
value.encoding.should equal(internal)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
48
spec/ruby/core/env/shift_spec.rb
vendored
48
spec/ruby/core/env/shift_spec.rb
vendored
|
|
@ -24,36 +24,34 @@ describe "ENV.shift" do
|
|||
end
|
||||
end
|
||||
|
||||
with_feature :encoding do
|
||||
describe "ENV.shift" do
|
||||
before :each do
|
||||
@orig = ENV.to_hash
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
describe "ENV.shift" do
|
||||
before :each do
|
||||
@orig = ENV.to_hash
|
||||
@external = Encoding.default_external
|
||||
@internal = Encoding.default_internal
|
||||
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
end
|
||||
Encoding.default_external = Encoding::ASCII_8BIT
|
||||
end
|
||||
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
ENV.replace @orig
|
||||
end
|
||||
after :each do
|
||||
Encoding.default_external = @external
|
||||
Encoding.default_internal = @internal
|
||||
ENV.replace @orig
|
||||
end
|
||||
|
||||
it "uses the locale encoding if Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
it "uses the locale encoding if Encoding.default_internal is nil" do
|
||||
Encoding.default_internal = nil
|
||||
|
||||
pair = ENV.shift
|
||||
pair.first.encoding.should equal(Encoding.find("locale"))
|
||||
pair.last.encoding.should equal(Encoding.find("locale"))
|
||||
end
|
||||
pair = ENV.shift
|
||||
pair.first.encoding.should equal(Encoding.find("locale"))
|
||||
pair.last.encoding.should equal(Encoding.find("locale"))
|
||||
end
|
||||
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
Encoding.default_internal = Encoding::IBM437
|
||||
it "transcodes from the locale encoding to Encoding.default_internal if set" do
|
||||
Encoding.default_internal = Encoding::IBM437
|
||||
|
||||
pair = ENV.shift
|
||||
pair.first.encoding.should equal(Encoding::IBM437)
|
||||
pair.last.encoding.should equal(Encoding::IBM437)
|
||||
end
|
||||
pair = ENV.shift
|
||||
pair.first.encoding.should equal(Encoding::IBM437)
|
||||
pair.last.encoding.should equal(Encoding::IBM437)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue