01: /*
02: *
03: * The DbUnit Database Testing Framework
04: * Copyright (C)2002-2004, DbUnit.org
05: *
06: * This library is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public
08: * License as published by the Free Software Foundation; either
09: * 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;
22:
23: import org.dbunit.database.IDatabaseConnection;
24: import org.dbunit.dataset.IDataSet;
25: import org.dbunit.operation.DatabaseOperation;
26:
27: /**
28: * This interface defines the behavior of a DatabaseTester, which is responsible
29: * for adding DBUnit features as composition on existing test cases (instead of
30: * extending DBTestCase directly).
31: *
32: * @author Andres Almiray <aalmiray@users.sourceforge.net>
33: */
34: public interface IDatabaseTester {
35: /**
36: * Close the specified connection.
37: */
38: void closeConnection(IDatabaseConnection connection)
39: throws Exception;
40:
41: /**
42: * Returns the test database connection.
43: */
44: IDatabaseConnection getConnection() throws Exception;
45:
46: /**
47: * Returns the test dataset.
48: */
49: IDataSet getDataSet();
50:
51: /**
52: * Sets the test dataset to use.
53: */
54: void setDataSet(IDataSet dataSet);
55:
56: /**
57: * Sets the schema value.
58: */
59: void setSchema(String schema);
60:
61: /**
62: * Sets the DatabaseOperation to call when starting the test.
63: */
64: void setSetUpOperation(DatabaseOperation setUpOperation);
65:
66: /**
67: * Sets the DatabaseOperation to call when ending the test.
68: */
69: void setTearDownOperation(DatabaseOperation tearDownOperation);
70:
71: /**
72: * TestCases must call this method inside setUp()
73: */
74: void onSetup() throws Exception;
75:
76: /**
77: * TestCases must call this method inside tearDown()
78: */
79: void onTearDown() throws Exception;
80: }
|