1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
use crate::Methods; use crate::encrypt; use crate::LoginData; pub fn new (method: Methods) -> LoginData { LoginData { cpw: encrypt::gen_pass(&method), symetric_method: method, } } #[test] fn login_test(){ let data = encrypt::MethodArgs { word: "uniquepass", password: "variablepass" }; let vige_method = Methods::Vigenere(data.clone()); let base_method = Methods::B64(data.clone()); let xor_method = Methods::Xor(data.clone()); assert_eq!(new(vige_method.clone()), LoginData { symetric_method: vige_method.clone(), cpw: Ok("pnzyufaehs".to_string()) }); assert_eq!(new(base_method.clone()), LoginData { symetric_method: base_method.clone(), cpw: Ok("dmFyaWFibGVwYXNz".to_string()) }); assert_eq!(new(xor_method.clone()), LoginData { symetric_method: xor_method.clone(), cpw: Ok("".to_string()) }); }