public void Constructor_GiveValidArguments_PropertiesAreSet()
        {
            var authenticationHistory = new AuthenticationHistory(
                TestVariables.AuthenticationHistoryId,
                TestVariables.Now,
                AuthenticationHistoryType.Success);

            Assert.Equal(TestVariables.AuthenticationHistoryId, authenticationHistory.Id);
            Assert.Equal(TestVariables.Now, authenticationHistory.WhenHappened);
            Assert.Equal(AuthenticationHistoryType.Success, authenticationHistory.AuthenticationHistoryType);

            foreach (var prop in authenticationHistory.GetType().GetProperties().Where(x => x.PropertyType.Name == "IReadOnlyList`1"))
            {
                var val = prop.GetValue(authenticationHistory, null);
                Assert.False(val == null, $"{prop.Name} is null");
            }
        }