Equals() 공개 메소드

public Equals ( IEnumerable, x, IEnumerable, y ) : bool
x IEnumerable,
y IEnumerable,
리턴 bool
예제 #1
0
 public void TestCollectionComparionNullSanity()
 {
     var comparer = new CollectionComparer();
     Assert.IsTrue(comparer.Equals(null, null), "Comparer dit not evaluate null and null as equal");
     Assert.IsFalse(comparer.Equals(null, new object()), "Comparer thinks null == new object()");
     Assert.IsFalse(comparer.Equals(new object(), null), "Comparer thinks new object() == null");
 }
        public void TestCollectionComparionNullSanity()
        {
            var comparer = new CollectionComparer();

            Assert.IsTrue(comparer.Equals(null, null), "Comparer dit not evaluate null and null as equal");
            Assert.IsFalse(comparer.Equals(null, new object()), "Comparer thinks null == new object()");
            Assert.IsFalse(comparer.Equals(new object(), null), "Comparer thinks new object() == null");
        }
예제 #3
0
        public void CommentRepozitoryTest()
        {
            var Repository = new CommentRepository(new InMemoryDbContextFactory());

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(0));

            var Comment1 = new CommentModel()
            {
                Author     = 1,
                AuthorName = "Milos Hlava",
                Date       = new DateTime(2019, 1, 4),
                Id         = 1,
                Text       = "Testovaci koment"
            };

            var Comment2 = new CommentModel()
            {
                Author     = 2,
                AuthorName = "Jozef Hlava",
                Date       = new DateTime(2019, 1, 5),
                Id         = 2,
                Text       = "Testovaci koment cislo 2"
            };

            Repository.Create(Comment1);
            Repository.Create(Comment2);
            var ReceivedComment1 = Repository.GetById(1);
            var ReceivedComment2 = Repository.GetById(2);

            Assert.Equal(Comment1, ReceivedComment1);
            Assert.Equal(Comment2, ReceivedComment2);

            Comment1.Text = "Updatovany text";
            Repository.Update(Comment1);
            ReceivedComment1 = Repository.GetById(1);

            Assert.Equal(Comment1, ReceivedComment1);

            List <CommentModel> ReceivedAllComments = Repository.GetAll();

            var AllComments = new List <CommentModel>();

            AllComments.Add(Comment1);
            AllComments.Add(Comment2);

            var Comparer = new CollectionComparer <CommentModel>();

            Assert.True(Comparer.Equals(AllComments, ReceivedAllComments));

            Repository.Delete(1);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(1));

            Repository.Delete(2);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(2));
        }
예제 #4
0
        private static Likeness <ActivityDto, ActivityDto> CreateLikeness(ActivityDto sourceDto)
        {
            var historyComparer = new CollectionComparer <ActivityHistoryItemDto>();

            return(sourceDto.AsSource().OfLikeness <ActivityDto>()
                   .With(x => x.LeadTime)
                   .EqualsWhen((x, y) => x.LeadTime.AsSource().OfLikeness <DateProjectionDto>().Equals(y.LeadTime))
                   .With(x => x.Recurrence)
                   .EqualsWhen((x, y) => x.Recurrence.AsSource().OfLikeness <DateRecurrenceDto>().Equals(y.Recurrence))
                   .With(x => x.CompletionHistory)
                   .EqualsWhen((x, y) => historyComparer.Equals(x.CompletionHistory, y.CompletionHistory)));
        }
예제 #5
0
        public override bool Equals(object obj)
        {
            if (!(obj is PostListModel posts))
            {
                return(false);
            }

            var comparer = new CollectionComparer <PostModel>();

            return(Id == posts.Id &&
                   Team.Equals(posts.Team) &&
                   comparer.Equals(Posts, posts.Posts));
        }
예제 #6
0
        public void CollectionsNotEqual()
        {
            var collection1 = new Collection <int>();

            collection1.Add(1);
            collection1.Add(5);
            collection1.Add(17);

            var collection2 = new Collection <int>();

            collection2.Add(1);
            collection2.Add(58);
            collection2.Add(17);

            var comparer = new CollectionComparer <int>();

            Assert.False(comparer.Equals(collection1, collection2));

            collection1.RemoveAt(1);

            Assert.False(comparer.Equals(collection1, collection2));
        }
예제 #7
0
        public override bool Equals(object obj)
        {
            if (!(obj is TeamDetailModel team))
            {
                return(false);
            }

            var comparer = new CollectionComparer <UserListModel>();

            return(Id == team.Id &&
                   Name.Equals(team.Name) &&
                   Leader.Equals(team.Leader) &&
                   comparer.Equals(Members, team.Members));
        }
예제 #8
0
        public override bool Equals(object obj)
        {
            if (!(obj is TeamEntity Team))
            {
                return(false);
            }

            var Comparer = new CollectionComparer <TeamUserEntity>();

            return(Id == Team.Id &&
                   Name.Equals(Team.Name) &&
                   Leader.Equals(Team.Leader) &&
                   Comparer.Equals(Members, Team.Members));
        }
