package senai.systock.model;

import org.junit.Test;

import senai.systock.exceptions.ValidationException;

import static org.junit.Assert.*;

public class LoginTest {

	@Test
	public void sucessoTest() throws ValidationException {
		Login l = new Login("teste", "123456");
		l.login();
	}

	@Test
	public void usuarioInexistenteTest() {
		Login l = new Login("Teste", "123456");
		try {
			l.login();
			fail("O usurio nao existe.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 1);
			assertEquals(e.getMensagens()[0],
					"Usurio e/ou senha incorreto(s).");
		}
	}

	@Test
	public void senhaIncorretaTeste() {
		Login l = new Login("teste", "1234567");
		try {
			l.login();
			fail("A senha esta incorreta.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 1);
			assertEquals(e.getMensagens()[0],
					"Usurio e/ou senha incorreto(s).");
		}
	}

	@Test
	public void usuarioIncorretosenhaIncorretoTest() {
		Login l = new Login("Teste", "1234567");
		try {
			l.login();
			fail("O campo usurio esta incorreto. \n O campo senha esta incorreto.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 1);
			assertEquals(e.getMensagens()[0],
					"Usurio e/ou senha incorreto(s).");
		}
	}

	@Test
	public void usuarioObrigatorioTest() {
		Login l = new Login("", "123456");
		try {
			l.login();
			fail("O campo usurio e obrigatorio.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 1);
			assertEquals(e.getMensagens()[0], "O campo de login  obrigatrio.");
		}
	}

	@Test
	public void senhaObrigatoriaTest() {
		Login l = new Login("teste", "");
		try {
			l.login();
			fail("O campo senha e obrigatorio.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 1);
			assertEquals(e.getMensagens()[0], "O campo de senha  obrigatrio.");
		}
	}

	@Test
	public void usuarioObrigatoriosenhaObrigatorioTest() {
		Login l = new Login("", "");
		try {
			l.login();
			fail("O campo usurio e obrigatorio. \n O campo senha e obrigatorio.");
		} catch (ValidationException e) {
			assertEquals(e.getMensagens().length, 2);
			assertEquals(e.getMensagens()[0], "O campo de login  obrigatrio.");
			assertEquals(e.getMensagens()[1], "O campo de senha  obrigatrio.");

		}
	}

}

@@ -364,37 +364,40 @@
  l = new Login(%22
-Teste
+Vendedor
 %22, %22123456%22);%0D%0A%09
@@ -688,37 +688,40 @@
  l = new Login(%22
-teste
+vendedor
 %22, %221234567%22);%0D%0A
@@ -989,16 +989,18 @@
 ioIn
-corretos
+existenteS
 enha
@@ -1007,17 +1007,17 @@
 Incorret
-o
+a
 Test() %7B
@@ -1358,32 +1358,24 @@
 ic void 
-usuarioObrigator
+loginVaz
 ioTest()
@@ -1675,25 +1675,19 @@
 id senha
-Obrigator
+Vaz
 iaTest()
@@ -1991,35 +1991,23 @@
 ario
-Obrigatorios
+VazioS
 enha
-Obrigatorio
+Vazia
 Test

Teste unitario de login....