blob: 34586e26722deaae8b377995e63381abc5ef6af2 [file] [log] [blame]
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.superbiz;
import junit.framework.TestCase;
import javax.ejb.embeddable.EJBContainer;
import javax.naming.Context;
import java.util.Locale;
/**
* @version $Rev$ $Date$
*/
public class FriendlyPersonTest extends TestCase {
private Context context;
protected void setUp() throws Exception {
context = EJBContainer.createEJBContainer().getContext();
}
/**
* Here we lookup and test the FriendlyPerson bean via its EJB 2.1 EJBHome and EJBObject interfaces
*
* @throws Exception
*/
//START SNIPPET: remotehome
public void testEjbHomeAndEjbObject() throws Exception {
Object object = context.lookup("java:global/component-interfaces/FriendlyPerson!org.superbiz.FriendlyPersonEjbHome");
FriendlyPersonEjbHome home = (FriendlyPersonEjbHome) object;
FriendlyPersonEjbObject friendlyPerson = home.create();
friendlyPerson.setDefaultLanguage("en");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hello Amelia!", friendlyPerson.greet("Amelia"));
friendlyPerson.setLanguagePreferences("Amelia", "es");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hola Amelia!", friendlyPerson.greet("Amelia"));
// Amelia took some French, let's see if she remembers
assertEquals("Bonjour Amelia!", friendlyPerson.greet("fr", "Amelia"));
// Dave should take some Polish and if he had, he could say Hi in Polish
assertEquals("Witaj Dave!", friendlyPerson.greet("pl", "Dave"));
// Let's see if I speak Portuguese
assertEquals("Sorry, I don't speak " + new Locale("pt").getDisplayLanguage() + ".", friendlyPerson.greet("pt", "David"));
// Ok, well I've been meaning to learn, so...
friendlyPerson.addGreeting("pt", "Ola {0}!");
assertEquals("Ola David!", friendlyPerson.greet("pt", "David"));
}
//END SNIPPET: remotehome
/**
* Here we lookup and test the FriendlyPerson bean via its EJB 2.1 EJBLocalHome and EJBLocalObject interfaces
*
* @throws Exception
*/
public void testEjbLocalHomeAndEjbLocalObject() throws Exception {
Object object = context.lookup("java:global/component-interfaces/FriendlyPerson!org.superbiz.FriendlyPersonEjbLocalHome");
FriendlyPersonEjbLocalHome home = (FriendlyPersonEjbLocalHome) object;
FriendlyPersonEjbLocalObject friendlyPerson = home.create();
friendlyPerson.setDefaultLanguage("en");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hello Amelia!", friendlyPerson.greet("Amelia"));
friendlyPerson.setLanguagePreferences("Amelia", "es");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hola Amelia!", friendlyPerson.greet("Amelia"));
// Amelia took some French, let's see if she remembers
assertEquals("Bonjour Amelia!", friendlyPerson.greet("fr", "Amelia"));
// Dave should take some Polish and if he had, he could say Hi in Polish
assertEquals("Witaj Dave!", friendlyPerson.greet("pl", "Dave"));
// Let's see if I speak Portuguese
assertEquals("Sorry, I don't speak " + new Locale("pt").getDisplayLanguage() + ".", friendlyPerson.greet("pt", "David"));
// Ok, well I've been meaning to learn, so...
friendlyPerson.addGreeting("pt", "Ola {0}!");
assertEquals("Ola David!", friendlyPerson.greet("pt", "David"));
}
/**
* Here we lookup and test the FriendlyPerson bean via its EJB 3.0 business remote interface
*
* @throws Exception
*/
//START SNIPPET: remote
public void testBusinessRemote() throws Exception {
Object object = context.lookup("java:global/component-interfaces/FriendlyPerson!org.superbiz.FriendlyPersonRemote");
FriendlyPersonRemote friendlyPerson = (FriendlyPersonRemote) object;
friendlyPerson.setDefaultLanguage("en");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hello Amelia!", friendlyPerson.greet("Amelia"));
friendlyPerson.setLanguagePreferences("Amelia", "es");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hola Amelia!", friendlyPerson.greet("Amelia"));
// Amelia took some French, let's see if she remembers
assertEquals("Bonjour Amelia!", friendlyPerson.greet("fr", "Amelia"));
// Dave should take some Polish and if he had, he could say Hi in Polish
assertEquals("Witaj Dave!", friendlyPerson.greet("pl", "Dave"));
// Let's see if I speak Portuguese
assertEquals("Sorry, I don't speak " + new Locale("pt").getDisplayLanguage() + ".", friendlyPerson.greet("pt", "David"));
// Ok, well I've been meaning to learn, so...
friendlyPerson.addGreeting("pt", "Ola {0}!");
assertEquals("Ola David!", friendlyPerson.greet("pt", "David"));
}
//START SNIPPET: remote
/**
* Here we lookup and test the FriendlyPerson bean via its EJB 3.0 business local interface
*
* @throws Exception
*/
public void testBusinessLocal() throws Exception {
Object object = context.lookup("java:global/component-interfaces/FriendlyPerson!org.superbiz.FriendlyPersonLocal");
FriendlyPersonLocal friendlyPerson = (FriendlyPersonLocal) object;
friendlyPerson.setDefaultLanguage("en");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hello Amelia!", friendlyPerson.greet("Amelia"));
friendlyPerson.setLanguagePreferences("Amelia", "es");
assertEquals("Hello David!", friendlyPerson.greet("David"));
assertEquals("Hola Amelia!", friendlyPerson.greet("Amelia"));
// Amelia took some French, let's see if she remembers
assertEquals("Bonjour Amelia!", friendlyPerson.greet("fr", "Amelia"));
// Dave should take some Polish and if he had, he could say Hi in Polish
assertEquals("Witaj Dave!", friendlyPerson.greet("pl", "Dave"));
// Let's see if I speak Portuguese
assertEquals("Sorry, I don't speak " + new Locale("pt").getDisplayLanguage() + ".", friendlyPerson.greet("pt", "David"));
// Ok, well I've been meaning to learn, so...
friendlyPerson.addGreeting("pt", "Ola {0}!");
assertEquals("Ola David!", friendlyPerson.greet("pt", "David"));
}
}