/* * JBoss, a division of Red Hat * Copyright 2011, Red Hat Middleware, LLC, and individual * contributors as indicated by the @authors tag. See the * copyright.txt in the distribution for a full listing of * individual contributors. * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ package org.gatein.wsrp.admin.ui; import junit.framework.TestCase; import java.util.Locale; import java.util.Map; /** * @author <a href="mailto:chris.laprun@jboss.com">Chris Laprun</a> * @version $Revision$ */ public class BeanContextTestCase extends TestCase { public void testDefaultMessageFormatting() { assertEquals("foo value", BeanContext.getLocalizedMessage("foo", Locale.getDefault())); assertEquals("foo value", BeanContext.getLocalizedMessage("foo", Locale.getDefault(), BeanContext.DEFAULT_RESOURCE_NAME, "blah")); assertEquals("param value: foo", BeanContext.getLocalizedMessage("1param", Locale.getDefault(), BeanContext.DEFAULT_RESOURCE_NAME, "foo")); assertEquals("param1 value: foo param2 value: bar", BeanContext.getLocalizedMessage("2params", Locale.getDefault(), BeanContext.DEFAULT_RESOURCE_NAME, "foo", "bar")); } public void testMessageFormatting() { String resourceName = "Other"; assertEquals("other foo value", BeanContext.getLocalizedMessage("foo", Locale.getDefault(), resourceName)); assertEquals("other foo value", BeanContext.getLocalizedMessage("foo", Locale.getDefault(), resourceName, "blah")); assertEquals("other param value: foo", BeanContext.getLocalizedMessage("1param", Locale.getDefault(), resourceName, "foo")); assertEquals("other param1 value: foo param2 value: bar", BeanContext.getLocalizedMessage("2params", Locale.getDefault(), resourceName, "foo", "bar")); } public void testErrorMessage() { TestBeanContext context = new TestBeanContext(); context.createErrorMessage("1param", "error"); assertEquals("param value: error", context.getMessage()); assertEquals(TestBeanContext.ERROR, context.getSeverity()); } private static class TestBeanContext extends BeanContext { private static final String ERROR = "ERROR"; private static final String INFO = "INFO"; private String message; private Object severity; private Object[] params; public String getMessage() { return message; } public Object getSeverity() { return severity; } public Object[] getParams() { return params; } @Override public String getParameter(String key) { throw new UnsupportedOperationException(); } @Override protected void createMessage(String target, String message, Object severity, Object... additionalParams) { this.message = message; this.severity = severity; this.params = additionalParams; } @Override protected Object getErrorSeverity() { return ERROR; } @Override protected Object getInfoSeverity() { return INFO; } @Override protected Locale getLocale() { return Locale.getDefault(); } @Override public String getServerAddress() { throw new UnsupportedOperationException(); } @Override public Map<String, Object> getSessionMap() { throw new UnsupportedOperationException(); } @Override public <T> T findBean(String name, Class<T> type) { throw new UnsupportedOperationException(); } @Override public void putInFlash(String name, Object value) { throw new UnsupportedOperationException(); } @Override public <T> T getFromFlash(String name, Class<T> type) { throw new UnsupportedOperationException(); } } }