public async Task TestThatCreateTokenUsesTheExpiryTimeFromTheConfig() { //arrange var sut = new JwtTokenManager(authSettingsOption, userManager); //act var token = await sut.CreateToken("username"); //assert A.CallTo(() => authenticationSettings.TokenExpiryMinutes).MustHaveHappened(); //We calculate approx when we would expect the token to expire, //a tolerance of 5 seconds is allowed to allow for a slow running test etc. var approxExpectedValidToTime = DateTime.Now.AddMinutes(10); var timeDifference = approxExpectedValidToTime.Subtract(token.ValidTo); Assert.True(timeDifference.Seconds < 5); }