public void Equality_Default()
        {
            var a = new UserProfileEvent();
            var b = new UserProfileEvent();

            Assert.AreEqual(a, b);
            Assert.AreEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentProgrammingCSharp()
        {
            var a = new UserProfileEvent
            {
                ProgrammingCSharp = Likert7Point.Negative1
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentComment()
        {
            var a = new UserProfileEvent
            {
                Comment = "f"
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentTeam_Large()
        {
            var a = new UserProfileEvent
            {
                TeamsLarge = true
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentCodeReviews()
        {
            var a = new UserProfileEvent
            {
                CodeReviews = YesNoUnknown.Yes
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentProjects_SharedLarge()
        {
            var a = new UserProfileEvent
            {
                ProjectsSharedLarge = true
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentProjects_Personal()
        {
            var a = new UserProfileEvent
            {
                ProjectsPersonal = true
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentPosition()
        {
            var a = new UserProfileEvent
            {
                Position = Positions.HobbyProgrammer
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentEducation()
        {
            var a = new UserProfileEvent
            {
                Education = Educations.Training
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferentProfileId()
        {
            var a = new UserProfileEvent
            {
                ProfileId = "p"
            };
            var b = new UserProfileEvent();

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_DifferntBaseInformation()
        {
            var a = new UserProfileEvent
            {
                Id = "1"
            };
            var b = new UserProfileEvent
            {
                Id = "2"
            };

            Assert.AreNotEqual(a, b);
            Assert.AreNotEqual(a.GetHashCode(), b.GetHashCode());
        }
        public void Equality_ReallyTheSame()
        {
            var a = new UserProfileEvent
            {
                ProfileId            = "p",
                Education            = Educations.Training,
                Position             = Positions.HobbyProgrammer,
                ProjectsCourses      = true,
                ProjectsPersonal     = true,
                ProjectsSharedSmall  = true,
                ProjectsSharedMedium = true,
                ProjectsSharedLarge  = true,
                TeamsSolo            = true,
                TeamsSmall           = true,
                TeamsMedium          = true,
                TeamsLarge           = true,
                CodeReviews          = YesNoUnknown.Yes,
                ProgrammingGeneral   = Likert7Point.Negative1,
                ProgrammingCSharp    = Likert7Point.Negative2,
                Comment = "f"
            };
            var b = new UserProfileEvent
            {
                ProfileId            = "p",
                Education            = Educations.Training,
                Position             = Positions.HobbyProgrammer,
                ProjectsCourses      = true,
                ProjectsPersonal     = true,
                ProjectsSharedSmall  = true,
                ProjectsSharedMedium = true,
                ProjectsSharedLarge  = true,
                TeamsSolo            = true,
                TeamsSmall           = true,
                TeamsMedium          = true,
                TeamsLarge           = true,
                CodeReviews          = YesNoUnknown.Yes,
                ProgrammingGeneral   = Likert7Point.Negative1,
                ProgrammingCSharp    = Likert7Point.Negative2,
                Comment = "f"
            };

            Assert.AreEqual(a, b);
            Assert.AreEqual(a.GetHashCode(), b.GetHashCode());
        }