package agilpizza.pizza;

import static org.junit.Assert.*;

import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import agilpizza.internal.SeleniumTestCase;

public class PedidoBebidasTest extends SeleniumTestCase {
	@BeforeMethod
	public void entrarNaPagina() {
		sel.open(CONTEXTO);
		sel.clickAndWait("linkPedidoBebida");
	}

	@Test
	public void testBebidas() {
		assertTrue("Falta Bebidas", sel.isTextPresent("Bebidas"));
		assertTrue("Falta refrigerante Coca-Cola - 2L", sel.isTextPresent("Coca-Cola - 2L"));
		assertTrue("Falta refrigerante Guaraná - 2L", sel.isTextPresent("Guaraná - 2L"));
		assertTrue("Falta refrigerante Soda - 2L", sel.isTextPresent("Soda - 2L"));
		assertTrue("Falta refrigerante H2O", sel.isTextPresent("H2O"));
		assertTrue("Falta refrigerante Água", sel.isTextPresent("Água"));
	}
	
	@Test
	public void testBebidaH2O(){
		sel.check("formSelecionarBebida:tabelaDeBebidas:3:_idJsp4");
		sel.clickAndWait("formSelecionarBebida:enviarBebidaSelecionada");
		preencheFormulario();
		assertTrue("quando pede bebida avisa o cliente",sel.isTextPresent("BEBIDA(S) ESCOLHIDA(S)"));
		assertTrue("Falta refrigerante H2O", sel.isTextPresent("H2O"));
		assertTrue("preço está correto", sel.isTextPresent("Valor Bebida: R$ 2,2"));
	}
	
	@Test(enabled= false)
	public void test2Bebidas(){
		sel.check("formSelecionarBebida:tabelaDeBebidas:3:_idJsp4");
		sel.check("formSelecionarBebida:tabelaDeBebidas:2:_idJsp4");
		sel.clickAndWait("formSelecionarBebida:enviarBebidaSelecionada");
		preencheFormulario();
		assertTrue("quando pede bebida avisa o cliente",sel.isTextPresent("BEBIDA(S) ESCOLHIDA(S)"));
		assertTrue("Falta refrigerante H2O", sel.isTextPresent("H2O"));
		assertTrue("Falta refrigerante Soda", sel.isTextPresent("Soda"));
		assertTrue("preço está correto", sel.isTextPresent("Valor Bebida: R$ 4,2"));
	}
	
	@Test
	public void test0BebidasNaumMostraNada(){
		sel.deleteCookie(sel.getCookie(),CONTEXTO);
		sel.clickAndWait("formSelecionarBebida:enviarBebidaSelecionada");
		preencheFormulario();
		assertFalse("quando não pede bebida não deveria ver nada",sel.isTextPresent("BEBIDA(S) ESCOLHIDA(S)"));
	}

	private void preencheFormulario() {
		assertTrue("não foi pra página de cadastro", sel.isTextPresent("Dados do Cliente"));
		//sel.type("formAnotarEndereco:nome", "João Alberto Gomes");
		sel.type("formAnotarEndereco:telefone", "1234-1234");
		//sel.type("formAnotarEndereco:rua", "Rua do Matão");
		//sel.type("formAnotarEndereco:numero", "1010");
		//sel.type("formAnotarEndereco:complemento", "CEC");
		//sel.type("formAnotarEndereco:bairro", "Cidade Universitária");
		//sel.type("formAnotarEndereco:cep", "05508-090");
		sel.clickAndWait("formAnotarEndereco:enviarEndereco");
	}
	
	
}
