1   package ch.ige.edossier.web.server.dao.test;
2   
3   import junit.framework.*;
4   import ch.ige.edossier.web.vo.*;
5   import ch.ige.edossier.web.server.dao.*;
6   import java.sql.*;
7   import java.util.*;
8   
9   
10  /**
11   * B32.03 - eDossier-Interceptions - Diplomarbeit an der Software-Schule Schweiz<br>
12   * Die Klasse AddressDAOTest testet die Methoden der Klasse AddressDAO
13   * <p>
14   * Copyright (c) 2004, Eidgenössisches Institut für Geistiges Eigentum
15   * @author    Anita Rueegsegger, Marc Bouquet
16   * @version   $Id: AddressDAOTest.java,v 1.1 2004/11/16 05:46:09 ruegsegger Exp $
17   */
18  public class AddressDAOTest extends TestCase
19  {
20    private AddressVO insertVO = new AddressVO();
21    private AddressDAO dao = new AddressDAO();
22    private AddressVO vo = new AddressVO();
23  
24    public AddressDAOTest( String s )
25    {
26      super( s );
27    }
28  
29    /**
30     * Testcase initialisieren
31     */
32    protected void setUp()
33    {
34      insertVO.setAddressId( 99999 );
35      insertVO.setName( "Muster" );
36      insertVO.setAddress( "Musterweg" );
37      insertVO.setCity( "Bern" );
38      insertVO.setCountryCd( "CH" );
39    }
40  
41    /**
42     * Test insert-Methode
43     */
44    public void test1Insert()
45    {
46      // init
47      System.out.println( "Test INSERT AddressDAO" );
48      try
49      {
50        // insert
51        dao.insert( insertVO );
52  
53        // check
54        assertTrue( "AddressVO eingefügt ", 1 == 1 );
55      }
56      catch( Exception ex )
57      {
58        ex.printStackTrace();
59        fail( ex.toString() );
60      }
61    }
62  
63    /**
64     * Test select-Methode mit Parameter AddressId
65     */
66    public void test2SelectAddress()
67    {
68      // init
69      System.out.println( "Test SELECTADDRESS AddressDAO " );
70  
71      try
72      {
73        // select
74        vo = dao.selectAddress( insertVO.getAddressId() );
75  
76        // check
77        if( vo == null )
78        {
79          System.out.println( "SELECT: Datensatz existiert nicht" );
80        }
81        else
82        {
83          assertEquals( vo.getAddressId(), insertVO.getAddressId() );
84          assertEquals( vo.getName(), insertVO.getName() );
85          assertEquals( vo.getAddress(), insertVO.getAddress() );
86          assertEquals( vo.getCity(), insertVO.getCity() );
87          assertEquals( vo.getCountryCd(), insertVO.getCountryCd() );
88        }
89      }
90      catch( SQLException ex )
91      {
92        ex.printStackTrace();
93        fail( ex.toString() );
94      }
95    }
96  
97    /**
98     * Test selectAll-Methode
99     */
100   public void _testSelectAll()
101   {
102     List list = new ArrayList();
103 
104     // init
105     System.out.println( "Test SELECT AddressDAO" );
106 
107     try
108     {
109       // select all
110       list = dao.select( 0 );
111 
112       // check
113       assertTrue( "list size: ", list.size() >= 1 );
114     }
115     catch( Exception ex )
116     {
117       ex.printStackTrace();
118       fail( ex.toString() );
119     }
120   }
121 
122   /**
123    * Test select-Methode mit Parameter email
124    */
125   public void test3Update()
126   {
127     // init
128     System.out.println( "Test UPDATE AddressDAO " );
129 
130     try
131     {
132       // update
133       insertVO.setName( "Mueller" );
134       insertVO.setAddress( "Weg" );
135       insertVO.setCity( "Zürich" );
136       insertVO.setCountryCd( "CH" );
137 
138       dao.update( insertVO );
139       vo = dao.selectAddress( insertVO.getAddressId() );
140 
141       // check
142       if( vo == null )
143       {
144         System.out.println( "SELECT: Datensatz existiert nicht" );
145       }
146       else
147       {
148         assertEquals( vo.getAddressId(), insertVO.getAddressId() );
149         assertEquals( vo.getName(), "Mueller" );
150         assertEquals( vo.getAddress(), "Weg" );
151         assertEquals( vo.getCity(), "Zürich" );
152         assertEquals( vo.getCountryCd(), "CH" );
153       }
154     }
155     catch( Exception ex )
156     {
157       ex.printStackTrace();
158       fail( ex.toString() );
159     }
160   }
161 
162   /**
163    * Test delete-Methode
164    */
165   public void test4Delete()
166   {
167     int ret = 0;
168 
169     // init
170     System.out.println( "Test DELETE AddressDAO" );
171 
172     try
173     {
174       // delete
175       ret = dao.delete( insertVO.getAddressId() );
176 
177       // check
178       assertEquals( "Anzahl gelöschte Datensätze: ", ret, 1 );
179     }
180     catch( SQLException ex )
181     {
182       ex.printStackTrace();
183       fail( ex.toString() );
184     }
185   }
186 }
187