public void When_I_update_a_profile_Then_the_profile_should_be_updated_sync()
        {
            var newFirstName = "Toto";

            _profile = _service.Create(_profile);
            _profile.FirstName(newFirstName);

            var updatedProfile = _service.Update(_profile);

            Assert.That(updatedProfile.FirstName(), Is.EqualTo(newFirstName));
        }
        public async Task When_I_update_a_profile_Then_the_profile_should_be_updated_async()
        {
            var newFirstName = "Toto";

            _profile = await _service.CreateAsync(_profile);

            _profile.FirstName(newFirstName);

            var updatedProfile = await _service.UpdateAsync(_profile);

            Assert.AreEqual(updatedProfile.FirstName(), newFirstName);
        }
        /*
         * Helpers
         */

        private bool ProfilesAreEquivalent(Profile profile1, Profile profile2)
        {
            if (!profile1.Id().Equals(profile2.Id()) ||
                !profile1.Phone().Equals(profile2.Phone()) ||
                !profile1.FirstName().Equals(profile2.FirstName()) ||
                !profile1.LastName().Equals(profile2.LastName()) ||
                !profile1.Email().Equals(profile2.Email()))
            {
                return(false);
            }

            return(true);
        }