public async Task NullUser_Throws()
                {
                    var validator = new UserIdRequiredValidator <User>();

                    await Assert.ThrowsAsync <ArgumentNullException>("user", async() =>
                    {
                        await validator.Validate(user: null !);
                    });
                public async Task WhenCalled_Succeeds()
                {
                    var validator = new UserIdRequiredValidator <User>();
                    var user      = new User()
                    {
                        Id = "979"
                    };

                    await validator.Validate(user);
                }
                public async Task EmptyId_Throws()
                {
                    var validator = new UserIdRequiredValidator <User>();
                    var user      = new User()
                    {
                        Id = string.Empty,
                    };

                    await Assert.ThrowsAsync <ArgumentException>("user", async() =>
                    {
                        await validator.Validate(user);
                    });
                }