Esempio n. 1
0
        public void It_ShouldReturnAnObjectIdentical()
        {
            var objToClone = new Obj1
            {
                S = "some string",
                D = DateTime.Now,
                O = new Obj2
                {
                    I = 4,
                    B = true
                }
            };

            Obj1 result = objToClone.Clone();

            result.Should().BeEquivalentTo(objToClone);
        }
Esempio n. 2
0
        public void It_ShouldProduceAnImmutableObject()
        {
            var objToClone = new Obj1
            {
                S = "some string",
                D = DateTime.Now,
                O = new Obj2
                {
                    I = 4,
                    B = true
                }
            };

            Obj1 result = objToClone.Clone();

            objToClone.O.I = 5;

            result.Should().NotBeEquivalentTo(objToClone);
        }
Esempio n. 3
0
        public async Task It_ShouldReturnAnObjectIdenticalFromTask()
        {
            Task <Obj1> objToClone = Task.FromResult(
                new Obj1
            {
                S = "some string",
                D = DateTime.Now,
                O = new Obj2
                {
                    I = 4,
                    B = true
                }
            }
                );

            Obj1 result = await objToClone.CloneAsync();

            result.Should().BeEquivalentTo(await objToClone);
        }