コード例 #1
0
        public async Task ComputeHashAsync_WhenByteCollectionIsNotNull_ReturnsStringWith88Characters()
        {
            IHashKeyGenerator sut = CreateSut();

            string result = await sut.ComputeHashAsync(_fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray());

            Assert.That(result.Length, Is.EqualTo(88));
        }
コード例 #2
0
        public async Task ComputeHashAsync_WhenByteCollectionIsNotNull_ReturnsBase64String()
        {
            IHashKeyGenerator sut = CreateSut();

            string result = await sut.ComputeHashAsync(_fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray());

            Assert.That(result.IsBase64String(), Is.True);
        }
コード例 #3
0
        public KeyGenerator(IHashKeyGenerator hashKeyGenerator, IClaimResolver claimResolver)
        {
            NullGuard.NotNull(hashKeyGenerator, nameof(hashKeyGenerator))
            .NotNull(claimResolver, nameof(claimResolver));

            _hashKeyGenerator = hashKeyGenerator;
            _claimResolver    = claimResolver;
        }
コード例 #4
0
        public void ComputeHashAsync_WhenByteCollectionIsNull_ThrowsArgumentNullException()
        {
            IHashKeyGenerator sut = CreateSut();

            ArgumentNullException result = Assert.ThrowsAsync <ArgumentNullException>(async() => await sut.ComputeHashAsync(null));

            // ReSharper disable PossibleNullReferenceException
            Assert.That(result.ParamName, Is.EqualTo("byteCollection"));
            // ReSharper restore PossibleNullReferenceException
        }
コード例 #5
0
        public async Task ComputeHashAsync_WhenCalledWithDifferentByteCollectionsSameInstance_ReturnsDifferentStrings()
        {
            IHashKeyGenerator sut = CreateSut();

            string result = await sut.ComputeHashAsync(_fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray());

            foreach (byte[] byteCollection in new[] { _fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray(), _fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray(), _fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray() })
            {
                Assert.That(await sut.ComputeHashAsync(byteCollection), Is.Not.EqualTo(result));
            }
        }
コード例 #6
0
        public async Task ComputeHashAsync_WhenCalledWithSameByteCollectionOnDifferentInstances_ReturnsSameStringOnEachInstance()
        {
            IHashKeyGenerator sut = CreateSut();

            byte[] byteCollection = _fixture.CreateMany <byte>(_random.Next(128, 256)).ToArray();

            string result = await sut.ComputeHashAsync(byteCollection);

            foreach (IHashKeyGenerator otherSut in new[] { CreateSut(), CreateSut(), CreateSut() })
            {
                Assert.That(await otherSut.ComputeHashAsync(byteCollection), Is.EqualTo(result));
            }
        }