public void Fails_password_capture_when_confirm_password_is_incorrect(string plaintext, string plaintextConfirm = null) { var capture = new PlaintextKeyCapture(plaintext, plaintextConfirm ?? $"{plaintext}wrong"); unsafe { var result = KeyFileManager.TryCapturePassword("test", capture, Console.Out, Console.Error, out var password, out var passwordLength); Assert.False(result); Assert.True(password == default(byte *)); } }
public void Fails_password_capture_with_empty_confirm_password(string plaintext) { var capture = new PlaintextKeyCapture(plaintext, string.Empty); unsafe { var result = KeyFileManager.TryCapturePassword("test", capture, Console.Out, Console.Error, out var password, out var passwordLength); Assert.False(result); Assert.NotEqual(plaintext.Length, passwordLength); NativeMethods.sodium_free(password); } }
public void Succeeds_password_capture_when_password_is_confirmed_correctly(string plaintext, string plaintextConfirm = null) { var capture = new PlaintextKeyCapture(plaintext, plaintextConfirm ?? plaintext); unsafe { var result = KeyFileManager.TryCapturePassword("test", capture, Console.Out, Console.Error, out var password, out var passwordLength); Assert.True(result); Assert.Equal(plaintext.Length, passwordLength); NativeMethods.sodium_free(password); } }