spec/string_spec.rb in utf8-0.1.0 vs spec/string_spec.rb in utf8-0.1.1
- old
+ new
@@ -7,9 +7,26 @@
@str = @char_array.join
@utf8 = @str.as_utf8
@utf8_len = @char_array.size
end
+ it "should blow up on invalid utf8 chars" do
+ # lets cut right into the middle of a sequence so we know it's bad
+ utf8 = @str[0..1].as_utf8
+
+ lambda {
+ utf8.length
+ }.should raise_error(ArgumentError)
+
+ lambda {
+ utf8[0, 10]
+ }.should raise_error(ArgumentError)
+
+ lambda {
+ utf8.chars.to_a
+ }.should raise_error(ArgumentError)
+ end
+
it "should extend String, adding an as_utf8 method that returns a String::UTF8 instance" do
"".should respond_to(:as_utf8)
"".as_utf8.class.should eql(String::UTF8)
end
\ No newline at end of file