예제 #9
0
        public override bool Equals(object obj)
        {
            if (!(obj is PostModel post))
            {
                return(false);
            }

            var comparer = new CollectionComparer <CommentModel>();

            return(Id == post.Id &&
                   Author.Equals(post.Author) &&
                   AuthorName.Equals(post.AuthorName) &&
                   Text.Equals(post.Text) &&
                   Date.Equals(post.Date) &&
                   Title.Equals(post.Title) &&
                   Team.Equals(post.Team) &&
                   comparer.Equals(Comments, post.Comments));
        }
예제 #10
0
        public override bool Equals(object obj)
        {
            if (!(obj is PostEntity Post))
            {
                return(false);
            }

            var Comparer = new CollectionComparer <CommentEntity>();

            return(Id == Post.Id &&
                   Author.Equals(Post.Author) &&
                   AuthorName.Equals(Post.AuthorName) &&
                   Text.Equals(Post.Text) &&
                   Date.Equals(Post.Date) &&
                   Title.Equals(Post.Title) &&
                   Team.Equals(Post.Team) &&
                   Comparer.Equals(Comments, Post.Comments));
        }
예제 #11
0
        public void CollectionsEqual()
        {
            var collection1 = new Collection <int>();

            collection1.Add(1);
            collection1.Add(5);
            collection1.Add(17);

            var collection2 = new Collection <int>();

            collection2.Add(1);
            collection2.Add(5);
            collection2.Add(17);

            var comparer = new CollectionComparer <int>();

            Assert.True(comparer.Equals(collection1, collection2));
        }
예제 #12
0
        public void TeamRepozitoryTest()
        {
            var dbContextFactory = new InMemoryDbContextFactory();
            var Repository       = new TeamRepository(dbContextFactory);
            var UserRepository   = new UserRepository(dbContextFactory);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(0));

            var Post = new PostModel()
            {
                Id       = 1,
                Author   = 4,
                Comments = new Collection <CommentModel>(),
                Date     = new DateTime(2019, 1, 4),
                Team     = 2,
                Text     = "No pozrite sa na tie komenty",
                Title    = "Lol"
            };
            var Comment1 = new CommentModel()
            {
                Author = 2,
                Date   = new DateTime(2019, 1, 4),
                Id     = 11,
                Text   = "Testovaci koment",
                Post   = 1
            };

            var Comment2 = new CommentModel()
            {
                Author = 1,
                Date   = new DateTime(2019, 1, 5),
                Id     = 20,
                Text   = "Testovaci koment cislo 2",
                Post   = 1
            };

            Post.Comments.Add(Comment1);
            Post.Comments.Add(Comment2);

            var User1 = new UserDetailModel()
            {
                Id       = 4,
                Name     = "Anton",
                Comments = new Collection <CommentModel>(),
                Email    = "*****@*****.**",
                Password = "******",
                Posts    = new Collection <PostModel>()
            };

            var User2 = new UserDetailModel()
            {
                Id       = 2,
                Name     = "Tomas",
                Email    = "*****@*****.**",
                Password = "******",
                Comments = new Collection <CommentModel>(),
                Posts    = new Collection <PostModel>()
            };
            var User3 = new UserDetailModel()
            {
                Id       = 3,
                Name     = "Sergej",
                Email    = "*****@*****.**",
                Password = "******",
                Comments = new Collection <CommentModel>(),
                Posts    = new Collection <PostModel>()
            };

            var Team1 = new TeamDetailModel()
            {
                Id      = 2,
                Leader  = User2.Id,
                Members = new Collection <UserListModel>(),
                Name    = "Team1",
            };
            var Team2 = new TeamDetailModel()
            {
                Id      = 3,
                Leader  = User3.Id,
                Members = new Collection <UserListModel>(),
                Name    = "Team2",
            };

            UserRepository.Create(User1);
            UserRepository.Create(User2);
            UserRepository.Create(User3);

            var userMapper = new UserMapper();

            Team1.Members.Add(userMapper.DetailModelToListModel(User1));
            Team1.Members.Add(userMapper.DetailModelToListModel(User2));

            Team2.Members.Add(userMapper.DetailModelToListModel(User2));
            Team2.Members.Add(userMapper.DetailModelToListModel(User3));

            Repository.Create(Team1);
            Repository.Create(Team2);

            var ReceivedTeam = Repository.GetById(2);

            Assert.Equal(Team1, ReceivedTeam);

            ReceivedTeam = Repository.GetById(3);

            Assert.Equal(Team2, ReceivedTeam);

            var AllTeams               = new List <TeamListModel>();
            var AllTeamsDetail         = new List <TeamDetailModel>();
            var ReceivedAllTeams       = Repository.GetAll();
            var ReceivedAllTeamsDetail = Repository.GetAllDetail();

            var teamMapper = new TeamMapper();

            AllTeams.Add(teamMapper.DetailModelToListModel(Team1));
            AllTeams.Add(teamMapper.DetailModelToListModel(Team2));
            AllTeamsDetail.Add(Team1);
            AllTeamsDetail.Add(Team2);

            var Comparer = new CollectionComparer <TeamListModel>();

            Assert.True(Comparer.Equals(AllTeams, ReceivedAllTeams));

            var DetailComparer = new CollectionComparer <TeamDetailModel>();

            Assert.True(DetailComparer.Equals(AllTeamsDetail, ReceivedAllTeamsDetail));

            var AllTeamsForUser1 = new List <TeamListModel>();

            AllTeamsForUser1.Add(teamMapper.DetailModelToListModel(Team1));

            var ReceivedAllTeamsForUser1 = Repository.GetAllTeamsForUser(User1.Id);

            Assert.True(Comparer.Equals(AllTeamsForUser1, ReceivedAllTeamsForUser1));

            Team1.Name = "Zmenene meno";

            Repository.Update(Team1);
            Assert.Equal(Team1, Repository.GetById(Team1.Id));

            Repository.Delete(3);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(0));

            ReceivedTeam = Repository.GetById(2);

            Assert.Equal(Team1, ReceivedTeam);
        }
