package tests; import junit.framework.Assert; import org.junit.Test; import oqube.salestaxes.Item; import oqube.salestaxes.SalesTax; public class SalesTaxTest { @Test(expected=IllegalArgumentException.class) public void casConstructeurException() { /* Dans la doc, il est precise que l'argument good ne * doit pas être null. * Or ici, cela pose aucun souci au constructeur * lorsqu'on lui passe null. */ new SalesTax(null); } @Test public void casConstructeurCorrect() { /* OK pas de souci */ new SalesTax(new Item("chocolat", 2)); } @Test public void casPriceCorrect() { /* Pas de souci */ SalesTax sale = new SalesTax(new Item("chocolat", 2)); Assert.assertEquals(2, sale.price(), 0); } /* FIXME: inutile ? */ @Test public void casPriceCorrect2() { /* OK -> 2 != 2.0001 !*/ SalesTax sale = new SalesTax(new Item("chocolat", 2)); Assert.assertFalse(Double.compare(sale.price(), 2.0001)==0); } @Test public void casTaxesCorrect() { /* Pas de souci */ SalesTax sale = new SalesTax(new Item("chocolat", 2)); Assert.assertEquals(0.2, sale.taxes(), 0); } /* FIXME: inutile ? */ @Test public void casTaxesCorrect2() { /* Pas de souci */ SalesTax sale = new SalesTax(new Item("chocolat", 2)); Assert.assertFalse(Double.compare(sale.taxes(),0.20001)==0); } }