Esempio n. 1
0
        public void PropClassCollectionArray2()
        {
            CloneCollectionModel model = new CloneCollectionModel
            {
                LANodes = new List <PropCloneNormalModel[]>()
            };

            for (int i = 0; i < 5; i++)
            {
                model.LANodes.Add(new PropCloneNormalModel[10]);
                for (int j = 0; j < 10; j++)
                {
                    model.LANodes[i][j] = new PropCloneNormalModel()
                    {
                        Age = j, Name = j.ToString()
                    };
                }
            }


            var newModel = CloneOperator.Clone(model);

            for (int i = 0; i < 5; i++)
            {
                Assert.NotEqual(model.LANodes, newModel.LANodes);
                for (int j = 0; j < 10; j++)
                {
                    Assert.NotEqual(model.LANodes[i], newModel.LANodes[i]);
                    Assert.Equal(model.LANodes[i][j].Name, newModel.LANodes[i][j].Name);
                    Assert.Equal(model.LANodes[i][j].Age, newModel.LANodes[i][j].Age);
                }
            }
        }
Esempio n. 2
0
        public void PropClassCollectionArray3()
        {
            CloneCollectionModel model = new CloneCollectionModel
            {
                ALNodes = new List <PropCloneNormalModel> [5]
            };

            for (int i = 0; i < 5; i++)
            {
                model.ALNodes[i] = new List <PropCloneNormalModel>();
                for (int j = 0; j < 10; j++)
                {
                    model.ALNodes[i].Add(new PropCloneNormalModel()
                    {
                        Age = j, Name = j.ToString()
                    });
                }
            }

            var newModel = model.Clone();

            for (int i = 0; i < 5; i++)
            {
                Assert.NotEqual(model.ALNodes, newModel.ALNodes);
                for (int j = 0; j < 10; j++)
                {
                    Assert.NotEqual(model.ALNodes[i], newModel.ALNodes[i]);
                    Assert.Equal(model.ALNodes[i][j].Name, newModel.ALNodes[i][j].Name);
                    Assert.Equal(model.ALNodes[i][j].Age, newModel.ALNodes[i][j].Age);
                }
            }
        }
Esempio n. 3
0
        public void PropClassCollectionArray1()
        {
            CloneCollectionModel model = new CloneCollectionModel();
            var INodes = new List <List <PropCloneNormalModel> >();

            for (int i = 0; i < 5; i++)
            {
                INodes.Add(new List <PropCloneNormalModel>());
                for (int j = 0; j < 10; j++)
                {
                    INodes[i].Add(new PropCloneNormalModel()
                    {
                        Age = j, Name = j.ToString()
                    });
                }
            }
            model.LLNodes = INodes;
            var newModel = CloneOperator.Clone(model);

            Assert.NotEqual(model.LLNodes, newModel.LLNodes);
            var oldNodes = new List <List <PropCloneNormalModel> >(model.LLNodes);
            var newNodes = new List <List <PropCloneNormalModel> >(newModel.LLNodes);

            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    Assert.NotEqual(oldNodes[i], newNodes[i]);
                    Assert.Equal(oldNodes[i][j].Name, newNodes[i][j].Name);
                    Assert.Equal(oldNodes[i][j].Age, newNodes[i][j].Age);
                }
            }
        }