Ejemplo n.º 1
0
 /// <inheritdoc cref="VerifyCode(byte[], string, TotpSettings)"/>
 public static bool VerifyCode(string?key, string?code, TotpSettings settings) =>
 !string.IsNullOrEmpty(key) &&
 !string.IsNullOrEmpty(code) &&
 Base32F.FromBase32String(key).Switch(
     some: k => VerifyCode(k, code, settings),
     none: false
     );
Ejemplo n.º 2
0
    public void Input_String_Too_Short_Returns_None_With_InputStringNotLongEnoughMsg(string input)
    {
        // Arrange

        // Act
        var result = Base32F.FromBase32String(input);

        // Assert
        result.AssertNone().AssertType <InputStringNotLongEnoughMsg>();
    }
Ejemplo n.º 3
0
    public void Empty_String_Returns_Empty_Byte_Array()
    {
        // Arrange

        // Act
        var result = Base32F.FromBase32String(string.Empty).UnsafeUnwrap();

        // Assert
        Assert.Empty(result);
    }
Ejemplo n.º 4
0
    public void Returns_Byte_Array_Of_Correct_Length()
    {
        // Arrange
        var str = "5C5NHZDVBT4RWPBK";

        // Act
        var result = Base32F.FromBase32String(str).UnsafeUnwrap();

        // Assert
        Assert.Equal(10, result.Length);
    }
Ejemplo n.º 5
0
    public void Empty_Byte_Array_Returns_Empty_String()
    {
        // Arrange
        var bytes = Array.Empty <byte>();

        // Act
        var result = Base32F.ToBase32String(bytes);

        // Assert
        Assert.Equal(string.Empty, result);
    }
Ejemplo n.º 6
0
    public void Returns_String_Of_Correct_Length()
    {
        // Arrange
        var bytes = Rnd.ByteF.Get(10);

        // Act
        var result = Base32F.ToBase32String(bytes);

        // Assert
        Assert.Equal(16, result.Length);
    }
Ejemplo n.º 7
0
    public void Works_Both_Ways()
    {
        // Arrange
        var expected = Base32F.FromBase32String("5C5NHZDVBT4RWPBK").UnsafeUnwrap();
        var str      = Base32F.ToBase32String(expected);

        // Act
        var result = Base32F.FromBase32String(str).UnsafeUnwrap();

        // Assert
        Assert.Equal(expected, result);
    }
Ejemplo n.º 8
0
    public void Invalid_Character_In_Input_String_Returns_None_With_CharacterNotInBase32AlphabetMsg(char input)
    {
        // Arrange
        var str = Rnd.Str + input;

        // Act
        var result = Base32F.FromBase32String(str);

        // Assert
        var none = result.AssertNone().AssertType <CharacterNotInBase32AlphabetMsg>();

        Assert.Equal(input, none.Value);
    }