1   /*
2    *
3    *  The DbUnit Database Testing Framework
4    *  Copyright (C)2002-2004, DbUnit.org
5    *
6    *  This library is free software; you can redistribute it and/or
7    *  modify it under the terms of the GNU Lesser General Public
8    *  License as published by the Free Software Foundation; either
9    *  version 2.1 of the License, or (at your option) any later version.
10   *
11   *  This library 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 GNU
14   *  Lesser General Public License for more details.
15   *
16   *  You should have received a copy of the GNU Lesser General Public
17   *  License along with this library; if not, write to the Free Software
18   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19   *
20   */
21  package org.dbunit.assertion;
22  
23  import org.dbunit.dataset.Column;
24  import org.dbunit.dataset.DefaultTable;
25  import org.dbunit.dataset.ITable;
26  import org.dbunit.dataset.datatype.DataType;
27  import org.dbunit.dataset.filter.DefaultColumnFilter;
28  
29  import junit.framework.TestCase;
30  
31  /**
32   * @author gommma (gommma AT users.sourceforge.net)
33   * @author Last changed by: $Author: gommma $
34   * @version $Revision: 850 $ $Date: 2008-10-31 19:39:59 +0100 (ven, 31 ott 2008) $
35   * @since 2.4.0
36   */
37  public class DefaultFailureHandlerTest extends TestCase 
38  {
39      
40      public void testGetColumn() throws Exception
41      {
42          Column[] cols = new Column[]{
43                  new Column("COL1", DataType.UNKNOWN),
44                  new Column("COL2", DataType.UNKNOWN)
45          };
46          DefaultTable table = new DefaultTable("MY_TABLE", cols);
47          table.addRow(new Object[] {"value1", "value2"});
48          
49          // Filter COL1
50          ITable tableFiltered = DefaultColumnFilter.excludedColumnsTable(table, new String[]{"COL1"});
51          
52          DefaultFailureHandler failureHandler = new DefaultFailureHandler(cols);
53          String info = failureHandler.getAdditionalInfo(tableFiltered, tableFiltered, 0, "COL1");
54          
55          String expectedInfo = "Additional row info: ('COL1': expected=<value1>, actual=<value1>) ('COL2': expected=<value2>, actual=<value2>)";
56          assertEquals(expectedInfo, info);
57      }
58  
59  }