コード例 #1
0
        [InlineData("1234567890_")]         // Invalid char
        public void TryGetLong_Regularly_ShouldReturnSameResultAsTryGetUlong(string input)
        {
            var expectedSuccess = IdEncoder.TryGetUlong(input, out var expectedResult);

            var success = IdEncoder.TryGetLong(input, out var result);

            Assert.Equal(expectedSuccess, success);
            Assert.True(result >= 0L);
            Assert.Equal(expectedResult, (ulong)result);
        }
コード例 #2
0
        [InlineData("1234567890_")]         // Invalid char
        public void GetLongOrDefault_Regularly_ShouldReturnSameResultAsTryGetLong(string input)
        {
            var expectedResult = IdEncoder.TryGetLong(input, out var expectedId)
                                ? expectedId
                                : (long?)null;

            var result = IdEncoder.GetLongOrDefault(input);

            Assert.Equal(expectedResult, result);
        }
コード例 #3
0
        [InlineData("1234567890_")]         // Invalid char
        public void TryGetLong_WithByteInput_ShouldReturnSameResultAsWithStringInput(string inputString)
        {
            var expectedSuccess = IdEncoder.TryGetLong(inputString, out var expectedResult);

            Span <byte> input = stackalloc byte[inputString.Length];

            for (var i = 0; i < input.Length; i++)
            {
                input[i] = (byte)inputString[i];
            }

            var success = IdEncoder.TryGetLong(input, out var result);

            Assert.Equal(expectedSuccess, success);
            Assert.Equal(expectedResult, result);
        }