summaryrefslogtreecommitdiff
path: root/spec/ruby/core/string/shared/to_sym.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/core/string/shared/to_sym.rb')
-rw-r--r--spec/ruby/core/string/shared/to_sym.rb72
1 files changed, 0 insertions, 72 deletions
diff --git a/spec/ruby/core/string/shared/to_sym.rb b/spec/ruby/core/string/shared/to_sym.rb
deleted file mode 100644
index 2a8a2e3182..0000000000
--- a/spec/ruby/core/string/shared/to_sym.rb
+++ /dev/null
@@ -1,72 +0,0 @@
-describe :string_to_sym, shared: true do
- it "returns the symbol corresponding to self" do
- "Koala".send(@method).should.equal? :Koala
- 'cat'.send(@method).should.equal? :cat
- '@cat'.send(@method).should.equal? :@cat
- 'cat and dog'.send(@method).should.equal? :"cat and dog"
- "abc=".send(@method).should.equal? :abc=
- end
-
- it "does not special case +(binary) and -(binary)" do
- "+(binary)".send(@method).should.equal? :"+(binary)"
- "-(binary)".send(@method).should.equal? :"-(binary)"
- end
-
- it "does not special case certain operators" do
- "!@".send(@method).should.equal? :"!@"
- "~@".send(@method).should.equal? :"~@"
- "!(unary)".send(@method).should.equal? :"!(unary)"
- "~(unary)".send(@method).should.equal? :"~(unary)"
- "+(unary)".send(@method).should.equal? :"+(unary)"
- "-(unary)".send(@method).should.equal? :"-(unary)"
- end
-
- it "returns a US-ASCII Symbol for a UTF-8 String containing only US-ASCII characters" do
- sym = "foobar".send(@method)
- sym.encoding.should == Encoding::US_ASCII
- sym.should.equal? :"foobar"
- end
-
- it "returns a US-ASCII Symbol for a binary String containing only US-ASCII characters" do
- sym = "foobar".b.send(@method)
- sym.encoding.should == Encoding::US_ASCII
- sym.should.equal? :"foobar"
- end
-
- it "returns a UTF-8 Symbol for a UTF-8 String containing non US-ASCII characters" do
- sym = "il était une fois".send(@method)
- sym.encoding.should == Encoding::UTF_8
- sym.should.equal? :"il était une #{'fois'}"
- end
-
- it "returns a UTF-16LE Symbol for a UTF-16LE String containing non US-ASCII characters" do
- utf16_str = "UtéF16".encode(Encoding::UTF_16LE)
- sym = utf16_str.send(@method)
- sym.encoding.should == Encoding::UTF_16LE
- sym.to_s.should == utf16_str
- end
-
- it "returns a binary Symbol for a binary String containing non US-ASCII characters" do
- binary_string = "binarí".b
- sym = binary_string.send(@method)
- sym.encoding.should == Encoding::BINARY
- sym.to_s.should == binary_string
- end
-
- it "ignores existing symbols with different encoding" do
- source = "fée"
-
- iso_symbol = source.dup.force_encoding(Encoding::ISO_8859_1).send(@method)
- iso_symbol.encoding.should == Encoding::ISO_8859_1
- binary_symbol = source.dup.force_encoding(Encoding::BINARY).send(@method)
- binary_symbol.encoding.should == Encoding::BINARY
- end
-
- it "raises an EncodingError for UTF-8 String containing invalid bytes" do
- invalid_utf8 = "\xC3"
- invalid_utf8.should_not.valid_encoding?
- -> {
- invalid_utf8.send(@method)
- }.should.raise(EncodingError, 'invalid symbol in encoding UTF-8 :"\xC3"')
- end
-end