static void Main(string[] args) { Scacchiera s = Scacchiera.Istanza; s.Print(); Console.ReadLine(); }
public void DisegnaScacchiera(Scacchiera scacchiera) { Console.Clear(); for (int i = 0; i <= 4; i++) { Console.WriteLine($"{scacchiera.Cella(1).Righe[i]}|{scacchiera.Cella(2).Righe[i]}|{scacchiera.Cella(3).Righe[i]}"); } Console.WriteLine($"-----------------------"); for (int i = 0; i <= 4; i++) { Console.WriteLine($"{scacchiera.Cella(4).Righe[i]}|{scacchiera.Cella(5).Righe[i]}|{scacchiera.Cella(6).Righe[i]}"); } Console.WriteLine($"-----------------------"); for (int i = 0; i <= 4; i++) { Console.WriteLine($"{scacchiera.Cella(7).Righe[i]}|{scacchiera.Cella(8).Righe[i]}|{scacchiera.Cella(9).Righe[i]}"); } }
static void Main(string[] args) { Scacchiera s = Scacchiera.Istanza; s.Spostamento += StampaConsole; writer = new StreamWriter("log.txt"); s.Spostamento += StampaFile; Pedone p = new Pedone(Schieramento.Bianco) { Posizione = s.GetCella('B', 2) }; Torre t = new Torre(Schieramento.Bianco) { Posizione = s.GetCella('C', 1) }; Alfiere a = new Alfiere(Schieramento.Bianco) { Posizione = s.GetCella('E', 2) }; Re re = new Re(Schieramento.Bianco) { Posizione = s.GetCella('E', 1) }; Regina r = new Regina(Schieramento.Bianco) { Posizione = s.GetCella('G', 3) }; Cavallo c = new Cavallo(Schieramento.Bianco) { Posizione = s.GetCella('F', 2) }; s.Print(); Console.WriteLine(); Console.WriteLine("".PadRight(40, '-')); Console.WriteLine(); try { p.Muovi(s.GetCella('B', 3)); t.Muovi(s.GetCella('C', 4)); a.Muovi(s.GetCella('B', 5)); re.Muovi(s.GetCella('F', 1)); r.Muovi(s.GetCella('G', 5)); c.Muovi(s.GetCella('E', 5)); s.Print(); } catch (Exception ex) { Console.WriteLine(ex.Message); } writer.Flush(); writer.Close(); Console.ReadLine(); }
public void ScacchieraDeveAvere64Case() { //Given IScacchiera scacchiera = new Scacchiera(); //When //Then Assert.Equal(64, scacchiera.Case.Count()); }
public void sePezzoNonPresenteIlGetterRitornaNull() { //Given IScacchiera scacchiera = new Scacchiera(); //When ICasa casa = scacchiera[Colonna.B, Traversa.Prima]; //Then Assert.Null(casa.PezzoPresente); }
public void indexerDeveRestituireCasaCorretta() { //Given IScacchiera scacchiera = new Scacchiera(); //When ICasa casa = scacchiera[Colonna.F, Traversa.Quinta]; //Then Assert.Equal(Colonna.F, casa.Colonna); Assert.Equal(Traversa.Quinta, casa.Traversa); }
public void IPezziDevonoTrovarsiNellaPosizioneIndicataDallaSpecifica(Type tipoDiPezzo, Colore colorePezzo, Colonna colonna, Traversa traversa) { //Given IScacchiera scacchiera = new Scacchiera(); scacchiera.Case.Single(casa => casa.PezzoPresente != null && casa.PezzoPresente.GetType() == tipoDiPezzo && casa.PezzoPresente.Colore == colorePezzo && casa.Traversa == traversa && casa.Colonna == colonna); }
public void DeveEsserciSoloUnReBiancoInPosizioneE1() { //Given IScacchiera scacchiera = new Scacchiera(); //When IEnumerable <ICasa> caseConReBianco = scacchiera.Case.Where(casa => casa.PezzoPresente is Re && casa.PezzoPresente.Colore == Colore.Bianco); //Then Assert.Equal(1, caseConReBianco.Count()); Assert.Equal(Colonna.E, caseConReBianco.First().Colonna); Assert.Equal(Traversa.Prima, caseConReBianco.First().Traversa); }
static void Main(string[] args) { StreamWriter writer; Scacchiera s = Scacchiera.Istanza; Pedone p = new Pedone(Colore.Bianco) { Posizione = s.GetCella('B', 2) }; Torre t = new Torre(Colore.Bianco) { Posizione = s.GetCella('C', 1) }; Alfiere a = new Alfiere(Colore.Bianco) { Posizione = s.GetCella('E', 2) }; Re re = new Re(Colore.Bianco) { Posizione = s.GetCella('E', 1) }; Regina r = new Regina(Colore.Bianco) { Posizione = s.GetCella('G', 3) }; Cavallo c = new Cavallo(Colore.Bianco) { Posizione = s.GetCella('F', 2) }; s.Print(); Console.WriteLine(); Console.WriteLine("".PadRight(40, '-')); Console.WriteLine(); try { p.Muovi(s.GetCella('B', 3)); t.Muovi(s.GetCella('C', 4)); a.Muovi(s.GetCella('B', 5)); re.Muovi(s.GetCella('F', 1)); r.Muovi(s.GetCella('G', 5)); c.Muovi(s.GetCella('E', 5)); s.Stampa(); } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.ReadLine(); }
public void iPezziVengonoInseritiNellaPosizioneGiusta(Type pezzo, Colore colore, Colonna colonna, Traversa traversa) { //Given Scacchiera scacchiera = new Scacchiera(); //When scacchiera.disponiPezziInConfigurazioneIniziale(); ICasa casa = scacchiera[colonna, traversa]; //Then Assert.Equal(casa.PezzoPresente.GetType(), pezzo); Assert.Equal(casa.PezzoPresente.Colore, colore); }
public void InSecondaTraversaDevonoEsserciTuttiPedoniBianchi() { //Given IScacchiera scacchiera = new Scacchiera(); //When /*for (int i = 1; i <= 8; i++){ * Assert.IsType(typeof(Pedone), scacchiera[(Colonna) i, Traversa.Seconda].PezzoPresente); * }*/ IEnumerable <ICasa> caseInSecondaTraversa = scacchiera.Case.Where(casa => casa.Traversa == Traversa.Seconda); bool sonoTuttiPedoni = caseInSecondaTraversa.All(casa => casa.PezzoPresente is Pedone && casa.PezzoPresente.Colore == Colore.Bianco); //Then Assert.True(sonoTuttiPedoni); }
public void AllAvvioDellaPartitaDeveEsserePredispostaUnaScacchieraELOrologioAvviato() { //Given IScacchiera scacchiera = new Scacchiera(); IOrologio orologio = new Orologio(); ITavolo tavolo = new Tavolo(scacchiera, orologio); //When tavolo.RiceviGiocatori("", ""); tavolo.AvviaPartita(); //Then Assert.NotEqual(null, tavolo.Scacchiera); Assert.NotEqual(null, tavolo.Orologio); Assert.False(orologio.InPausa); }
public void InSecondaTraversaDevonoEsserciTuttiPedoniBianchi() { //Given IScacchiera scacchiera = new Scacchiera(); //When //Prendo tutte le case che si trovano in seconda traversa IEnumerable <ICasa> caseInSecondaTraversa = scacchiera.Case.Where(casa => casa.Traversa == Traversa.Seconda); //Controllo che tutte le case in seconda traversa siano del tipo "Pedone" //sonoTuttiPedoni restituisce true solo se tutti i pezzi presenti in caseInSecondaTraversa sono pedoni e sono bianchi bool sonoTuttiPedoniBianchi = caseInSecondaTraversa.All(casa => casa.PezzoPresente is Pedone && casa.PezzoPresente.Colore == Colore.Bianco); /* * Approccio ad accesso randomico * for(int i = 1; i <= 8 ; i++) * Assert.IsType(typeof(Pedone),scacchiera[(Colonna) i, Traversa.Seconda].PezzoPresente); */ //Then Assert.True(sonoTuttiPedoniBianchi); }
public void pezzoSiSpostaSeMossaValida(string coord1, string coord2) { //Given Scacchiera scacchiera = new Scacchiera(); Orologio orologio = new Orologio(); BloccoNote bloccoNote = new BloccoNote(); Tavolo tavolo = new Tavolo(scacchiera, orologio, bloccoNote); //When tavolo.RiceviGiocatori("Fhurer", "Mahatma"); tavolo.AvviaPartita(); var coordPartenza = tavolo.InterpretaCoordinataCasa(coord1); var coordFine = tavolo.InterpretaCoordinataCasa(coord2); var pezzoInQuestione = tavolo.Scacchiera[coordPartenza.Colonna, coordPartenza.Traversa].PezzoPresente; tavolo.InserisciMossa(coord1 + " " + coord2); Assert.Equal(tavolo.Scacchiera[coordPartenza.Colonna, coordPartenza.Traversa].PezzoPresente, null); Assert.Equal(tavolo.Scacchiera[coordFine.Colonna, coordFine.Traversa].PezzoPresente, pezzoInQuestione); }
public void MossaInvalidaLanciaEccezione(string mossaInvalida) { //Given Scacchiera scacchiera = new Scacchiera(); Orologio orologio = new Orologio(); BloccoNote bloccoNote = new BloccoNote(); Tavolo tavolo = new Tavolo(scacchiera, orologio, bloccoNote); //When tavolo.RiceviGiocatori("Robespierre", "Rob Van Dam"); tavolo.AvviaPartita(); //Simulazione di alcune mosse valide di pedoni tavolo.InserisciMossa("A2 A4"); tavolo.InserisciMossa("A7 A5"); tavolo.InserisciMossa("B2 B4"); tavolo.InserisciMossa("A5 B4"); //Cosa succede per le mosse invalide Assert.Throws(typeof(InvalidOperationException), () => { tavolo.InserisciMossa(mossaInvalida); }); }
public IGiocatore ControllaVincitore(Scacchiera scacchiera) { return(null); }
public GameRunner(Giocatore giocatore1, Giocatore giocatore2) { _scacchiera = new Scacchiera(); _giocatore1 = giocatore1; _giocatore2 = giocatore2; }