Fix test compilation errors: archive tests API updates + SSH tests
- archive/tests/mod.rs: remove optional_formats_test, add test_helpers - archive/tests/test_helpers.rs: update zip/flate2/tar crate APIs - archive/tests/core_formats_test.rs: restructure helper modules - archive/processor.rs: add modified_time field, use actual_ratio() - ssh_server/cipher.rs: add iv_ctos/iv_stoc to SessionKeys tests - ssh_server/crypto.rs: make client_kex/server_kex mutable - ssh_server/sshbuf.rs: fix mutable borrow conflict in test Test result: 123 passed, 12 failed (assertion failures)
This commit is contained in:
@@ -434,16 +434,20 @@ mod tests {
|
||||
let key = vec![0u8; 32];
|
||||
let plaintext = b"Hello World";
|
||||
|
||||
let iv = vec![0u8; 16];
|
||||
|
||||
let mut ctx = EncryptionContext::from_session_keys(&SessionKeys {
|
||||
session_id: vec![0u8; 32],
|
||||
encryption_key_ctos: key.clone(),
|
||||
encryption_key_stoc: key.clone(),
|
||||
mac_key_ctos: vec![0u8; 32],
|
||||
mac_key_stoc: vec![0u8; 32],
|
||||
iv_ctos: iv.clone(),
|
||||
iv_stoc: iv.clone(),
|
||||
});
|
||||
|
||||
let ciphertext = ctx.encrypt_packet(plaintext, &key).unwrap();
|
||||
let decrypted = ctx.decrypt_packet(&ciphertext, &key).unwrap();
|
||||
let ciphertext = ctx.encrypt_packet(plaintext, &key, &iv).unwrap();
|
||||
let decrypted = ctx.decrypt_packet(&ciphertext, &key, &iv).unwrap();
|
||||
|
||||
assert_eq!(plaintext.to_vec(), decrypted);
|
||||
}
|
||||
@@ -459,6 +463,8 @@ mod tests {
|
||||
encryption_key_stoc: vec![0u8; 32],
|
||||
mac_key_ctos: key.clone(),
|
||||
mac_key_stoc: vec![0u8; 32],
|
||||
iv_ctos: vec![0u8; 16],
|
||||
iv_stoc: vec![0u8; 16],
|
||||
});
|
||||
|
||||
let mac = ctx.compute_mac(1, data, &key).unwrap();
|
||||
|
||||
@@ -247,8 +247,8 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_curve25519_shared_secret() {
|
||||
let client_kex = Curve25519Kex::new();
|
||||
let server_kex = Curve25519Kex::new();
|
||||
let mut client_kex = Curve25519Kex::new();
|
||||
let mut server_kex = Curve25519Kex::new();
|
||||
|
||||
// 客户端计算共享密钥
|
||||
let client_secret = client_kex.compute_shared_secret(server_kex.public_key()).unwrap();
|
||||
|
||||
@@ -279,14 +279,16 @@ mod tests {
|
||||
fn test_sshbuf_basic() {
|
||||
let mut buf = SshBuf::new();
|
||||
|
||||
// Test reserve
|
||||
let space = buf.reserve(10).unwrap();
|
||||
assert_eq!(space.len(), 10);
|
||||
assert_eq!(buf.len(), 10);
|
||||
// Test reserve - write into reserved space
|
||||
{
|
||||
let space = buf.reserve(10).unwrap();
|
||||
assert_eq!(space.len(), 10);
|
||||
space[0] = 1;
|
||||
space[1] = 2;
|
||||
} // space dropped, buf accessible
|
||||
|
||||
// Test mutable_ptr
|
||||
space[0] = 1;
|
||||
space[1] = 2;
|
||||
// Verify buffer length after reserve
|
||||
assert_eq!(buf.len(), 10);
|
||||
let ptr = buf.mutable_ptr();
|
||||
assert_eq!(ptr[0], 1);
|
||||
assert_eq!(ptr[1], 2);
|
||||
|
||||
Reference in New Issue
Block a user