package trips; import static org.junit.Assert.*; import org.junit.Test; public abstract class LauaTest { abstract LauaLiides looLaud(); @Test public void tyhiLaud(){ LauaLiides laud=looLaud(); laud.tyhjenda(); assertTrue(laud.kasVaba(1, 3)); } @Test(expected=RuntimeException.class) public void lubamatuSymboliK2imine(){ LauaLiides laud=looLaud(); laud.k2ik(1, 2, 'S'); //Lubamatu sümbol } @Test public void k2imine(){ LauaLiides laud=looLaud(); assertTrue(laud.kasVaba(1, 2)); laud.k2ik(1, 2, '0'); assertFalse(laud.kasVaba(1, 2)); try{ laud.k2ik(1, 2, 'X'); fail("Lubati samale kohale käia"); } catch(Exception ex){} } @Test public void servad(){ LauaLiides laud=looLaud(); try{ laud.k2ik(0, 3, 'X'); fail("Lubati käia olematusse ritta nr. 0"); } catch(IndexOutOfBoundsException ex){ //System.out.println(ex.getMessage()); } try{ laud.k2ik(0, 5, 'X'); fail("Lubati käia olematusse ritta nr. 0"); } catch(IndexOutOfBoundsException ex){ //System.out.println(ex); } try{ laud.k2ik(4, -5, 'X'); fail("Lubati käia olematusse ritta nr. 4"); } catch(IndexOutOfBoundsException ex){ //System.out.println(ex); } } @Test public void kordam88da(){ LauaLiides laud=looLaud(); laud.k2ik(1, 1, '0'); try{ laud.k2ik(1, 2, '0'); fail("Lubati nullil korduvalt käia"); } catch(Exception ex){ //System.out.println(ex); } laud.k2ik(1, 3, 'X'); try{ laud.k2ik(2, 1, 'X'); fail("Lubati ristil korduvalt käia"); } catch(Exception ex){ // System.out.println(ex); } } @Test public void manguSeisund(){ LauaLiides laud=looLaud(); assertEquals(0, laud.k2ik(1, 1, '0')); assertEquals(0, laud.k2ik(1, 2, 'X')); assertEquals(0, laud.k2ik(1, 3, '0')); assertEquals(0, laud.k2ik(2, 2, 'X')); assertEquals(0, laud.k2ik(3, 2, '0')); assertEquals(0, laud.k2ik(3, 3, 'X')); assertEquals(0, laud.k2ik(2, 3, '0')); assertEquals(0, laud.k2ik(2, 1, 'X')); assertEquals(3, laud.k2ik(3, 1, '0')); //Pange klass viiki leidma } //Lisage paar testi erisuguste võitude kohta //Veenduge, et vigased testid töötavad valesti ning parandage need @Test public void XV6it1(){ LauaLiides laud=looLaud(); assertEquals(0, laud.k2ik(1, 1, 'X')); assertEquals(0, laud.k2ik(1, 3, '0')); assertEquals(0, laud.k2ik(2, 1, 'X')); assertEquals(0, laud.k2ik(2, 3, '0')); assertEquals(2, laud.k2ik(3, 1, 'X')); } @Test public void nulliV6it1(){ LauaLiides laud=looLaud(); assertEquals(0, laud.k2ik(1, 1, '0')); assertEquals(0, laud.k2ik(1, 3, 'X')); assertEquals(0, laud.k2ik(2, 1, '0')); assertEquals(0, laud.k2ik(2, 3, 'X')); assertEquals(1, laud.k2ik(3, 1, '0')); /*try{ laud.k2ik(2, 2, 'X'); //Lisage kontroll fail("Lubati käik pärast võitu"); }catch(Exception ex){}*/ } @Test public void symbolid(){ LauaLiides laud=looLaud(); assertEquals('.', laud.symbol(1, 2)); laud.k2ik(1, 2, '0'); assertEquals('0', laud.symbol(1, 2)); } }