Commit 76c84182904f85a9bf8a5b46e5575218435c2cde
1 parent
7c6c4e7f
Exists in
master
Pacotes para os testes de Exception
Showing
23 changed files
with
865 additions
and
953 deletions
Show diff stats
impl/core/src/test/java/exception/CustomException.java
| ... | ... | @@ -1,46 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import br.gov.frameworkdemoiselle.exception.ApplicationException; | |
| 40 | - | |
| 41 | -@ApplicationException | |
| 42 | -public class CustomException extends RuntimeException { | |
| 43 | - | |
| 44 | - private static final long serialVersionUID = 1L; | |
| 45 | - | |
| 46 | -} |
impl/core/src/test/java/exception/CustomExceptionHandler.java
| ... | ... | @@ -1,63 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | - | |
| 42 | -@Controller | |
| 43 | -public class CustomExceptionHandler { | |
| 44 | - | |
| 45 | - private boolean exceptionHandler = false; | |
| 46 | - | |
| 47 | - public boolean isExceptionHandler() { | |
| 48 | - return exceptionHandler; | |
| 49 | - } | |
| 50 | - | |
| 51 | - public void setExceptionHandler(boolean exceptionHandler) { | |
| 52 | - this.exceptionHandler = exceptionHandler; | |
| 53 | - } | |
| 54 | - | |
| 55 | - public void throwExceptionWithMessage() { | |
| 56 | - throw new CustomException(); | |
| 57 | - } | |
| 58 | - | |
| 59 | - @ExceptionHandler | |
| 60 | - public void handler(CustomException exception) { | |
| 61 | - setExceptionHandler(true); | |
| 62 | - } | |
| 63 | -} |
impl/core/src/test/java/exception/CustomExceptionTest.java
| ... | ... | @@ -1,68 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import static junit.framework.Assert.assertEquals; | |
| 40 | - | |
| 41 | -import javax.inject.Inject; | |
| 42 | - | |
| 43 | -import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | -import org.jboss.arquillian.junit.Arquillian; | |
| 45 | -import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | -import org.junit.Test; | |
| 47 | -import org.junit.runner.RunWith; | |
| 48 | - | |
| 49 | -import test.Tests; | |
| 50 | - | |
| 51 | -@RunWith(Arquillian.class) | |
| 52 | -public class CustomExceptionTest { | |
| 53 | - | |
| 54 | - @Inject | |
| 55 | - private CustomExceptionHandler exception; | |
| 56 | - | |
| 57 | - @Deployment | |
| 58 | - public static JavaArchive createDeployment() { | |
| 59 | - JavaArchive deployment = Tests.createDeployment(CustomExceptionTest.class); | |
| 60 | - return deployment; | |
| 61 | - } | |
| 62 | - | |
| 63 | - @Test | |
| 64 | - public void testCustomExceptionHandler() { | |
| 65 | - exception.throwExceptionWithMessage(); | |
| 66 | - assertEquals(true, exception.isExceptionHandler()); | |
| 67 | - } | |
| 68 | -} |
impl/core/src/test/java/exception/ExceptionHandlerTwoParameter.java
| ... | ... | @@ -1,54 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import java.awt.geom.IllegalPathStateException; | |
| 40 | - | |
| 41 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 42 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 43 | - | |
| 44 | -@Controller | |
| 45 | -public class ExceptionHandlerTwoParameter { | |
| 46 | - | |
| 47 | - public void throwIllegalPathException() { | |
| 48 | - throw new IllegalPathStateException(); | |
| 49 | - } | |
| 50 | - | |
| 51 | - @ExceptionHandler | |
| 52 | - public void handler(IllegalPathStateException cause, IllegalStateException cause2) { | |
| 53 | - } | |
| 54 | -} |
impl/core/src/test/java/exception/ExceptionInheritance.java
| ... | ... | @@ -1,75 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | - | |
| 42 | -@Controller | |
| 43 | -public class ExceptionInheritance { | |
| 44 | - | |
| 45 | - private boolean handlerSuperClass = false; | |
| 46 | - | |
| 47 | - private boolean handlerClass = false; | |
| 48 | - | |
| 49 | - public boolean isHandlerSuperClass() { | |
| 50 | - return handlerSuperClass; | |
| 51 | - } | |
| 52 | - | |
| 53 | - public boolean isHandlerClass() { | |
| 54 | - return handlerClass; | |
| 55 | - } | |
| 56 | - | |
| 57 | - public void throwNullPointerException() { | |
| 58 | - throw new NullPointerException(); | |
| 59 | - } | |
| 60 | - | |
| 61 | - public void throwArithmeticException() { | |
| 62 | - throw new ArithmeticException(); | |
| 63 | - } | |
| 64 | - | |
| 65 | - @ExceptionHandler | |
| 66 | - public void handle(ArithmeticException e) { | |
| 67 | - handlerClass = true; | |
| 68 | - } | |
| 69 | - | |
| 70 | - @ExceptionHandler | |
| 71 | - public void handle(RuntimeException e) { | |
| 72 | - handlerSuperClass = true; | |
| 73 | - } | |
| 74 | - | |
| 75 | -} |
impl/core/src/test/java/exception/ExceptionInheritanceTest.java
| ... | ... | @@ -1,75 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import static junit.framework.Assert.assertEquals; | |
| 40 | - | |
| 41 | -import javax.inject.Inject; | |
| 42 | - | |
| 43 | -import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | -import org.jboss.arquillian.junit.Arquillian; | |
| 45 | -import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | -import org.junit.Test; | |
| 47 | -import org.junit.runner.RunWith; | |
| 48 | - | |
| 49 | -import test.Tests; | |
| 50 | - | |
| 51 | -@RunWith(Arquillian.class) | |
| 52 | -public class ExceptionInheritanceTest { | |
| 53 | - | |
| 54 | - @Inject | |
| 55 | - private ExceptionInheritance exceptionInheritance; | |
| 56 | - | |
| 57 | - @Deployment | |
| 58 | - public static JavaArchive createDeployment() { | |
| 59 | - JavaArchive deployment = Tests.createDeployment(ExceptionInheritanceTest.class); | |
| 60 | - return deployment; | |
| 61 | - } | |
| 62 | - | |
| 63 | - @Test | |
| 64 | - public void testExceptionInheritanceSuperClass() { | |
| 65 | - exceptionInheritance.throwNullPointerException(); | |
| 66 | - assertEquals(true, exceptionInheritance.isHandlerSuperClass()); | |
| 67 | - } | |
| 68 | - | |
| 69 | - @Test | |
| 70 | - public void testExceptionInheritanceClass() { | |
| 71 | - exceptionInheritance.throwArithmeticException(); | |
| 72 | - assertEquals(false, exceptionInheritance.isHandlerSuperClass()); | |
| 73 | - assertEquals(true, exceptionInheritance.isHandlerClass()); | |
| 74 | - } | |
| 75 | -} |
impl/core/src/test/java/exception/MultiException.java
| ... | ... | @@ -1,81 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | - | |
| 42 | -@Controller | |
| 43 | -public class MultiException { | |
| 44 | - | |
| 45 | - private boolean nullPointerExceptionHandler = false; | |
| 46 | - | |
| 47 | - private boolean arithmeticExceptionHandler = false; | |
| 48 | - | |
| 49 | - public boolean isNullPointerExceptionHandler() { | |
| 50 | - return nullPointerExceptionHandler; | |
| 51 | - } | |
| 52 | - | |
| 53 | - public boolean isArithmeticExceptionHandler() { | |
| 54 | - return arithmeticExceptionHandler; | |
| 55 | - } | |
| 56 | - | |
| 57 | - public void throwNullPointerException() { | |
| 58 | - throw new NullPointerException(); | |
| 59 | - } | |
| 60 | - | |
| 61 | - public void throwArithmeticException() { | |
| 62 | - throw new ArithmeticException(); | |
| 63 | - } | |
| 64 | - | |
| 65 | - @SuppressWarnings({ "null", "unused" }) | |
| 66 | - public void throwTwoException() { | |
| 67 | - String txt = null; | |
| 68 | - txt.toString(); | |
| 69 | - int result = 4 / 0; | |
| 70 | - } | |
| 71 | - | |
| 72 | - @ExceptionHandler | |
| 73 | - public void handler(NullPointerException cause) { | |
| 74 | - nullPointerExceptionHandler = true; | |
| 75 | - } | |
| 76 | - | |
| 77 | - @ExceptionHandler | |
| 78 | - public void handler(ArithmeticException cause) { | |
| 79 | - arithmeticExceptionHandler = true; | |
| 80 | - } | |
| 81 | -} |
impl/core/src/test/java/exception/MultiExceptionTest.java
| ... | ... | @@ -1,93 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import javax.inject.Inject; | |
| 40 | - | |
| 41 | -import static junit.framework.Assert.fail; | |
| 42 | -import static junit.framework.Assert.assertEquals; | |
| 43 | - | |
| 44 | -import org.jboss.arquillian.container.test.api.Deployment; | |
| 45 | -import org.jboss.arquillian.junit.Arquillian; | |
| 46 | -import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 47 | -import org.junit.Test; | |
| 48 | -import org.junit.runner.RunWith; | |
| 49 | - | |
| 50 | -import br.gov.frameworkdemoiselle.DemoiselleException; | |
| 51 | - | |
| 52 | -import test.Tests; | |
| 53 | - | |
| 54 | -@RunWith(Arquillian.class) | |
| 55 | -public class MultiExceptionTest { | |
| 56 | - | |
| 57 | - @Inject | |
| 58 | - private MultiException multiException; | |
| 59 | - | |
| 60 | - @Inject | |
| 61 | - private ExceptionHandlerTwoParameter exceptionTwoParameter; | |
| 62 | - | |
| 63 | - @Deployment | |
| 64 | - public static JavaArchive createDeployment() { | |
| 65 | - JavaArchive deployment = Tests.createDeployment(MultiExceptionTest.class); | |
| 66 | - return deployment; | |
| 67 | - } | |
| 68 | - | |
| 69 | - @Test | |
| 70 | - public void testTwoExceptionTwoMethod() { | |
| 71 | - multiException.throwArithmeticException(); | |
| 72 | - multiException.throwNullPointerException(); | |
| 73 | - assertEquals(true, multiException.isArithmeticExceptionHandler()); | |
| 74 | - assertEquals(true, multiException.isArithmeticExceptionHandler()); | |
| 75 | - } | |
| 76 | - | |
| 77 | - @Test | |
| 78 | - public void testTwoExceptionOneMethod() { | |
| 79 | - multiException.throwTwoException(); | |
| 80 | - assertEquals(true, multiException.isNullPointerExceptionHandler()); | |
| 81 | - assertEquals(false, multiException.isArithmeticExceptionHandler()); | |
| 82 | - } | |
| 83 | - | |
| 84 | - @Test | |
| 85 | - public void testExceptionHandlerWithTwoParameter() { | |
| 86 | - try { | |
| 87 | - exceptionTwoParameter.throwIllegalPathException(); | |
| 88 | - fail(); | |
| 89 | - } catch (Exception e) { | |
| 90 | - assertEquals(DemoiselleException.class, e.getClass()); | |
| 91 | - } | |
| 92 | - } | |
| 93 | -} |
impl/core/src/test/java/exception/MultiStrategyExceptionHandler.java
| ... | ... | @@ -1,96 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | - | |
| 42 | -@Controller | |
| 43 | -public class MultiStrategyExceptionHandler { | |
| 44 | - | |
| 45 | - private boolean exceptionHandler = false; | |
| 46 | - | |
| 47 | - private boolean exceptionTryCacth = false; | |
| 48 | - | |
| 49 | - String txt = null; | |
| 50 | - | |
| 51 | - public boolean isExceptionHandler() { | |
| 52 | - return exceptionHandler; | |
| 53 | - } | |
| 54 | - | |
| 55 | - public boolean isExceptionTryCacth() { | |
| 56 | - return exceptionTryCacth; | |
| 57 | - } | |
| 58 | - | |
| 59 | - @SuppressWarnings("unused") | |
| 60 | - public void exceptionMultiStrategyTryAndHandler() { | |
| 61 | - try { | |
| 62 | - int result = 4 / 0; | |
| 63 | - } catch (ArithmeticException e) { | |
| 64 | - exceptionTryCacth = true; | |
| 65 | - } | |
| 66 | - txt.toString(); | |
| 67 | - } | |
| 68 | - | |
| 69 | - @SuppressWarnings("unused") | |
| 70 | - public void exceptionMultiStrategyHandlerAndTry() { | |
| 71 | - txt.toString(); | |
| 72 | - try { | |
| 73 | - int result = 4 / 0; | |
| 74 | - } catch (ArithmeticException e) { | |
| 75 | - exceptionTryCacth = true; | |
| 76 | - } | |
| 77 | - } | |
| 78 | - | |
| 79 | - public void exceptionTwoHandler() { | |
| 80 | - try { | |
| 81 | - txt.toString(); | |
| 82 | - } catch (NullPointerException e) { | |
| 83 | - exceptionTryCacth = true; | |
| 84 | - } | |
| 85 | - } | |
| 86 | - | |
| 87 | - public void exceptionHandler() { | |
| 88 | - txt.toString(); | |
| 89 | - } | |
| 90 | - | |
| 91 | - @ExceptionHandler | |
| 92 | - public void handler(NullPointerException cause) { | |
| 93 | - exceptionHandler = true; | |
| 94 | - } | |
| 95 | - | |
| 96 | -} |
impl/core/src/test/java/exception/MultiStrategyExceptionHandlerTest.java
| ... | ... | @@ -1,90 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import static junit.framework.Assert.assertEquals; | |
| 40 | - | |
| 41 | -import javax.inject.Inject; | |
| 42 | - | |
| 43 | -import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | -import org.jboss.arquillian.junit.Arquillian; | |
| 45 | -import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | -import org.junit.Test; | |
| 47 | -import org.junit.runner.RunWith; | |
| 48 | - | |
| 49 | -import test.Tests; | |
| 50 | - | |
| 51 | -@RunWith(Arquillian.class) | |
| 52 | -public class MultiStrategyExceptionHandlerTest { | |
| 53 | - | |
| 54 | - @Inject | |
| 55 | - private MultiStrategyExceptionHandler handlerTest; | |
| 56 | - | |
| 57 | - @Deployment | |
| 58 | - public static JavaArchive createDeployment() { | |
| 59 | - JavaArchive deployment = Tests.createDeployment(OneExceptionTest.class); | |
| 60 | - return deployment; | |
| 61 | - } | |
| 62 | - | |
| 63 | - @Test | |
| 64 | - public void testExceptionMultiStrategyTryAndHandler() { | |
| 65 | - handlerTest.exceptionMultiStrategyTryAndHandler(); | |
| 66 | - assertEquals(true, handlerTest.isExceptionTryCacth()); | |
| 67 | - assertEquals(true, handlerTest.isExceptionHandler()); | |
| 68 | - } | |
| 69 | - | |
| 70 | - @Test | |
| 71 | - public void testExceptionMultiStrategyHandlerAndTry() { | |
| 72 | - handlerTest.exceptionMultiStrategyHandlerAndTry(); | |
| 73 | - assertEquals(false, handlerTest.isExceptionTryCacth()); | |
| 74 | - assertEquals(true, handlerTest.isExceptionHandler()); | |
| 75 | - } | |
| 76 | - | |
| 77 | - @Test | |
| 78 | - public void testSameExceptionTwoStrategyHandler() { | |
| 79 | - handlerTest.exceptionTwoHandler(); | |
| 80 | - assertEquals(true, handlerTest.isExceptionTryCacth()); | |
| 81 | - assertEquals(false, handlerTest.isExceptionHandler()); | |
| 82 | - } | |
| 83 | - | |
| 84 | - @Test | |
| 85 | - public void testExceptionOneStrategyHandler() { | |
| 86 | - handlerTest.exceptionHandler(); | |
| 87 | - assertEquals(false, handlerTest.isExceptionTryCacth()); | |
| 88 | - assertEquals(true, handlerTest.isExceptionHandler()); | |
| 89 | - } | |
| 90 | -} |
impl/core/src/test/java/exception/OneException.java
| ... | ... | @@ -1,115 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import java.util.NoSuchElementException; | |
| 40 | - | |
| 41 | -import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 42 | -import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 43 | - | |
| 44 | -@Controller | |
| 45 | -public class OneException { | |
| 46 | - | |
| 47 | - private boolean exceptionHandler = false; | |
| 48 | - | |
| 49 | - private boolean exceptionHandlerIllegalArgument1 = false; | |
| 50 | - | |
| 51 | - private boolean exceptionHandlerIllegalArgument2 = false; | |
| 52 | - | |
| 53 | - private boolean exceptionHandlerIllegalArgument3 = false; | |
| 54 | - | |
| 55 | - public boolean isExceptionHandler() { | |
| 56 | - return exceptionHandler; | |
| 57 | - } | |
| 58 | - | |
| 59 | - public boolean isExceptionHandlerIllegalArgument1() { | |
| 60 | - return exceptionHandlerIllegalArgument1; | |
| 61 | - } | |
| 62 | - | |
| 63 | - public boolean isExceptionHandlerIllegalArgument2() { | |
| 64 | - return exceptionHandlerIllegalArgument2; | |
| 65 | - } | |
| 66 | - | |
| 67 | - public boolean isExceptionHandlerIllegalArgument3() { | |
| 68 | - return exceptionHandlerIllegalArgument3; | |
| 69 | - } | |
| 70 | - | |
| 71 | - @SuppressWarnings("null") | |
| 72 | - public void throwExceptionWithHandler() { | |
| 73 | - String txt = null; | |
| 74 | - txt.toString(); | |
| 75 | - } | |
| 76 | - | |
| 77 | - @SuppressWarnings("unused") | |
| 78 | - public void throwExceptionWithoutHandler() { | |
| 79 | - int result = 4 / 0; | |
| 80 | - } | |
| 81 | - | |
| 82 | - public void throwIllegalArgumentException() { | |
| 83 | - throw new IllegalArgumentException(); | |
| 84 | - } | |
| 85 | - | |
| 86 | - public void throwNoSuchElementException() { | |
| 87 | - throw new NoSuchElementException(); | |
| 88 | - } | |
| 89 | - | |
| 90 | - @ExceptionHandler | |
| 91 | - public void handler(NullPointerException cause) { | |
| 92 | - exceptionHandler = true; | |
| 93 | - } | |
| 94 | - | |
| 95 | - @ExceptionHandler | |
| 96 | - public void handler1(IllegalArgumentException cause) { | |
| 97 | - exceptionHandlerIllegalArgument1 = true; | |
| 98 | - } | |
| 99 | - | |
| 100 | - @ExceptionHandler | |
| 101 | - public void handler3(IllegalArgumentException cause) { | |
| 102 | - exceptionHandlerIllegalArgument3 = true; | |
| 103 | - } | |
| 104 | - | |
| 105 | - @ExceptionHandler | |
| 106 | - public void handler2(IllegalArgumentException cause) { | |
| 107 | - exceptionHandlerIllegalArgument2 = true; | |
| 108 | - } | |
| 109 | - | |
| 110 | - @ExceptionHandler | |
| 111 | - @SuppressWarnings("unused") | |
| 112 | - public void handlerWithError(NoSuchElementException cause) { | |
| 113 | - int a = 2 / 0; | |
| 114 | - } | |
| 115 | -} |
impl/core/src/test/java/exception/OneExceptionTest.java
| ... | ... | @@ -1,97 +0,0 @@ |
| 1 | -/* | |
| 2 | - * Demoiselle Framework | |
| 3 | - * Copyright (C) 2010 SERPRO | |
| 4 | - * ---------------------------------------------------------------------------- | |
| 5 | - * This file is part of Demoiselle Framework. | |
| 6 | - * | |
| 7 | - * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | - * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | - * as published by the Free Software Foundation. | |
| 10 | - * | |
| 11 | - * This program is distributed in the hope that it will be useful, | |
| 12 | - * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | - * GNU General Public License for more details. | |
| 15 | - * | |
| 16 | - * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | - * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | - * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | - * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | - * ---------------------------------------------------------------------------- | |
| 21 | - * Este arquivo é parte do Framework Demoiselle. | |
| 22 | - * | |
| 23 | - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | - * do Software Livre (FSF). | |
| 26 | - * | |
| 27 | - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | - * para maiores detalhes. | |
| 31 | - * | |
| 32 | - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | - * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | - */ | |
| 37 | -package exception; | |
| 38 | - | |
| 39 | -import javax.inject.Inject; | |
| 40 | - | |
| 41 | -import static junit.framework.Assert.fail; | |
| 42 | -import static junit.framework.Assert.assertEquals; | |
| 43 | - | |
| 44 | -import org.jboss.arquillian.container.test.api.Deployment; | |
| 45 | -import org.jboss.arquillian.junit.Arquillian; | |
| 46 | -import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 47 | -import org.junit.Test; | |
| 48 | -import org.junit.runner.RunWith; | |
| 49 | - | |
| 50 | -import test.Tests; | |
| 51 | - | |
| 52 | -@RunWith(Arquillian.class) | |
| 53 | -public class OneExceptionTest { | |
| 54 | - | |
| 55 | - @Inject | |
| 56 | - private OneException oneException; | |
| 57 | - | |
| 58 | - @Deployment | |
| 59 | - public static JavaArchive createDeployment() { | |
| 60 | - JavaArchive deployment = Tests.createDeployment(OneExceptionTest.class); | |
| 61 | - return deployment; | |
| 62 | - } | |
| 63 | - | |
| 64 | - @Test | |
| 65 | - public void testExceptionWithHandler() { | |
| 66 | - oneException.throwExceptionWithHandler(); | |
| 67 | - assertEquals(true, oneException.isExceptionHandler()); | |
| 68 | - } | |
| 69 | - | |
| 70 | - @Test | |
| 71 | - public void testExceptionWithoutHandler() { | |
| 72 | - try { | |
| 73 | - oneException.throwExceptionWithoutHandler(); | |
| 74 | - fail(); | |
| 75 | - } catch (Exception cause) { | |
| 76 | - assertEquals(ArithmeticException.class, cause.getClass()); | |
| 77 | - } | |
| 78 | - } | |
| 79 | - | |
| 80 | - @Test | |
| 81 | - public void testExceptionWithMultiHandler() { | |
| 82 | - oneException.throwIllegalArgumentException(); | |
| 83 | - assertEquals(false, oneException.isExceptionHandlerIllegalArgument1()); | |
| 84 | - assertEquals(true, oneException.isExceptionHandlerIllegalArgument2()); | |
| 85 | - assertEquals(false, oneException.isExceptionHandlerIllegalArgument3()); | |
| 86 | - } | |
| 87 | - | |
| 88 | - @Test | |
| 89 | - public void testExceptionHandlerWithException() { | |
| 90 | - try { | |
| 91 | - oneException.throwNoSuchElementException(); | |
| 92 | - } catch (Exception e) { | |
| 93 | - assertEquals(ArithmeticException.class, e.getClass()); | |
| 94 | - } | |
| 95 | - | |
| 96 | - } | |
| 97 | -} |
impl/core/src/test/java/exception/basic/ExceptionHandlerTest.java
0 → 100644
| ... | ... | @@ -0,0 +1,122 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.basic; | |
| 38 | + | |
| 39 | +import static junit.framework.Assert.assertEquals; | |
| 40 | +import static junit.framework.Assert.fail; | |
| 41 | + | |
| 42 | +import javax.inject.Inject; | |
| 43 | + | |
| 44 | +import org.jboss.arquillian.container.test.api.Deployment; | |
| 45 | +import org.jboss.arquillian.junit.Arquillian; | |
| 46 | +import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 47 | +import org.junit.Test; | |
| 48 | +import org.junit.runner.RunWith; | |
| 49 | + | |
| 50 | +import test.Tests; | |
| 51 | +import br.gov.frameworkdemoiselle.DemoiselleException; | |
| 52 | + | |
| 53 | +@RunWith(Arquillian.class) | |
| 54 | +public class ExceptionHandlerTest { | |
| 55 | + | |
| 56 | + @Inject | |
| 57 | + private SimpleExceptionHandler exceptionHandler; | |
| 58 | + | |
| 59 | + @Inject | |
| 60 | + private MultiExceptionHandler multiExceptionHandler; | |
| 61 | + | |
| 62 | + @Inject | |
| 63 | + private ExceptionHandlerTwoParameter exceptionTwoParameter; | |
| 64 | + | |
| 65 | + @Deployment | |
| 66 | + public static JavaArchive createDeployment() { | |
| 67 | + JavaArchive deployment = Tests.createDeployment(ExceptionHandlerTest.class); | |
| 68 | + return deployment; | |
| 69 | + } | |
| 70 | + | |
| 71 | + @Test | |
| 72 | + public void exceptionWithHandler() { | |
| 73 | + exceptionHandler.throwArithmeticException(); | |
| 74 | + exceptionHandler.throwNullPointerException(); | |
| 75 | + assertEquals(true, exceptionHandler.isArithmeticExceptionHandler()); | |
| 76 | + assertEquals(true, exceptionHandler.isArithmeticExceptionHandler()); | |
| 77 | + } | |
| 78 | + | |
| 79 | + @Test | |
| 80 | + public void exceptionWithoutHandler() { | |
| 81 | + try { | |
| 82 | + exceptionHandler.throwExceptionWithoutHandler(); | |
| 83 | + fail(); | |
| 84 | + } catch (Exception cause) { | |
| 85 | + assertEquals(IllegalArgumentException.class, cause.getClass()); | |
| 86 | + } | |
| 87 | + } | |
| 88 | + | |
| 89 | + @Test | |
| 90 | + public void twoExceptionOneMethod() { | |
| 91 | + exceptionHandler.throwTwoException(); | |
| 92 | + assertEquals(true, exceptionHandler.isNullPointerExceptionHandler()); | |
| 93 | + assertEquals(false, exceptionHandler.isArithmeticExceptionHandler()); | |
| 94 | + } | |
| 95 | + | |
| 96 | + @Test | |
| 97 | + public void exceptionWithMultiHandler() { | |
| 98 | + multiExceptionHandler.throwIllegalArgumentException(); | |
| 99 | + assertEquals(false, multiExceptionHandler.isExceptionHandlerIllegalArgument1()); | |
| 100 | + assertEquals(true, multiExceptionHandler.isExceptionHandlerIllegalArgument2()); | |
| 101 | + assertEquals(false, multiExceptionHandler.isExceptionHandlerIllegalArgument3()); | |
| 102 | + } | |
| 103 | + | |
| 104 | + @Test | |
| 105 | + public void exceptionHandlerWithException() { | |
| 106 | + try { | |
| 107 | + multiExceptionHandler.throwNoSuchElementException(); | |
| 108 | + } catch (Exception e) { | |
| 109 | + assertEquals(ArithmeticException.class, e.getClass()); | |
| 110 | + } | |
| 111 | + } | |
| 112 | + | |
| 113 | + @Test | |
| 114 | + public void exceptionHandlerWithTwoParameter() { | |
| 115 | + try { | |
| 116 | + exceptionTwoParameter.throwIllegalPathException(); | |
| 117 | + fail(); | |
| 118 | + } catch (Exception e) { | |
| 119 | + assertEquals(DemoiselleException.class, e.getClass()); | |
| 120 | + } | |
| 121 | + } | |
| 122 | +} | ... | ... |
impl/core/src/test/java/exception/basic/ExceptionHandlerTwoParameter.java
0 → 100644
| ... | ... | @@ -0,0 +1,54 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.basic; | |
| 38 | + | |
| 39 | +import java.awt.geom.IllegalPathStateException; | |
| 40 | + | |
| 41 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 42 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 43 | + | |
| 44 | +@Controller | |
| 45 | +public class ExceptionHandlerTwoParameter { | |
| 46 | + | |
| 47 | + public void throwIllegalPathException() { | |
| 48 | + throw new IllegalPathStateException(); | |
| 49 | + } | |
| 50 | + | |
| 51 | + @ExceptionHandler | |
| 52 | + public void handler(IllegalPathStateException cause, IllegalStateException cause2) { | |
| 53 | + } | |
| 54 | +} | ... | ... |
impl/core/src/test/java/exception/basic/MultiExceptionHandler.java
0 → 100644
| ... | ... | @@ -0,0 +1,101 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.basic; | |
| 38 | + | |
| 39 | +import java.util.NoSuchElementException; | |
| 40 | + | |
| 41 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 42 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 43 | + | |
| 44 | +@Controller | |
| 45 | +public class MultiExceptionHandler { | |
| 46 | + | |
| 47 | + private boolean exceptionHandlerIllegalArgument1 = false; | |
| 48 | + | |
| 49 | + private boolean exceptionHandlerIllegalArgument2 = false; | |
| 50 | + | |
| 51 | + private boolean exceptionHandlerIllegalArgument3 = false; | |
| 52 | + | |
| 53 | + public boolean isExceptionHandlerIllegalArgument1() { | |
| 54 | + return exceptionHandlerIllegalArgument1; | |
| 55 | + } | |
| 56 | + | |
| 57 | + public boolean isExceptionHandlerIllegalArgument2() { | |
| 58 | + return exceptionHandlerIllegalArgument2; | |
| 59 | + } | |
| 60 | + | |
| 61 | + public boolean isExceptionHandlerIllegalArgument3() { | |
| 62 | + return exceptionHandlerIllegalArgument3; | |
| 63 | + } | |
| 64 | + | |
| 65 | + @SuppressWarnings("null") | |
| 66 | + public void throwExceptionWithHandler() { | |
| 67 | + String txt = null; | |
| 68 | + txt.toString(); | |
| 69 | + } | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + public void throwIllegalArgumentException() { | |
| 74 | + throw new IllegalArgumentException(); | |
| 75 | + } | |
| 76 | + | |
| 77 | + public void throwNoSuchElementException() { | |
| 78 | + throw new NoSuchElementException(); | |
| 79 | + } | |
| 80 | + | |
| 81 | + @ExceptionHandler | |
| 82 | + public void handler1(IllegalArgumentException cause) { | |
| 83 | + exceptionHandlerIllegalArgument1 = true; | |
| 84 | + } | |
| 85 | + | |
| 86 | + @ExceptionHandler | |
| 87 | + public void handler3(IllegalArgumentException cause) { | |
| 88 | + exceptionHandlerIllegalArgument3 = true; | |
| 89 | + } | |
| 90 | + | |
| 91 | + @ExceptionHandler | |
| 92 | + public void handler2(IllegalArgumentException cause) { | |
| 93 | + exceptionHandlerIllegalArgument2 = true; | |
| 94 | + } | |
| 95 | + | |
| 96 | + @ExceptionHandler | |
| 97 | + @SuppressWarnings("unused") | |
| 98 | + public void handlerWithError(NoSuchElementException cause) { | |
| 99 | + int a = 2 / 0; | |
| 100 | + } | |
| 101 | +} | ... | ... |
impl/core/src/test/java/exception/basic/SimpleExceptionHandler.java
0 → 100644
| ... | ... | @@ -0,0 +1,85 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.basic; | |
| 38 | + | |
| 39 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | + | |
| 42 | +@Controller | |
| 43 | +public class SimpleExceptionHandler { | |
| 44 | + | |
| 45 | + private boolean nullPointerExceptionHandler = false; | |
| 46 | + | |
| 47 | + private boolean arithmeticExceptionHandler = false; | |
| 48 | + | |
| 49 | + public boolean isNullPointerExceptionHandler() { | |
| 50 | + return nullPointerExceptionHandler; | |
| 51 | + } | |
| 52 | + | |
| 53 | + public boolean isArithmeticExceptionHandler() { | |
| 54 | + return arithmeticExceptionHandler; | |
| 55 | + } | |
| 56 | + | |
| 57 | + public void throwNullPointerException() { | |
| 58 | + throw new NullPointerException(); | |
| 59 | + } | |
| 60 | + | |
| 61 | + public void throwArithmeticException() { | |
| 62 | + throw new ArithmeticException(); | |
| 63 | + } | |
| 64 | + | |
| 65 | + public void throwExceptionWithoutHandler() { | |
| 66 | + throw new IllegalArgumentException(); | |
| 67 | + } | |
| 68 | + | |
| 69 | + @SuppressWarnings({ "null", "unused" }) | |
| 70 | + public void throwTwoException() { | |
| 71 | + String txt = null; | |
| 72 | + txt.toString(); | |
| 73 | + int result = 4 / 0; | |
| 74 | + } | |
| 75 | + | |
| 76 | + @ExceptionHandler | |
| 77 | + public void handler(NullPointerException cause) { | |
| 78 | + nullPointerExceptionHandler = true; | |
| 79 | + } | |
| 80 | + | |
| 81 | + @ExceptionHandler | |
| 82 | + public void handler(ArithmeticException cause) { | |
| 83 | + arithmeticExceptionHandler = true; | |
| 84 | + } | |
| 85 | +} | ... | ... |
impl/core/src/test/java/exception/custom/CustomException.java
0 → 100644
| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.custom; | |
| 38 | + | |
| 39 | +import br.gov.frameworkdemoiselle.exception.ApplicationException; | |
| 40 | + | |
| 41 | +@ApplicationException | |
| 42 | +public class CustomException extends RuntimeException { | |
| 43 | + | |
| 44 | + private static final long serialVersionUID = 1L; | |
| 45 | + | |
| 46 | +} | ... | ... |
impl/core/src/test/java/exception/custom/CustomExceptionHandler.java
0 → 100644
| ... | ... | @@ -0,0 +1,63 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.custom; | |
| 38 | + | |
| 39 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | + | |
| 42 | +@Controller | |
| 43 | +public class CustomExceptionHandler { | |
| 44 | + | |
| 45 | + private boolean exceptionHandler = false; | |
| 46 | + | |
| 47 | + public boolean isExceptionHandler() { | |
| 48 | + return exceptionHandler; | |
| 49 | + } | |
| 50 | + | |
| 51 | + public void setExceptionHandler(boolean exceptionHandler) { | |
| 52 | + this.exceptionHandler = exceptionHandler; | |
| 53 | + } | |
| 54 | + | |
| 55 | + public void throwExceptionWithMessage() { | |
| 56 | + throw new CustomException(); | |
| 57 | + } | |
| 58 | + | |
| 59 | + @ExceptionHandler | |
| 60 | + public void handler(CustomException exception) { | |
| 61 | + setExceptionHandler(true); | |
| 62 | + } | |
| 63 | +} | ... | ... |
impl/core/src/test/java/exception/custom/CustomExceptionTest.java
0 → 100644
| ... | ... | @@ -0,0 +1,68 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.custom; | |
| 38 | + | |
| 39 | +import static junit.framework.Assert.assertEquals; | |
| 40 | + | |
| 41 | +import javax.inject.Inject; | |
| 42 | + | |
| 43 | +import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | +import org.jboss.arquillian.junit.Arquillian; | |
| 45 | +import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | +import org.junit.Test; | |
| 47 | +import org.junit.runner.RunWith; | |
| 48 | + | |
| 49 | +import test.Tests; | |
| 50 | + | |
| 51 | +@RunWith(Arquillian.class) | |
| 52 | +public class CustomExceptionTest { | |
| 53 | + | |
| 54 | + @Inject | |
| 55 | + private CustomExceptionHandler exception; | |
| 56 | + | |
| 57 | + @Deployment | |
| 58 | + public static JavaArchive createDeployment() { | |
| 59 | + JavaArchive deployment = Tests.createDeployment(CustomExceptionTest.class); | |
| 60 | + return deployment; | |
| 61 | + } | |
| 62 | + | |
| 63 | + @Test | |
| 64 | + public void customExceptionHandler() { | |
| 65 | + exception.throwExceptionWithMessage(); | |
| 66 | + assertEquals(true, exception.isExceptionHandler()); | |
| 67 | + } | |
| 68 | +} | ... | ... |
impl/core/src/test/java/exception/inheritance/ExceptionInheritance.java
0 → 100644
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.inheritance; | |
| 38 | + | |
| 39 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | + | |
| 42 | +@Controller | |
| 43 | +public class ExceptionInheritance { | |
| 44 | + | |
| 45 | + private boolean handlerSuperClass = false; | |
| 46 | + | |
| 47 | + private boolean handlerClass = false; | |
| 48 | + | |
| 49 | + public boolean isHandlerSuperClass() { | |
| 50 | + return handlerSuperClass; | |
| 51 | + } | |
| 52 | + | |
| 53 | + public boolean isHandlerClass() { | |
| 54 | + return handlerClass; | |
| 55 | + } | |
| 56 | + | |
| 57 | + public void throwNullPointerException() { | |
| 58 | + throw new NullPointerException(); | |
| 59 | + } | |
| 60 | + | |
| 61 | + public void throwArithmeticException() { | |
| 62 | + throw new ArithmeticException(); | |
| 63 | + } | |
| 64 | + | |
| 65 | + @ExceptionHandler | |
| 66 | + public void handle(ArithmeticException e) { | |
| 67 | + handlerClass = true; | |
| 68 | + } | |
| 69 | + | |
| 70 | + @ExceptionHandler | |
| 71 | + public void handle(RuntimeException e) { | |
| 72 | + handlerSuperClass = true; | |
| 73 | + } | |
| 74 | + | |
| 75 | +} | ... | ... |
impl/core/src/test/java/exception/inheritance/ExceptionInheritanceTest.java
0 → 100644
| ... | ... | @@ -0,0 +1,75 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.inheritance; | |
| 38 | + | |
| 39 | +import static junit.framework.Assert.assertEquals; | |
| 40 | + | |
| 41 | +import javax.inject.Inject; | |
| 42 | + | |
| 43 | +import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | +import org.jboss.arquillian.junit.Arquillian; | |
| 45 | +import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | +import org.junit.Test; | |
| 47 | +import org.junit.runner.RunWith; | |
| 48 | + | |
| 49 | +import test.Tests; | |
| 50 | + | |
| 51 | +@RunWith(Arquillian.class) | |
| 52 | +public class ExceptionInheritanceTest { | |
| 53 | + | |
| 54 | + @Inject | |
| 55 | + private ExceptionInheritance exceptionInheritance; | |
| 56 | + | |
| 57 | + @Deployment | |
| 58 | + public static JavaArchive createDeployment() { | |
| 59 | + JavaArchive deployment = Tests.createDeployment(ExceptionInheritanceTest.class); | |
| 60 | + return deployment; | |
| 61 | + } | |
| 62 | + | |
| 63 | + @Test | |
| 64 | + public void exceptionHandlerSuperClass() { | |
| 65 | + exceptionInheritance.throwNullPointerException(); | |
| 66 | + assertEquals(true, exceptionInheritance.isHandlerSuperClass()); | |
| 67 | + } | |
| 68 | + | |
| 69 | + @Test | |
| 70 | + public void exceptionHandlerClass() { | |
| 71 | + exceptionInheritance.throwArithmeticException(); | |
| 72 | + assertEquals(false, exceptionInheritance.isHandlerSuperClass()); | |
| 73 | + assertEquals(true, exceptionInheritance.isHandlerClass()); | |
| 74 | + } | |
| 75 | +} | ... | ... |
impl/core/src/test/java/exception/multistrategy/MultiStrategyExceptionHandler.java
0 → 100644
| ... | ... | @@ -0,0 +1,92 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.multistrategy; | |
| 38 | + | |
| 39 | +import br.gov.frameworkdemoiselle.exception.ExceptionHandler; | |
| 40 | +import br.gov.frameworkdemoiselle.stereotype.Controller; | |
| 41 | + | |
| 42 | +@Controller | |
| 43 | +public class MultiStrategyExceptionHandler { | |
| 44 | + | |
| 45 | + private boolean exceptionHandler = false; | |
| 46 | + | |
| 47 | + private boolean exceptionTryCacth = false; | |
| 48 | + | |
| 49 | + String txt = null; | |
| 50 | + | |
| 51 | + public boolean isExceptionHandler() { | |
| 52 | + return exceptionHandler; | |
| 53 | + } | |
| 54 | + | |
| 55 | + public boolean isExceptionTryCacth() { | |
| 56 | + return exceptionTryCacth; | |
| 57 | + } | |
| 58 | + | |
| 59 | + @SuppressWarnings("unused") | |
| 60 | + public void exceptionMultiStrategyTryAndHandler() { | |
| 61 | + try { | |
| 62 | + int result = 4 / 0; | |
| 63 | + } catch (ArithmeticException e) { | |
| 64 | + exceptionTryCacth = true; | |
| 65 | + } | |
| 66 | + txt.toString(); | |
| 67 | + } | |
| 68 | + | |
| 69 | + @SuppressWarnings("unused") | |
| 70 | + public void exceptionMultiStrategyHandlerAndTry() { | |
| 71 | + txt.toString(); | |
| 72 | + try { | |
| 73 | + int result = 4 / 0; | |
| 74 | + } catch (ArithmeticException e) { | |
| 75 | + exceptionTryCacth = true; | |
| 76 | + } | |
| 77 | + } | |
| 78 | + | |
| 79 | + public void exceptionTwoHandler() { | |
| 80 | + try { | |
| 81 | + txt.toString(); | |
| 82 | + } catch (NullPointerException e) { | |
| 83 | + exceptionTryCacth = true; | |
| 84 | + } | |
| 85 | + } | |
| 86 | + | |
| 87 | + @ExceptionHandler | |
| 88 | + public void handler(NullPointerException cause) { | |
| 89 | + exceptionHandler = true; | |
| 90 | + } | |
| 91 | + | |
| 92 | +} | ... | ... |
impl/core/src/test/java/exception/multistrategy/MultiStrategyExceptionHandlerTest.java
0 → 100644
| ... | ... | @@ -0,0 +1,84 @@ |
| 1 | +/* | |
| 2 | + * Demoiselle Framework | |
| 3 | + * Copyright (C) 2010 SERPRO | |
| 4 | + * ---------------------------------------------------------------------------- | |
| 5 | + * This file is part of Demoiselle Framework. | |
| 6 | + * | |
| 7 | + * Demoiselle Framework is free software; you can redistribute it and/or | |
| 8 | + * modify it under the terms of the GNU Lesser General Public License version 3 | |
| 9 | + * as published by the Free Software Foundation. | |
| 10 | + * | |
| 11 | + * This program is distributed in the hope that it will be useful, | |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | + * GNU General Public License for more details. | |
| 15 | + * | |
| 16 | + * You should have received a copy of the GNU Lesser General Public License version 3 | |
| 17 | + * along with this program; if not, see <http://www.gnu.org/licenses/> | |
| 18 | + * or write to the Free Software Foundation, Inc., 51 Franklin Street, | |
| 19 | + * Fifth Floor, Boston, MA 02110-1301, USA. | |
| 20 | + * ---------------------------------------------------------------------------- | |
| 21 | + * Este arquivo é parte do Framework Demoiselle. | |
| 22 | + * | |
| 23 | + * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou | |
| 24 | + * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação | |
| 25 | + * do Software Livre (FSF). | |
| 26 | + * | |
| 27 | + * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA | |
| 28 | + * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou | |
| 29 | + * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português | |
| 30 | + * para maiores detalhes. | |
| 31 | + * | |
| 32 | + * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título | |
| 33 | + * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/> | |
| 34 | + * ou escreva para a Fundação do Software Livre (FSF) Inc., | |
| 35 | + * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA. | |
| 36 | + */ | |
| 37 | +package exception.multistrategy; | |
| 38 | + | |
| 39 | +import static junit.framework.Assert.assertEquals; | |
| 40 | + | |
| 41 | +import javax.inject.Inject; | |
| 42 | + | |
| 43 | +import org.jboss.arquillian.container.test.api.Deployment; | |
| 44 | +import org.jboss.arquillian.junit.Arquillian; | |
| 45 | +import org.jboss.shrinkwrap.api.spec.JavaArchive; | |
| 46 | +import org.junit.Test; | |
| 47 | +import org.junit.runner.RunWith; | |
| 48 | + | |
| 49 | +import test.Tests; | |
| 50 | + | |
| 51 | +@RunWith(Arquillian.class) | |
| 52 | +public class MultiStrategyExceptionHandlerTest { | |
| 53 | + | |
| 54 | + @Inject | |
| 55 | + private MultiStrategyExceptionHandler handlerTest; | |
| 56 | + | |
| 57 | + @Deployment | |
| 58 | + public static JavaArchive createDeployment() { | |
| 59 | + JavaArchive deployment = Tests.createDeployment(MultiStrategyExceptionHandlerTest.class); | |
| 60 | + return deployment; | |
| 61 | + } | |
| 62 | + | |
| 63 | + @Test | |
| 64 | + public void exceptionMultiStrategyTryAndHandler() { | |
| 65 | + handlerTest.exceptionMultiStrategyTryAndHandler(); | |
| 66 | + assertEquals(true, handlerTest.isExceptionTryCacth()); | |
| 67 | + assertEquals(true, handlerTest.isExceptionHandler()); | |
| 68 | + } | |
| 69 | + | |
| 70 | + @Test | |
| 71 | + public void exceptionMultiStrategyHandlerAndTry() { | |
| 72 | + handlerTest.exceptionMultiStrategyHandlerAndTry(); | |
| 73 | + assertEquals(false, handlerTest.isExceptionTryCacth()); | |
| 74 | + assertEquals(true, handlerTest.isExceptionHandler()); | |
| 75 | + } | |
| 76 | + | |
| 77 | + @Test | |
| 78 | + public void sameExceptionTwoStrategyHandler() { | |
| 79 | + handlerTest.exceptionTwoHandler(); | |
| 80 | + assertEquals(true, handlerTest.isExceptionTryCacth()); | |
| 81 | + assertEquals(false, handlerTest.isExceptionHandler()); | |
| 82 | + } | |
| 83 | + | |
| 84 | +} | ... | ... |