001/* $Id: AddressBookTestCase.java 1102402 2011-05-12 18:03:26Z simonetripodi $
002 *
003 * Licensed to the Apache Software Foundation (ASF) under one or more
004 * contributor license agreements.  See the NOTICE file distributed with
005 * this work for additional information regarding copyright ownership.
006 * The ASF licenses this file to You under the Apache License, Version 2.0
007 * (the "License"); you may not use this file except in compliance with
008 * the License.  You may obtain a copy of the License at
009 *
010 *      http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018package org.apache.commons.digester3.annotations.addressbook;
019
020import org.apache.commons.digester3.annotations.AbstractAnnotatedPojoTestCase;
021import org.junit.Test;
022
023/**
024 * @since 2.1
025 */
026public final class AddressBookTestCase
027    extends AbstractAnnotatedPojoTestCase
028{
029
030    @Test
031    public void testAddressBook()
032        throws Exception
033    {
034        AddressBook addressBook = new AddressBook();
035
036        Person person = new Person();
037        person.setId( 1 );
038        person.setCategory( "acquaintance" );
039        person.setName( "Gonzo" );
040        person.addEmail( "business", "gonzo@muppets.com" );
041
042        Address address = new Address();
043        address.setType( "home" );
044        address.setStreet( "123 Maine Ave." );
045        address.setCity( "Las Vegas" );
046        address.setState( "NV" );
047        address.setZip( "01234" );
048        address.setCountry( "USA" );
049        person.addAddress( address );
050
051        address = new Address();
052        address.setType( "business" );
053        address.setStreet( "234 Maple Dr." );
054        address.setCity( "Los Angeles" );
055        address.setState( "CA" );
056        address.setZip( "98765" );
057        address.setCountry( "USA" );
058        person.addAddress( address );
059
060        addressBook.addPerson( person );
061
062        person = new Person();
063        person.setId( 2 );
064        person.setCategory( "rolemodel" );
065        person.setName( "Kermit" );
066        person.addEmail( "business", "kermit@muppets.com" );
067        person.addEmail( "home", "kermie@acme.com" );
068
069        address = new Address();
070        address.setType( "business" );
071        address.setStreet( "987 Brown Rd" );
072        address.setCity( "Las Cruces" );
073        address.setState( "NM" );
074        address.setZip( "75321" );
075        address.setCountry( "USA" );
076        person.addAddress( address );
077
078        addressBook.addPerson( person );
079
080        this.verifyExpectedEqualsToParsed( addressBook );
081    }
082
083}