test/unit/connection/test_io.rb in monetdb-0.2.8 vs test/unit/connection/test_io.rb in monetdb-0.2.9
- old
+ new
@@ -1,5 +1,7 @@
+#encoding: UTF-8
+
require_relative "../../test_helper"
module Unit
module Connection
class TestIO < MiniTest::Test
@@ -64,13 +66,16 @@
end
describe "#pack" do
it "returns chunks provided with a length header" do
message = "BIG:monetdb:{MD5}6432e841c9943d524b9b922ee1e5924a:sql:test_drive:"
- assert_equal ["#{[131].pack("v")}#{message}"], @connection.send(:pack, message)
+ assert_equal ["#{[131].pack("v").force_encoding('utf-8')}#{message}"], @connection.send(:pack, message)
message = "hKszBZEmQ1uOPYrpVFEc:merovingian:9:RIPEMD160,SHA256,SHA1,MD5:LIT:SHA512:"
- assert_equal ["#{[145].pack("v")}#{message}"], @connection.send(:pack, message)
+ assert_equal ["#{[145].pack("v").force_encoding('utf-8')}#{message}"], @connection.send(:pack, message)
+
+ message = "Message with multibyte chars: ✷"
+ assert_equal ["#{[67].pack("v").force_encoding('utf-8')}#{message}"], @connection.send(:pack, message)
message.expects(:scan).with(/.{1,#{MonetDB::Connection::MAX_MSG_SIZE}}/m).returns(%w(foobar bazqux paul))
assert_equal [
"#{[12].pack("v")}foobar",
"#{[12].pack("v")}bazqux",