Tuesday, 17 February 2015

Incorrect import into ora11g with dbunit



Need import dataset from XML file into db. I write this:



IDatabaseConnection connect = getConnection()

QueryDataSet partialDataSet = new QueryDataSet(connect)
partialDataSet.addTable('PERSON')
XmlDataSet.write(partialDataSet, new FileOutputStream("D:\\SoapUI-5.0.0\\bin\\ext\\export.xml"))

IDataSet dataSet = new XmlDataSet(new FileInputStream('D:\\SoapUI-5.0.0\\bin\\ext\\export.xml'))
DatabaseOperation.CLEAN_INSERT.execute(connect, dataSet)

IDataSet actualDataSet = getConnection().createDataSet()
ITable actualTable = actualDataSet.getTable("PERSON")
IDataSet expectedDataSet = new XmlDataSet(new FileInputStream('D:\\SoapUI-5.0.0\\bin\\ext\\export.xml'))
ITable expectedTable = expectedDataSet.getTable("PERSON")


log.info "Assertion: " + DataSetUtils.assertEquals(expectedTable, actualTable)


and if I look at DB, I see that export.xml dataset not equals expectedDataSet. For example: In export XML I see row with ID 2, after this I see row with ID 1 But in DB(after import) I see row with ID 1 at 1st and after I see row with ID 2 and I get exception:



junit.framework.ComparisonFailure: value (table=PERSON, row=0, col=ID) expected:<[2]> but was:<[1]>



What needs to do?


No comments:

Post a Comment