예제 #13
0
        public void PostRepozitoryTest()
        {
            var Repository = new PostRepository(new InMemoryDbContextFactory());

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(1));

            var Post = new PostModel()
            {
                Id         = 1,
                Author     = 3,
                AuthorName = "Milos Hlava",
                Comments   = new Collection <CommentModel>(),
                Date       = new DateTime(2019, 1, 4),
                Team       = 6,
                Text       = "No pozrite sa na tie komenty",
                Title      = "Lol"
            };
            var Post2 = new PostModel()
            {
                Id         = 2,
                Author     = 3,
                AuthorName = "Milos Hlava",
                Comments   = new Collection <CommentModel>(),
                Date       = new DateTime(2019, 2, 4),
                Team       = 6,
                Text       = "Druhy post",
                Title      = "Lol"
            };
            var Comment1 = new CommentModel()
            {
                Author     = 10,
                AuthorName = "Jozej=f Hlava",
                Date       = new DateTime(2019, 1, 4),
                Id         = 11,
                Text       = "Testovaci koment",
                Post       = 1
            };

            var Comment2 = new CommentModel()
            {
                Author     = 10,
                AuthorName = "Jozef Hlava",
                Date       = new DateTime(2019, 1, 5),
                Id         = 20,
                Text       = "Testovaci koment cislo 2",
                Post       = 1
            };

            Post.Comments.Add(Comment1);
            Post.Comments.Add(Comment2);
            Repository.Create(Post);
            var ReceivedPost = Repository.GetById(1);

            Assert.Equal(Post, ReceivedPost);

            Post.Text = "Zmeneny text";
            Repository.Update(Post);
            ReceivedPost = Repository.GetById(1);

            Assert.Equal(Post, ReceivedPost);

            Repository.Create(Post2);
            List <PostModel> AllPosts = new List <PostModel>();

            AllPosts.Add(Post);
            AllPosts.Add(Post2);
            List <PostModel> ReceivedAllPosts = Repository.GetAll();

            CollectionComparer <PostModel> comparer = new CollectionComparer <PostModel>();

            Assert.True(comparer.Equals(AllPosts, ReceivedAllPosts));

            Repository.Delete(1);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(1));
        }
예제 #14
0
        public void UserRepozitoryTest()
        {
            var factory    = new InMemoryDbContextFactory();
            var Repository = new UserRepository(factory);



            using (var dbContext = factory.CreateDbContext())
            {
                dbContext.Database.EnsureDeleted();
            }

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(1));

            var User1 = new UserDetailModel()

            {
                Id       = 4,
                Name     = "Anton",
                Password = "******",
                Email    = "*****@*****.**",
            };

            var User2 = new UserDetailModel()
            {
                Id       = 2,
                Name     = "Anton",
                Password = "******",
                Email    = "*****@*****.**",
            };

            Repository.Create(User1);
            Repository.Create(User2);

            var ReceivedUser = Repository.GetById(4);

            Assert.Equal(User1, ReceivedUser);

            var userMapper = new UserMapper();

            var AllUsers = new List <UserListModel>();

            AllUsers.Add(userMapper.DetailModelToListModel(User1));
            AllUsers.Add(userMapper.DetailModelToListModel(User2));
            var ReceivedAllUsers = Repository.GetAll();

            var Comparer = new CollectionComparer <UserListModel>();

            Assert.True(Comparer.Equals(AllUsers, ReceivedAllUsers));

            User1.Name = "Antonko";

            Repository.Update(User1);
            ReceivedUser = Repository.GetById(4);

            Assert.Equal(User1, ReceivedUser);

            Repository.Delete(4);

            Assert.Throws <System.InvalidOperationException>(() => Repository.GetById(4));
        }