Ejemplo n.º 1
0
        public void Should_GenerateNewId_When_Cloning()
        {
            var item = new WidgetMock
            {
                Id   = Guid.NewGuid(),
                Name = Guid.NewGuid().ToString(),
            };

            var copy = (Item)item.Clone();

            Assert.AreNotEqual(item.Id, copy.Id);
        }
Ejemplo n.º 2
0
        public void Should_CreateNewObjects_When_Cloning()
        {
            var item = new WidgetMock
            {
                Id   = Guid.NewGuid(),
                Name = Guid.NewGuid().ToString(),
            };

            var copy = (Item)item.Clone();

            Assert.AreNotSame(copy, item);
            Assert.AreNotSame(copy.Items, item.Items);

            Assert.AreEqual(item.Name, copy.Name);

            Assert.IsNull(copy.Parent);
        }
Ejemplo n.º 3
0
        public void Should_IncludeChildren_When_Cloning()
        {
            var item = new WidgetMock
            {
                Id   = Guid.NewGuid(),
                Name = Guid.NewGuid().ToString(),
            };

            item.Items.Add(new WidgetMock());

            var copy = (Item)item.Clone();

            Assert.IsNotNull(copy.Items);

            Assert.AreNotSame(copy.Items, item.Items);

            Assert.IsTrue(copy.Items.Count == 1);

            Assert.AreNotSame(copy.Items.First(), item.Items.First());
        }