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(); }
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(); }
private RefreshToken GetValidRefreshToken(string token, User user) { RefreshToken existingToken = user.RefreshTokens.FirstOrDefault(x => x.Token == token); return(existingToken.IsActive(_dateTimeProvider.GetUtcNow()) ? existingToken : null); }