public void IPezziNonPossonoRestareFermi(Type t) { //Given IPezzo pezzo = Activator.CreateInstance(t, Colore.Bianco) as IPezzo; Scacchiera scacchiera = new Scacchiera(); //When bool esito = pezzo.PuòMuovere(Colonna.A, Traversa.Prima, Colonna.A, Traversa.Prima, scacchiera); //Then Assert.False(esito, t.Name); }
public void IlCavalloPuoMuovereSoloAdL(Colore colore) { //Given Cavallo cavallo = new Cavallo(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = cavallo.PuòMuovere( colonnaPartenza: Colonna.G, traversaPartenza: Traversa.Ottava, colonnaArrivo: Colonna.E, traversaArrivo: Traversa.Sesta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void IlRePuoMuovereSoloDiUno(Colore colore) { //Given Re re = new Re(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = re.PuòMuovere( colonnaPartenza: Colonna.F, traversaPartenza: Traversa.Ottava, colonnaArrivo: Colonna.C, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void IlRePuoMuovereInDiagonaleDiUno(Colore colore) { //Given Re re = new Re(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = re.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Prima, colonnaArrivo: Colonna.B, traversaArrivo: Traversa.Seconda, scacchiera: scacchiera); //Then Assert.True(esito); }
public void LaDonnaPuoMuovereInDiagonale(Colore colore) { //Given Donna donna = new Donna(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = donna.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Prima, colonnaArrivo: Colonna.F, traversaArrivo: Traversa.Sesta, scacchiera: scacchiera); //Then Assert.True(esito); }
public void IlPedoneNeroNonPuoMuovereIndietroDiUnaCasa() { //Given Pedone pedone = new Pedone(Colore.Nero); Scacchiera scacchiera = new Scacchiera(); //When bool esito = pedone.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Terza, colonnaArrivo: Colonna.A, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void LaDonnaPuoMuovereSoloInDiagonaleOrizzontaleVerticale(Colore colore) { //Given Donna donna = new Donna(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = donna.PuòMuovere( colonnaPartenza: Colonna.F, traversaPartenza: Traversa.Ottava, colonnaArrivo: Colonna.C, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void IlPedoneBiancoPuoMuovereAvantiDiDueCaseDallaSecondaTravers() { //Given Pedone pedone = new Pedone(Colore.Bianco); Scacchiera scacchiera = new Scacchiera(); //When bool esito = pedone.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Seconda, colonnaArrivo: Colonna.A, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.True(esito); }
public void IlCavalloPuoMuovereAdL(Colore colore) { //Given Cavallo cavallo = new Cavallo(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = cavallo.PuòMuovere( colonnaPartenza: Colonna.B, traversaPartenza: Traversa.Prima, colonnaArrivo: Colonna.A, traversaArrivo: Traversa.Terza, scacchiera: scacchiera); //Then Assert.True(esito); }
public void LAlfierePuoMuovereSoloInDiagonale(Colore colore) { //Given Alfiere alfiere = new Alfiere(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = alfiere.PuòMuovere( colonnaPartenza: Colonna.F, traversaPartenza: Traversa.Ottava, colonnaArrivo: Colonna.C, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void LaTorreNonPuoMuovereInDiagonale(Colore colore) { //Given Torre torre = new Torre(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = torre.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Prima, colonnaArrivo: Colonna.F, traversaArrivo: Traversa.Quarta, scacchiera: scacchiera); //Then Assert.False(esito); }
public void LaTorrePuoMuovereInVerticale(Colore colore) { //Given Torre torre = new Torre(colore); Scacchiera scacchiera = new Scacchiera(); //When bool esito = torre.PuòMuovere( colonnaPartenza: Colonna.A, traversaPartenza: Traversa.Prima, colonnaArrivo: Colonna.A, traversaArrivo: Traversa.Sesta, scacchiera: scacchiera); //Then Assert.True(esito); }
public void ilPedoneNonSiPuòMuovereSeHaUnPezzoDavanti( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Pedone pedone = new Pedone(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(Colore.Bianco); //When bool esito = pedone.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.False(esito); }
public void ilCavalloNonPuòOccupareCasaOccupataDaPezzoDiStessoColore( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Cavallo cavallo = new Cavallo(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = cavallo.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.False(esito); }
public void laReginaNonSiPuòMuovereSeUnPezzoBloccaLoSpostamento( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Donna donna = new Donna(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = donna.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.False(esito); }
public void IlReNonSiPuòMuovereSeUnPezzoDelloStessoColoreBloccaLoSpostamento( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Re re = new Re(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = re.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.False(esito); }
public void lAlfierePuòMangiareInDiagonale( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Alfiere alfiere = new Alfiere(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = alfiere.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.True(esito); }
public void ilPedoneNonPuòMangiareUnPezzoDelloStessoColoreInDiagonaleDiUno( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Pedone pedone = new Pedone(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = pedone.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.False(esito); }
public void ilRePuòMangiarePezzoAvversarioInOrizzontaleVerticaleDiagonale( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Re re = new Re(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = re.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.True(esito); }
public void ilCavalloPuòMangiarePezzoAvversario( Colonna colonnaPartenza, Traversa traversaPartenza, Colonna colonnaArrivo, Traversa traversaArrivo, Colore colore, Colore colorePezzoBloccante, Colonna colonnaPezzoBloccante, Traversa traversaPezzoBloccante) { //Given Cavallo cavallo = new Cavallo(colore); Scacchiera scacchiera = new Scacchiera(); scacchiera[colonnaPezzoBloccante, traversaPezzoBloccante].PezzoPresente = new Pedone(colorePezzoBloccante); //When bool esito = cavallo.PuòMuovere(colonnaPartenza, traversaPartenza, colonnaArrivo, traversaArrivo, scacchiera); //Then Assert.True(esito); }
public void InserisciMossa(string mossa) { Coordinata partenza = InterpretaCoordinataCasa(mossa.Substring(0, 2)); Coordinata arrivo = InterpretaCoordinataCasa(mossa.Substring(3, 2)); ICasa casaPartenza = Scacchiera[partenza.Colonna, partenza.Traversa]; ICasa casaArrivo = Scacchiera[arrivo.Colonna, arrivo.Traversa]; if (casaPartenza.PezzoPresente == null || casaPartenza.PezzoPresente?.Colore != Orologio.TurnoAttuale || casaArrivo.PezzoPresente?.Colore == Orologio.TurnoAttuale || casaPartenza.PezzoPresente?.PuòMuovere(partenza.Colonna, partenza.Traversa, arrivo.Colonna, arrivo.Traversa, Scacchiera.Case) == false ) { throw new InvalidOperationException("Mossa non valida"); } Scacchiera.SpostaPezzo(casaPartenza, casaArrivo); BloccoNote.ScriviMossa(mossa); //Controllo che il re non sia stato mangiato Colore coloreControlloSconfitta; if (Orologio.TurnoAttuale == Colore.Bianco) { coloreControlloSconfitta = Colore.Nero; } else { coloreControlloSconfitta = Colore.Bianco; } bool reInVita = Scacchiera.ReInVita(coloreControlloSconfitta); if (!reInVita) { Vittoria.Invoke(Scacchiera, Orologio.TurnoAttuale); } Orologio.FineTurno(); }
public void FinisciPartita() { Orologio.Reset(); Scacchiera = new Scacchiera(); giocatori = null; }