コード例 #1
0
        public void IntervertirLesRôlesDesJoueurs()
        {
            IContratDuJoueurDeBatailleNavale temp = this.Attaquant;

            this.Attaquant = this.Défenseur;
            this.Défenseur = temp;
        }
コード例 #2
0
        public PartieDeBatailleNavale(IContratDuJoueurDeBatailleNavale cjbn1, IContratDuJoueurDeBatailleNavale cjbn2)
        {
            if (cjbn1 == null || cjbn2 == null)
            {
                throw new ArgumentNullException("ne doit pas être null");
            }

            this.Attaquant = cjbn1;
            this.Défenseur = cjbn2;
            this.ChoisirLesRôlesDeDépartDesJoueurs();
        }
コード例 #3
0
        public void Phase1_4_PartieDeBatailleNavale_IntervertirLesRôlesDesJoueurs()
        {
            IContratDuJoueurDeBatailleNavale joueur1 = new joueurTest("joueur 1");
            IContratDuJoueurDeBatailleNavale joueur2 = new joueurTest("joueur 2");
            PartieDeBatailleNavale           partie  = new PartieDeBatailleNavale(joueur1,
                                                                                  joueur2);

            partie.ChoisirLesRôlesDeDépartDesJoueurs();
            IContratDuJoueurDeBatailleNavale attaquantActuel = partie.Attaquant;
            IContratDuJoueurDeBatailleNavale défenseurActuel = partie.Défenseur;

            for (int x = 0; x < 100; x++)
            {
                partie.IntervertirLesRôlesDesJoueurs();
                if (attaquantActuel == partie.Attaquant)
                {
                    Assert.Fail("L'attaquant n'a pas changé après l'appel à IntervertirLesRôlesDesJoueurs()");
                }
                Assert.AreEqual(défenseurActuel, partie.Attaquant, "Incohérence après l'interversion des rôles des joueurs");

                attaquantActuel = partie.Attaquant;
                défenseurActuel = partie.Défenseur;
            }
        }