package agilpizza;

import static org.junit.Assert.assertTrue;

import org.junit.Before;
import org.junit.Test;

import agilpizza.selenium.SeleniumTestCase;



public class ClienteTest extends SeleniumTestCase {

	@Before
	public void acessarPagina() {
		sel.open(CONTEXTO);
		assertTrue(sel.isTextPresent("AgilPizza"));
		assertTrue(sel.isElementPresent("cliente"));
		sel.clickAndWait("cliente");
	}
	
	@Test
	public void testClienteNaoIdentificado() {
		assertTrue(sel.isTextPresent("Identificação do Cliente"));
	}
	
	
	@Test
	public void testClienteIdentificado() {
		assertTrue(sel.isTextPresent("Identificação do Cliente"));
		assertTrue(sel.isElementPresent("enviar"));
	
		sel.type("email", "teste@teste.com.br");
		sel.clickAndWait("enviar");
		
		assertTrue(sel.isTextPresent("Seus Dados:"));
		assertTrue(sel.isTextPresent("Endereço de entrega:"));
	}
	
	@Test
	public void testEnderecoClienteIdentificado() {
		
		assertTrue(sel.isTextPresent("Seus Dados:"));
		assertTrue(sel.isTextPresent("Endereço de entrega:"));
		
		sel.type("nome", "Teste do Selenium");
		sel.type("telefone", "123-4567");
		sel.type("rua", "Av da alegria");
		sel.type("numero", "1234");
		sel.clickAndWait("enviar");
		
		assertTrue(sel.isTextPresent("O seu pedido será entregue no seguinte endereço:"));
		assertTrue(sel.isTextPresent("Av da alegria"));
		assertTrue(sel.isTextPresent("1234"));
	}
	
	@Test
	public void testEnderecoIncompleto() {
		
		assertTrue(sel.isTextPresent("Seus Dados:"));
		assertTrue(sel.isTextPresent("Endereço de entrega:"));
		
		sel.type("nome", "");
		sel.type("telefone", "");
		sel.type("rua", "");
		sel.type("numero", "");
		sel.clickAndWait("enviar");
		
		assertTrue(sel.isTextPresent("Campos obrigatórios não foram preenchidos"));
	}

}
