/* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use super ::*;
#[ test]
fn test_mask_ip() {
let mut anon = StatefulSdpAnonymizer::default();
let v4 = [
Ipv4Addr::new(
127 ,
0 ,
0 ,
1 ),
Ipv4Addr::new(
10 ,
0 ,
0 ,
1 ),
Ipv4Addr::new(
1 ,
1 ,
1 ,
1 ),
];
let v4_masked = [
Ipv4Addr::new(
0 ,
0 ,
0 ,
1 ),
Ipv4Addr::new(
0 ,
0 ,
0 ,
2 ),
Ipv4Addr::new(
0 ,
0 ,
0 ,
3 ),
];
let v6 = [
Ipv6Addr::from(
0 ),
Ipv6Addr::from(
528 _
189 _
235 ),
Ipv6Addr::from(
1 _
623 _
734 _
988 _
148 _
990 ),
];
let v6_masked = [Ipv6Addr::from(
1 ), Ipv6Addr::from(
2 ), Ipv6Addr::from(
3 )];
for _
in 0 ..
2 {
assert_eq!(anon.mask_ip(&IpAddr::V4(v4[
0 ])), v4_masked[
0 ]);
assert_eq!(anon.mask_ip(&IpAddr::V6(v6[
0 ])), v6_masked[
0 ]);
assert_eq!(anon.mask_ip(&IpAddr::V4(v4[
1 ])), v4_masked[
1 ]);
assert_eq!(anon.mask_ip(&IpAddr::V6(v6[
1 ])), v6_masked[
1 ]);
assert_eq!(anon.mask_ip(&IpAddr::V4(v4[
2 ])), v4_masked[
2 ]);
assert_eq!(anon.mask_ip(&IpAddr::V6(v6[
2 ])), v6_masked[
2 ]);
}
}
#[ test]
fn test_mask_port() {
let mut anon = StatefulSdpAnonymizer::default();
let ports = [
0 ,
125 ,
12346 ];
let masked_ports = [
1 ,
2 ,
3 ];
for _
in 0 ..
2 {
assert_eq!(anon.mask_port(ports[
0 ]), masked_ports[
0 ]);
assert_eq!(anon.mask_port(ports[
1 ]), masked_ports[
1 ]);
assert_eq!(anon.mask_port(ports[
2 ]), masked_ports[
2 ]);
}
}
#[ test]
fn test_mask_ice_password() {
let mut anon = StatefulSdpAnonymizer::default();
let passwords = [
"vasdfioqwenl14082`14" ,
"0" ,
"ncp HY878hp(poh" ];
let masked_passwords = [
"ice-password-00000001" ,
"ice-password-00000002" ,
"ice-password-00000003" ,
];
for _
in 0 ..
2 {
assert_eq!(anon.mask_ice_password(passwords[
0 ]), masked_passwords[
0 ]);
assert_eq!(anon.mask_ice_password(passwords[
1 ]), masked_passwords[
1 ]);
assert_eq!(anon.mask_ice_password(passwords[
2 ]), masked_passwords[
2 ]);
}
}
#[ test]
fn test_mask_ice_user() {
let mut anon = StatefulSdpAnonymizer::default();
let users = [
"user1" ,
"user2" ,
"8109q2asdf" ];
let masked_users = [
"ice-user-00000001" ,
"ice-user-00000002" ,
"ice-user-00000003" ,
];
for _
in 0 ..
2 {
assert_eq!(anon.mask_ice_user(users[
0 ]), masked_users[
0 ]);
assert_eq!(anon.mask_ice_user(users[
1 ]), masked_users[
1 ]);
assert_eq!(anon.mask_ice_user(users[
2 ]), masked_users[
2 ]);
}
}
#[ test]
fn test_mask_cert_fingerprint() {
let mut anon = StatefulSdpAnonymizer::default();
let prints: [Vec<u8>;
3 ] = [
vec![
0 x59u8,
0 x4A,
0 x8B,
0 x73,
0 xA7,
0 x73,
0 x53,
0 x71,
0 x88,
0 xD7,
0 x4D,
0 x58,
0 x28,
0 x0C,
0 x79,
0 x72,
0 x31,
0 x29,
0 x9B,
0 x05,
0 x37,
0 xDD,
0 x58,
0 x43,
0 xC2,
0 xD4,
0 x85,
0 xA2,
0 xB3,
0 x66,
0 x38,
0 x7A,
],
vec![
0 x30u8,
0 xFF,
0 x8E,
0 x2B,
0 xAC,
0 x9D,
0 xED,
0 x70,
0 x18,
0 x10,
0 x67,
0 xC8,
0 xAE,
0 x9E,
0 x68,
0 xF3,
0 x86,
0 x53,
0 x51,
0 xB0,
0 xAC,
0 x31,
0 xB7,
0 xBE,
0 x6D,
0 xCF,
0 xA4,
0 x2E,
0 xD3,
0 x6E,
0 xB4,
0 x28,
],
vec![
0 xDFu8,
0 x2E,
0 xAC,
0 x8A,
0 xFD,
0 x0A,
0 x8E,
0 x99,
0 xBF,
0 x5D,
0 xE8,
0 x3C,
0 xE7,
0 xFA,
0 xFB,
0 x08,
0 x3B,
0 x3C,
0 x54,
0 x1D,
0 xD7,
0 xD4,
0 x05,
0 x77,
0 xA0,
0 x72,
0 x9B,
0 x14,
0 x08,
0 x6D,
0 x0F,
0 x4C,
],
];
let masked_prints = [
1 u64.to_byte_vec(),
2 u64.to_byte_vec(),
3 u64.to_byte_vec()];
for _
in 0 ..
2 {
assert_eq!(anon.mask_cert_finger_print(&prints[
0 ]), masked_prin
ts[0 ]);
assert_eq!(anon.mask_cert_finger_print(&prints[1 ]), masked_prints[1 ]);
assert_eq!(anon.mask_cert_finger_print(&prints[2 ]), masked_prints[2 ]);
}
}
#[ test]
fn test_mask_cname() {
let mut anon = StatefulSdpAnonymizer::default();
let cnames = ["mailto:foo@bar" , "JohnDoe" , "Jane Doe" ];
let masked_cnames = ["cname-00000001" , "cname-00000002" , "cname-00000003" ];
for _ in 0 ..2 {
assert_eq!(anon.mask_cname(cnames[0 ]), masked_cnames[0 ]);
assert_eq!(anon.mask_cname(cnames[1 ]), masked_cnames[1 ]);
assert_eq!(anon.mask_cname(cnames[2 ]), masked_cnames[2 ]);
}
}
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-06-20)
¤
*© Formatika GbR, Deutschland