Skip to content

Instantly share code, notes, and snippets.

@bonega
Last active July 5, 2021 11:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bonega/7c7b7138fbcd2c0f2fef22d27d56d91d to your computer and use it in GitHub Desktop.
Save bonega/7c7b7138fbcd2c0f2fef22d27d56d91d to your computer and use it in GitHub Desktop.
#[test]
fn test_undefined() {
use encoding_rs::WINDOWS_874;
let replacement = "�".as_bytes();
let double_replacement = "��".as_bytes();
let res = WINDOWS_874.decode(&[254]).0;
assert_eq!(res.as_bytes(), replacement);
let res = WINDOWS_874.decode(&[255]).0;
assert_eq!(res.as_bytes(), replacement);
let res = WINDOWS_874.decode(&[255, 255]).0;
assert_eq!(res.as_bytes(), double_replacement);
let res = WINDOWS_874.decode(&[254, 254]).0;
assert_eq!(res.as_bytes(), double_replacement);
let res = WINDOWS_874.decode(&[253, 255]).0;
assert_eq!(res.as_bytes(), double_replacement);
let res = WINDOWS_874.decode(&[254, 255]).0;
// this should work, but `res` is empty
assert_eq!(res.as_bytes(), double_replacement);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment