Skip to content

Instantly share code, notes, and snippets.

@fercarcedo
Created December 10, 2014 21:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save fercarcedo/a337dd22ce315064269d to your computer and use it in GitHub Desktop.
Save fercarcedo/a337dd22ce315064269d to your computer and use it in GitHub Desktop.
Clase MagicSquareTest (tarea obligatoria seminario IP) - Fernando García Álvarez
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
/**
* The test class MagicSquareTest.
*
* @author (your name)
* @version (a version number or a date)
*/
public class MagicSquareTest
{
/**
* Test del método isMagicSquare()
*/
@Test
public void testIsMagicSquare()
{
//Caso 1: que el cuadrado sea un cuadrado mágico
MagicSquare magicSquare = new MagicSquare(5);
magicSquare.placeNumber(0, 0, 17);
magicSquare.placeNumber(0, 1, 24);
magicSquare.placeNumber(0, 2, 1);
magicSquare.placeNumber(0, 3, 8);
magicSquare.placeNumber(0, 4, 15);
magicSquare.placeNumber(1, 0, 23);
magicSquare.placeNumber(1, 1, 5);
magicSquare.placeNumber(1, 2, 7);
magicSquare.placeNumber(1, 3, 14);
magicSquare.placeNumber(1, 4, 16);
magicSquare.placeNumber(2, 0, 4);
magicSquare.placeNumber(2, 1, 6);
magicSquare.placeNumber(2, 2, 13);
magicSquare.placeNumber(2, 3, 20);
magicSquare.placeNumber(2, 4, 22);
magicSquare.placeNumber(3, 0, 10);
magicSquare.placeNumber(3, 1, 12);
magicSquare.placeNumber(3, 2, 19);
magicSquare.placeNumber(3, 3, 21);
magicSquare.placeNumber(3, 4, 3);
magicSquare.placeNumber(4, 0, 11);
magicSquare.placeNumber(4, 1, 18);
magicSquare.placeNumber(4, 2, 25);
magicSquare.placeNumber(4, 3, 2);
magicSquare.placeNumber(4, 4, 9);
assertTrue(magicSquare.isMagicSquare());
//Caso 2: que el cuadrado no sea un cuadrado mágico
magicSquare = new MagicSquare(5);
magicSquare.placeNumber(0, 0, 1);
magicSquare.placeNumber(0, 1, 24);
magicSquare.placeNumber(0, 2, 1);
magicSquare.placeNumber(0, 3, 8);
magicSquare.placeNumber(0, 4, 15);
magicSquare.placeNumber(1, 0, 23);
magicSquare.placeNumber(1, 1, 5);
magicSquare.placeNumber(1, 2, 7);
magicSquare.placeNumber(1, 3, 14);
magicSquare.placeNumber(1, 4, 16);
magicSquare.placeNumber(2, 0, 4);
magicSquare.placeNumber(2, 1, 6);
magicSquare.placeNumber(2, 2, 13);
magicSquare.placeNumber(2, 3, 20);
magicSquare.placeNumber(2, 4, 22);
magicSquare.placeNumber(3, 0, 10);
magicSquare.placeNumber(3, 1, 12);
magicSquare.placeNumber(3, 2, 19);
magicSquare.placeNumber(3, 3, 21);
magicSquare.placeNumber(3, 4, 3);
magicSquare.placeNumber(4, 0, 11);
magicSquare.placeNumber(4, 1, 18);
magicSquare.placeNumber(4, 2, 25);
magicSquare.placeNumber(4, 3, 2);
magicSquare.placeNumber(4, 4, 9);
assertFalse(magicSquare.isMagicSquare());
}
/**
* Método que comprueba el correcto funcionamiento del método generateSquare()
*/
@Test
public void testGenerateSquare()
{
MagicSquare magicSquare = new MagicSquare();
magicSquare.generateSquare();
assertTrue(magicSquare.isMagicSquare());
}
/**
* Método que comprueba el correcto funcionamiento del método placeNumber()
*/
@Test
public void testPlaceNumber()
{
//Caso 1: que los parámetros sean correctos
MagicSquare magicSquare = new MagicSquare();
assertEquals(0, magicSquare.getNumber(0, 0));
magicSquare.placeNumber(0, 0, 3);
assertEquals(3, magicSquare.getNumber(0, 0));
//Caso 2: que la fila sea incorrecta
magicSquare = new MagicSquare();
assertEquals(0, magicSquare.getNumber(0, 0));
magicSquare.placeNumber(-1, 0, 3);
assertEquals(0, magicSquare.getNumber(0, 0));
//Caso 3: que la columna sea incorrecta
magicSquare = new MagicSquare();
assertEquals(0, magicSquare.getNumber(0, 0));
magicSquare.placeNumber(0, -1, 3);
assertEquals(0, magicSquare.getNumber(0, 0));
//Caso 4: que todos los parámetros sean incorrectos
magicSquare = new MagicSquare();
assertEquals(0, magicSquare.getNumber(0, 0));
magicSquare.placeNumber(-1, -1, 3);
assertEquals(0, magicSquare.getNumber(0, 0));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment