public void Composite_With_Design()
        {
            //Arrange
            Remorque        maRemorque   = new Remorque(poids: 11);
            Tracteur        monTracteur  = new Tracteur(poids: 8);
            CamionComposite semiRemorque = new CamionComposite();

            semiRemorque.Add(maRemorque);
            semiRemorque.Add(monTracteur);

            //Act
            var poid = semiRemorque.GetPoids();

            //Assert
            Assert.Equal(19, poid);
        }
        public void Composite_Without_Design()
        {
            //Arrange
            List <Composant> TracteurComposants = new List <Composant>();
            Remorque         maRemorque         = new Remorque(poids: 11);
            Tracteur         monTracteur        = new Tracteur(poids: 8);

            TracteurComposants.Add(maRemorque);
            TracteurComposants.Add(monTracteur);

            //Act
            var poid = TracteurComposants.Sum(c => c.GetPoids());

            //Assert
            Assert.Equal(19, poid);

            //Here the "Sum" line 18 is logical piece of code that should have a place.
            //Or you risk of break the "DRY" principle "Don't Repeat Yourself"
            //Use a composite Design too use this kind of functionnality.
        }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            Remorque maRemorque = new Remorque(11);

            Console.WriteLine($"Le poids de ma remorque est : {maRemorque.getPoids()} tonnes");

            Tracteur monTracteur = new Tracteur(8);

            Console.WriteLine($"Le poids de mon tracteur est : {monTracteur.getPoids()} tonnes");

            Charge maCharge = new Charge(5);

            Console.WriteLine($"Le poids de ma charge est : {maCharge.getPoids()} tonnes");

            CamionComposite semiRemorque = new CamionComposite();

            semiRemorque.Ajouter(maRemorque);
            semiRemorque.Ajouter(monTracteur);
            semiRemorque.Ajouter(maCharge);

            Console.WriteLine($"Le poids de semi-remorque est : {semiRemorque.getPoids()} tonnes");

            Console.ReadLine();
        }