package agilpizza;

import static org.junit.Assert.*;

import org.apache.tools.ant.taskdefs.Sleep;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

import agilpizza.selenium.SeleniumTestCase;

public class PedidoTest extends SeleniumTestCase {

	@BeforeClass
	public static void testarPedidoVazio() {
		sel.open(CONTEXTO);
		sel.clickAndWait("pedido");
		assertFalse(sel.isTextPresent("NullPointerException"));
	}

	@Before
	public void acessarPagina() {
		sel.open(CONTEXTO);
//		sel.clickAndWait("pedido");
	}

	@Test
	public void adicionarBebida() {
//		sel.open(CONTEXTO);
		sel.clickAndWait("listaDeBebidas");
		sel.click("idCoca-Colapeq");
		sel.click("idSkolpeq");
		sel.click("idCoca-Colagde");
		sel.click("idPetrópolispeq");
		sel.click("idLindoya c/gásgde");
		sel.click("idLindoya c/gásgde");
		sel.click("idMinalbagde");
		sel.clickAndWait("ok");
		assertEquals("Coca-Cola", sel.getTable("//table[2].1.0"));
		assertEquals("peq", sel.getTable("//table[2].1.1"));
		assertEquals("R$ 2.00", sel.getTable("//table[2].1.2"));
		assertTrue(sel.isTextPresent("Petrópolis"));
		assertEquals("peq", sel.getTable("//table[2].2.1"));
		assertEquals("R$ 1.50", sel.getTable("//table[2].2.2"));
		assertEquals("Coca-Cola", sel.getTable("//table[2].3.0"));
		assertEquals("gde", sel.getTable("//table[2].3.1"));
		assertEquals("R$ 5.00", sel.getTable("//table[2].3.2"));
		assertEquals("Skol", sel.getTable("//table[2].4.0"));
		assertEquals("peq", sel.getTable("//table[2].4.1"));
		assertEquals("R$ 3.00", sel.getTable("//table[2].4.2"));
		assertEquals("Minalba", sel.getTable("//table[2].5.0"));
		assertEquals("gde", sel.getTable("//table[2].5.1"));
		assertEquals("R$ 2.50", sel.getTable("//table[2].5.2"));
	}

	@Test
	public void adicionarPizza() {
		//	sel.open(CONTEXTO);
		sel.click("listaDeIngredientes");
		sel.select("idMuzzarela", "label=1");
		sel.select("idEscarola", "label=1");
		sel.select("idAzeitonas Pretas", "label=4");
		sel.select("Massa", "label=Grossa");
// FIXME		sel.select("Borda", "label=Sem Borda");
		sel.click("ok");
		sel.waitForPageToLoad("30000");
		assertEquals("1", sel.getTable("//table.1.0"));
		assertEquals("Muzzarela", sel.getTable("//table.1.1"));
		assertEquals("R$ 3.00", sel.getTable("//table.1.2"));
		assertTrue(sel.isTextPresent("Quantidade"));
		assertTrue(sel.isTextPresent("Ingrediente"));
		assertTrue(sel.isTextPresent("Preço total"));
		assertTrue(sel.isTextPresent("Total"));
		assertTrue(sel.isTextPresent("25.00"));
		assertEquals("4", sel.getTable("//table.3.0"));
		assertEquals("Azeitonas Pretas", sel.getTable("//table.3.1"));
		assertEquals("R$ 8.00", sel.getTable("//table.3.2"));
		sel.click("ok");
	}
	@Test
	public void verificaTotal() {
		sel.clickAndWait("pedido");
		assertTrue(sel.isTextPresent("Preço Total do Pedido"));
		assertTrue(sel.isTextPresent("R$ 39.00"));
		
	}
}

