pub fn encode_tag81(message: &str) -> String {
message
.chars()
.map(|c| format!("{:04X}", c as u32))
.collect::<Vec<String>>()
.join("")
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_encode_tag81() {
let message = "Hello World!";
let result = encode_tag81(message);
assert_eq!(result, "00480065006C006C006F00200057006F0072006C00640021");
}
#[test]
fn test_encode_tag81_empty() {
let result = encode_tag81("");
assert_eq!(result, "");
}
#[test]
fn test_encode_tag81_special_chars() {
let message = "åäö";
let result = encode_tag81(message);
assert_eq!(result, "00E500E400F6");
}
}