summaryrefslogtreecommitdiff
path: root/spec/ruby/library/stringio/initialize_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library/stringio/initialize_spec.rb')
-rw-r--r--spec/ruby/library/stringio/initialize_spec.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/ruby/library/stringio/initialize_spec.rb b/spec/ruby/library/stringio/initialize_spec.rb
index bbb11b8f31..b503ed2206 100644
--- a/spec/ruby/library/stringio/initialize_spec.rb
+++ b/spec/ruby/library/stringio/initialize_spec.rb
@@ -183,3 +183,27 @@ describe "StringIO#initialize when passed no arguments" do
@io.string.should == ""
end
end
+
+describe "StringIO#initialize sets the encoding to" do
+ before :each do
+ @external = Encoding.default_external
+ Encoding.default_external = Encoding::ISO_8859_2
+ end
+
+ after :each do
+ Encoding.default_external = @external
+ end
+
+ it "Encoding.default_external when passed no arguments" do
+ io = StringIO.new
+ io.external_encoding.should == Encoding::ISO_8859_2
+ io.string.encoding.should == Encoding::ISO_8859_2
+ end
+
+ it "the same as the encoding of the String when passed a String" do
+ s = ''.force_encoding(Encoding::EUC_JP)
+ io = StringIO.new(s)
+ io.external_encoding.should == Encoding::EUC_JP
+ io.string.encoding.should == Encoding::EUC_JP
+ end
+end