$ docker run --rm --name validator-libsodium-usage-ruby-rbnacl-r15-secretbox-empty-message-2732 -t --mount type=bind,src=/tmp/validator-status-libsodium-usage-ruby-rbnacl-r15-secretbox-empty-message,dst=/validator/status validator-libsodium-shared bash -lc 'set -euo pipefail /validator/tests/_shared/install_override_debs.sh exec /validator/tests/_shared/run_library_tests.sh "$@"' validator-testcase libsodium usage-ruby-rbnacl-r15-secretbox-empty-message -- bash -c 'PS4=$1; shift; set -x; source "$@"' validator-xtrace '__VALIDATOR_XTRACE__ ' /validator/tests/libsodium/tests/cases/usage/usage-ruby-rbnacl-r15-secretbox-empty-message.sh no override packages found; continuing with apt originals key = ("\x15".b * RbNaCl::SecretBox.key_bytes) nonce = ("\x01".b * RbNaCl::SecretBox.nonce_bytes) box = RbNaCl::SecretBox.new(key) plain = "".b ct = box.encrypt(nonce, plain) expected = 16 # libsodium crypto_secretbox MAC length (Poly1305). raise "ct length: #{ct.bytesize} != #{expected}" unless ct.bytesize == expected pt = box.decrypt(nonce, ct) raise "decrypt did not return empty: #{pt.bytesize}" unless pt.bytesize == 0 raise "decrypt produced non-empty bytes: #{pt.inspect}" unless pt == "".b puts "ok #{ct.bytesize}" ' ok 16