@Test public void testFabriquerCookies() throws RecetteInconnueException { // Cahier de recettes try { monMagasin.ajouterInvestissement(40); Cookie[] c = monMagasin.fabriquerCookies("Cookie au cacao", 1); assertEquals(monMagasin.getBilan(), 50 - cookieCacao.cout() + c[0].prix(), 0.0); } catch (SoldeInsuffisantException e) { System.out.println("Erreur : Solde insuffisant. Fin de la transaction"); fail(); } catch (StockInsuffisantException e) { } }
@Before public void setUp() throws Exception { // Ingrédients de base : Ingredient farine = new Ingredient("Farine", 10, 2); Ingredient beurre = new Ingredient("Beurre", 10, 3); Ingredient sucre = new Ingredient("Sucre", 10, 1); Ingredient oeufs = new Ingredient("Oeufs", 10, 5); // Création de la base commune des recettes Map<Ingredient, Integer> ingredientsDeBase = new HashMap<Ingredient, Integer>(); ingredientsDeBase.put(farine, 1); ingredientsDeBase.put(sucre, 1); ingredientsDeBase.put(oeufs, 2); ingredientsDeBase.put(beurre, 1); // Ingrédients spéciaux : Ingredient cacao = new Ingredient("Cacao", 2, 15); Ingredient vanille = new Ingredient("Vanille", 1, 50); Ingredient chocolat = new Ingredient("Chocolat en pépites", 5, 20); // Creation recette 1 : cookieChoco = new RecetteCookie("Cookie aux pépites de chocolat"); for (Map.Entry<Ingredient, Integer> entry : ingredientsDeBase.entrySet()) { cookieChoco.addIngredient(entry.getKey(), entry.getValue()); } cookieChoco.addIngredient(chocolat, 2); // Creation recette 2 : cookieVanille = new RecetteCookie("Cookie Vanille"); for (Map.Entry<Ingredient, Integer> entry : ingredientsDeBase.entrySet()) { cookieVanille.addIngredient(entry.getKey(), entry.getValue()); } cookieVanille.addIngredient(vanille, 1); // Création recette 3 : cookieCacao = new RecetteCookie("Cookie au cacao"); for (Map.Entry<Ingredient, Integer> entry : ingredientsDeBase.entrySet()) { cookieCacao.addIngredient(entry.getKey(), entry.getValue()); } cookieCacao.addIngredient(cacao, 1); // Création d'un magasin avec 10 euros d'investissement monMagasin = new MagasinCookies("CookieFactory", 10); monMagasin.ajouterRecette(cookieCacao); monMagasin.ajouterRecette(cookieVanille); monMagasin.ajouterRecette(cookieChoco); }
@Test(expected = SoldeInsuffisantException.class) public void testSoldeInsuffisant() throws SoldeInsuffisantException, RecetteInconnueException { try { Cookie[] c = monMagasin.fabriquerCookies("Cookie au cacao", 1); } catch (StockInsuffisantException e) { // TODO Auto-generated catch block e.printStackTrace(); fail(); } }