Exemplo n.º 1
0
        public void Should_Not_Be_Expired()
        {
            // Arrange
            var refreshToken = new RefreshToken("token", DateTime.MaxValue, "ip", Guid.Empty, FakeDateTime.UtcNow);

            // Assert
            refreshToken.IsExpired(FakeDateTime.UtcNow).Should().BeFalse();
            refreshToken.IsActive(FakeDateTime.UtcNow).Should().BeTrue();
        }
Exemplo n.º 2
0
        public void Should_Revoke()
        {
            // Arrange
            var refreshToken = new RefreshToken("token", DateTime.MaxValue, "ip", Guid.Empty, FakeDateTime.UtcNow);
            var command      = new RevokeRefreshToken.Command()
            {
                RefreshToken = "token", RemoteIpAddress = "ip2"
            };

            // Act
            refreshToken.Revoke(command, FakeDateTime.UtcNow);

            // Assert
            refreshToken.RevokedByIp.Should().BeEquivalentTo("ip2");
            refreshToken.RevokedOn.Should().BeMoreThan(TimeSpan.Zero);
            refreshToken.IsActive(FakeDateTime.UtcNow).Should().BeFalse();
            refreshToken.IsExpired(FakeDateTime.UtcNow).Should().BeFalse();
        }
Exemplo n.º 3
0
            private RefreshToken GetValidRefreshToken(string token, User user)
            {
                RefreshToken existingToken = user.RefreshTokens.FirstOrDefault(x => x.Token == token);

                return(existingToken.IsActive(_dateTimeProvider.GetUtcNow()) ? existingToken : null);
            }