public void si_añadimos_dos_veces_una_ficha_del_mismo_tipo_en_posiciones_distintas_se_lanza_excepcion() { var tablero = new Tablero(); tablero.AddFicha(Fichas.Aspa, new Posicion(0, 0)); tablero.AddFicha(Fichas.Circulo, new Posicion(1, 0)); Assert.Throws<InvalidOperationException>(() => tablero.AddFicha(Fichas.Circulo, new Posicion(1, 0))); }
public void si_añado_una_ficha_a_un_tablero_iniciado_este_contendra_una_ficha_en_la_posicion_indicada() { var tablero = new Tablero(); var turno = new Turno(); var ficha = turno.GetFichaActual(); byte fila = 0; byte columna = 2; var posicion = new Posicion(fila,columna); tablero.AddFicha(ficha, posicion); Assert.Equal(1,tablero.GetNumeroFichas()); Assert.Equal(ficha,tablero.GetFicha(posicion)); }
public void si_todas_las_fichas_de_misma_diagonal_son_iguales_ganan_esas_fichas() { var tablero = new Tablero(); var turno = new Turno(); for (byte i = 0; i < DimensionTableroMenosUno; i++) { tablero.AddFicha(turno.GetFichaActual(), new Posicion(i, i)); tablero.AddFicha(turno.GetFichaActual(), new Posicion(i, (byte)(i + 1))); } Assert.Equal(null, tablero.GetGanador()); var ficha = turno.GetFichaActual(); tablero.AddFicha(ficha, new Posicion(DimensionTableroMenosUno, DimensionTableroMenosUno)); Assert.Equal(ficha, tablero.GetGanador()); }
public void si_existe_una_ficha_en_una_posicion_no_se_puede_poner_otra() { var tablero = new Tablero(); tablero.AddFicha(Fichas.Aspa, new Posicion(0,0)); Assert.Throws<InvalidOperationException>(() => tablero.AddFicha(Fichas.Circulo, new Posicion(0, 0))); }