I am trying to set up a unit testing environment to use DbUnit.
I have a few problems, since the tables I'm trying to control do not have primary keys. I get org.dbunit.dataset.NoPrimaryKeyException
.
I followed the following steps http://dbunit.wikidot.com/noprimarykeytable , but how can I use:
connection.getConfig().setProperty("http://www.dbunit.org/properties/primaryKeyFilter", new MyPrimaryKeyFilter("A1"));
for each of my tables?
For example, I have the following database:
CREATE TABLE `NO_PK1` ( `A1` int(11) NOT NULL, `A2` varchar(50) default NULL ); <?xml version="1.0" encoding="UTF-8"?> <dataset> <NO_PK1 A1="1" A2="Test1" /> <NO_PK1 A1="2" A2="Test2" /> <NO_PK1 A1="3" /> </dataset> CREATE TABLE `NO_PK2` ( `B1` int(11) NOT NULL, `B2` varchar(50) default NULL ); <?xml version="1.0" encoding="UTF-8"?> <dataset> <NO_PK2 B1="1" B2="Test1" /> <NO_PK2 B1="2" B2="Test2" /> <NO_PK2 B1="3" /> </dataset> CREATE TABLE `NO_PK3` ( `C1` int(11) NOT NULL, `C2` varchar(50) default NULL ); <?xml version="1.0" encoding="UTF-8"?> <dataset> <NO_PK3 C1="1" C2="Test1" /> <NO_PK3 C1="2" C2="Test2" /> <NO_PK3 C1="3" /> </dataset>
How can I rewrite connection.getConfig().setProperty("http://www.dbunit.org/properties/primaryKeyFilter", new MyPrimaryKeyFilter("A1"));
in this case?
Thanks so much for any advice.
source share