summaryrefslogtreecommitdiff
path: root/dbaccess/qa
diff options
context:
space:
mode:
Diffstat (limited to 'dbaccess/qa')
-rw-r--r--dbaccess/qa/complex/dbaccess/CopyTableWizard.java2
-rw-r--r--dbaccess/qa/complex/dbaccess/DatabaseDocument.java1
-rw-r--r--dbaccess/qa/complex/dbaccess/RowSet.java8
-rw-r--r--dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java2
-rw-r--r--dbaccess/qa/complex/dbaccess/TestCase.java2
-rw-r--r--dbaccess/qa/extras/dialog-save.cxx30
-rw-r--r--dbaccess/qa/extras/empty-stdlib-save.cxx28
-rw-r--r--dbaccess/qa/extras/hsql_schema_import.cxx16
-rw-r--r--dbaccess/qa/extras/macros-test.cxx10
-rw-r--r--dbaccess/qa/extras/nolib-save.cxx28
-rw-r--r--dbaccess/qa/extras/rowsetclones.cxx11
-rw-r--r--dbaccess/qa/python/fdo84315.py3
-rw-r--r--dbaccess/qa/unit/data/firebird_empty_le.odbbin1733 -> 0 bytes
-rw-r--r--dbaccess/qa/unit/data/firebird_integer_le.odbbin43990 -> 0 bytes
-rw-r--r--dbaccess/qa/unit/data/firebird_integer_le_ods12.odbbin75701 -> 0 bytes
-rw-r--r--dbaccess/qa/unit/data/tdf132924.odbbin0 -> 3148 bytes
-rw-r--r--dbaccess/qa/unit/dbtest_base.cxx36
-rw-r--r--dbaccess/qa/unit/embeddeddb_performancetest.cxx49
-rw-r--r--dbaccess/qa/unit/firebird-regression.cxx106
-rw-r--r--dbaccess/qa/unit/firebird.cxx45
-rw-r--r--dbaccess/qa/unit/hsql_binary_import.cxx6
-rw-r--r--dbaccess/qa/unit/hsqldb.cxx6
-rw-r--r--dbaccess/qa/unit/tdf119625.cxx6
-rw-r--r--dbaccess/qa/unit/tdf126268.cxx6
24 files changed, 115 insertions, 286 deletions
diff --git a/dbaccess/qa/complex/dbaccess/CopyTableWizard.java b/dbaccess/qa/complex/dbaccess/CopyTableWizard.java
index a9254fac33c9..f2620f645eab 100644
--- a/dbaccess/qa/complex/dbaccess/CopyTableWizard.java
+++ b/dbaccess/qa/complex/dbaccess/CopyTableWizard.java
@@ -166,7 +166,7 @@ public class CopyTableWizard extends CRMBasedTestCase
final UITools uiTools = new UITools(dialog);
final XAccessible root = uiTools.getRoot();
final XAccessibleContext accContext = root.getAccessibleContext();
- final int count = accContext.getAccessibleChildCount();
+ final long count = accContext.getAccessibleChildCount();
String buttonName = "Create";
final XAccessibleContext childContext = accContext.getAccessibleChild(count - 3).getAccessibleContext();
final String name = childContext.getAccessibleName();
diff --git a/dbaccess/qa/complex/dbaccess/DatabaseDocument.java b/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
index 5bd28053b77c..3087ad6374c2 100644
--- a/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
+++ b/dbaccess/qa/complex/dbaccess/DatabaseDocument.java
@@ -174,6 +174,7 @@ public class DatabaseDocument extends TestCase implements com.sun.star.document.
};
}
+ @SuppressWarnings("unchecked")
public void dispose()
{
final EventObject event = new EventObject(this);
diff --git a/dbaccess/qa/complex/dbaccess/RowSet.java b/dbaccess/qa/complex/dbaccess/RowSet.java
index 4c5fcc6da793..ed42a271b46f 100644
--- a/dbaccess/qa/complex/dbaccess/RowSet.java
+++ b/dbaccess/qa/complex/dbaccess/RowSet.java
@@ -365,7 +365,7 @@ public class RowSet extends TestCase
m_rowSet.addRowSetListener(pRow);
// do some movements to check if we got all notifications
- final Class cResSet = Class.forName("com.sun.star.sdbc.XResultSet");
+ final Class<?> cResSet = Class.forName("com.sun.star.sdbc.XResultSet");
final boolean moves[] = new boolean[9];
for (int i = 0; i < moves.length; ++i)
{
@@ -399,7 +399,7 @@ public class RowSet extends TestCase
testCursorMove(m_resultSet, cResSet.getMethod(NEXT, (Class[]) null), pRow, moves, null);
moves[RowSetEventListener.IS_MODIFIED] = false;
- final Class cupd = Class.forName("com.sun.star.sdbc.XResultSetUpdate");
+ final Class<?> cupd = Class.forName("com.sun.star.sdbc.XResultSetUpdate");
final XResultSetUpdate upd = UnoRuntime.queryInterface( XResultSetUpdate.class, m_resultSet );
testCursorMove(upd, cupd.getMethod("moveToInsertRow", (Class[]) null), pRow, moves, null);
@@ -445,7 +445,7 @@ public class RowSet extends TestCase
moves[RowSetEventListener.COLUMN_VALUE] = true;
moves[RowSetEventListener.CURSOR_MOVED] = true;
- final Class cloc = Class.forName("com.sun.star.sdbcx.XRowLocate");
+ final Class<?> cloc = Class.forName("com.sun.star.sdbcx.XRowLocate");
m_resultSet.first();
final Object bookmark = m_rowLocate.getBookmark();
m_resultSet.next();
@@ -470,7 +470,7 @@ public class RowSet extends TestCase
moves[RowSetEventListener.APPROVE_ROW_CHANGE] = true;
moves[RowSetEventListener.ROW_CHANGED] = true;
moves[RowSetEventListener.ROW_COUNT] = true;
- final Class cdelRows = Class.forName("com.sun.star.sdbcx.XDeleteRows");
+ final Class<?> cdelRows = Class.forName("com.sun.star.sdbcx.XDeleteRows");
ctemp[0] = Object[].class;
final XDeleteRows delRows = UnoRuntime.queryInterface( XDeleteRows.class, m_resultSet );
final Object bookmarks[] = new Object[5];
diff --git a/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java b/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
index 2d05030b7e83..656b44d00c04 100644
--- a/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
+++ b/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
@@ -81,7 +81,7 @@ public class SingleSelectQueryComposer extends CRMBasedTestCase
String realValue = null;
try
{
- final Class composerClass = m_composer.getClass();
+ final Class<?> composerClass = m_composer.getClass();
final Method attributeGetter = composerClass.getMethod("get" + _attributeName, new Class[]
{
});
diff --git a/dbaccess/qa/complex/dbaccess/TestCase.java b/dbaccess/qa/complex/dbaccess/TestCase.java
index a9768e7b47a2..8c284ae51f40 100644
--- a/dbaccess/qa/complex/dbaccess/TestCase.java
+++ b/dbaccess/qa/complex/dbaccess/TestCase.java
@@ -119,7 +119,7 @@ public abstract class TestCase
private void assureException( final String _message, final Object _object, final String _methodName,
final Class[] _argClasses, final Object[] _methodArgs, final Class _expectedExceptionClass )
{
- Class objectClass = _object.getClass();
+ Class<?> objectClass = _object.getClass();
boolean noExceptionAllowed = ( _expectedExceptionClass == null );
diff --git a/dbaccess/qa/extras/dialog-save.cxx b/dbaccess/qa/extras/dialog-save.cxx
index 5eac41e67041..04c12b1c5e8b 100644
--- a/dbaccess/qa/extras/dialog-save.cxx
+++ b/dbaccess/qa/extras/dialog-save.cxx
@@ -10,17 +10,13 @@
#include <sal/config.h>
#include <test/unoapi_test.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp>
#include <com/sun/star/script/XStorageBasedLibraryContainer.hpp>
#include <com/sun/star/script/XLibraryContainer.hpp>
#include <com/sun/star/util/XModifiable.hpp>
-#include <com/sun/star/util/XCloseable.hpp>
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
-#include <vcl/svapp.hxx>
-
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -49,25 +45,18 @@ DialogSaveTest::DialogSaveTest()
void DialogSaveTest::test()
{
- // UnoApiTest::setUp (via InitVCL) puts each test under a locked SolarMutex,
- // but at least the below xDocCloseable->close call could lead to a deadlock
- // then, and it looks like none of the code here requires the SolarMutex to
- // be locked anyway:
- SolarMutexReleaser rel;
-
const OUString aFileName(m_directories.getURLFromWorkdir(u"CppunitTest/testDialogSave.odb"));
{
- uno::Reference< lang::XComponent > xComponent = loadFromDesktop(aFileName);
- CPPUNIT_ASSERT(xComponent.is());
- uno::Reference< frame::XStorable > xDocStorable(xComponent, UNO_QUERY_THROW);
- uno::Reference< document::XEmbeddedScripts > xDocScr(xComponent, UNO_QUERY_THROW);
+ mxComponent = loadFromDesktop(aFileName);
+ uno::Reference< frame::XStorable > xDocStorable(mxComponent, UNO_QUERY_THROW);
+ uno::Reference< document::XEmbeddedScripts > xDocScr(mxComponent, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorBasLib(xDocScr->getBasicLibraries());
CPPUNIT_ASSERT(xStorBasLib.is());
uno::Reference< script::XLibraryContainer > xBasLib(xStorBasLib, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorDlgLib(xDocScr->getDialogLibraries());
CPPUNIT_ASSERT(xStorDlgLib.is());
uno::Reference< script::XLibraryContainer > xDlgLib(xStorDlgLib, UNO_QUERY_THROW);
- const OUString sStandard("Standard");
+ static constexpr OUString sStandard(u"Standard"_ustr);
xBasLib->loadLibrary(sStandard);
CPPUNIT_ASSERT(xBasLib->isLibraryLoaded(sStandard));
// the whole point of this test is to test the "save" operation
@@ -75,26 +64,21 @@ void DialogSaveTest::test()
CPPUNIT_ASSERT(!xDlgLib->isLibraryLoaded(sStandard));
// make some change to enable a save
- // uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSuppl(xComponent, UNO_QUERY_THROW);
+ // uno::Reference< document::XDocumentPropertiesSupplier > xDocPropSuppl(mxComponent, UNO_QUERY_THROW);
// uno::Reference< document::XDocumentPropertiesSupplier > xDocProps(xDocPropSuppl->getDocumentProperties());
// CPPUNIT_ASSERT(xDocProps.is());
// xDocProps.setTitle(xDocProps.getTitle() + " suffix");
- uno::Reference< util::XModifiable > xDocMod(xComponent, UNO_QUERY_THROW);
+ uno::Reference< util::XModifiable > xDocMod(mxComponent, UNO_QUERY_THROW);
xDocMod->setModified(true);
// now save; the code path to exercise in this test is the "store to same location"
// do *not* change to store(As|To|URL)!
xDocStorable->store();
- // close
- uno::Reference< util::XCloseable > xDocCloseable(xComponent, UNO_QUERY_THROW);
- xDocCloseable->close(false);
-
// All our uno::References are (should?) be invalid now -> let them go out of scope
}
{
- uno::Sequence<uno::Any> args(1);
- args[0] <<= aFileName;
+ uno::Sequence<uno::Any> args{ uno::Any(aFileName) };
Reference<container::XHierarchicalNameAccess> xHNA(getMultiServiceFactory()->createInstanceWithArguments("com.sun.star.packages.Package", args), UNO_QUERY_THROW);
Reference< beans::XPropertySet > xPS(xHNA->getByHierarchicalName("Dialogs/Standard/Dialog1.xml"), UNO_QUERY_THROW);
sal_Int64 nSize = 0;
diff --git a/dbaccess/qa/extras/empty-stdlib-save.cxx b/dbaccess/qa/extras/empty-stdlib-save.cxx
index aa7dd293004f..5c3b5d028d8c 100644
--- a/dbaccess/qa/extras/empty-stdlib-save.cxx
+++ b/dbaccess/qa/extras/empty-stdlib-save.cxx
@@ -9,16 +9,12 @@
#include <sal/config.h>
#include <test/unoapi_test.hxx>
-#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp>
#include <com/sun/star/script/XStorageBasedLibraryContainer.hpp>
#include <com/sun/star/script/XLibraryContainer.hpp>
-#include <com/sun/star/util/XCloseable.hpp>
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
-#include <vcl/svapp.hxx>
-
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -47,25 +43,18 @@ DialogSaveTest::DialogSaveTest()
void DialogSaveTest::test()
{
- // UnoApiTest::setUp (via InitVCL) puts each test under a locked SolarMutex,
- // but at least the below xDocCloseable->close call could lead to a deadlock
- // then, and it looks like none of the code here requires the SolarMutex to
- // be locked anyway:
- SolarMutexReleaser rel;
-
const OUString aFileName(m_directories.getURLFromWorkdir(u"CppunitTest/testEmptyStdlibSave.odb"));
{
- uno::Reference< lang::XComponent > xComponent = loadFromDesktop(aFileName);
- CPPUNIT_ASSERT(xComponent.is());
- uno::Reference< frame::XStorable > xDocStorable(xComponent, UNO_QUERY_THROW);
- uno::Reference< document::XEmbeddedScripts > xDocScr(xComponent, UNO_QUERY_THROW);
+ mxComponent = loadFromDesktop(aFileName);
+ uno::Reference< frame::XStorable > xDocStorable(mxComponent, UNO_QUERY_THROW);
+ uno::Reference< document::XEmbeddedScripts > xDocScr(mxComponent, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorBasLib(xDocScr->getBasicLibraries());
CPPUNIT_ASSERT(xStorBasLib.is());
uno::Reference< script::XLibraryContainer > xBasLib(xStorBasLib, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorDlgLib(xDocScr->getDialogLibraries());
CPPUNIT_ASSERT(xStorDlgLib.is());
uno::Reference< script::XLibraryContainer > xDlgLib(xStorDlgLib, UNO_QUERY_THROW);
- const OUString sStandard("Standard");
+ static constexpr OUString sStandard(u"Standard"_ustr);
xBasLib->loadLibrary(sStandard);
xDlgLib->loadLibrary(sStandard);
CPPUNIT_ASSERT(xBasLib->isLibraryLoaded(sStandard));
@@ -90,7 +79,7 @@ void DialogSaveTest::test()
// uno::Reference< util::XModifiable > xScrMod(xDocScr, UNO_QUERY_THROW);
// xScrMod->setModified(sal_True);
- // uno::Reference< util::XModifiable > xDocMod(xComponent, UNO_QUERY_THROW);
+ // uno::Reference< util::XModifiable > xDocMod(mxComponent, UNO_QUERY_THROW);
// std::cerr << "** Modified: " << static_cast<bool>(xDocMod->isModified()) << std::endl;
// xDocMod->setModified(sal_True);
// std::cerr << "** Modified: " << static_cast<bool>(xDocMod->isModified()) << std::endl;
@@ -100,15 +89,10 @@ void DialogSaveTest::test()
// do *not* change to store(As|To|URL)!
xDocStorable->store();
- // close
- uno::Reference< util::XCloseable > xDocCloseable(xComponent, UNO_QUERY_THROW);
- xDocCloseable->close(false);
-
// All our uno::References are (should?) be invalid now -> let them go out of scope
}
{
- uno::Sequence<uno::Any> args(1);
- args[0] <<= aFileName;
+ uno::Sequence<uno::Any> args{ uno::Any(aFileName) };
Reference<container::XHierarchicalNameAccess> xHNA(getMultiServiceFactory()->createInstanceWithArguments("com.sun.star.packages.Package", args), UNO_QUERY_THROW);
CPPUNIT_ASSERT(!xHNA->hasByHierarchicalName("Basic/Standard"));
CPPUNIT_ASSERT(!xHNA->hasByHierarchicalName("Dialogs/Standard"));
diff --git a/dbaccess/qa/extras/hsql_schema_import.cxx b/dbaccess/qa/extras/hsql_schema_import.cxx
index 6d714ae9a8ae..f5f34d38b69a 100644
--- a/dbaccess/qa/extras/hsql_schema_import.cxx
+++ b/dbaccess/qa/extras/hsql_schema_import.cxx
@@ -62,7 +62,7 @@ public:
void HsqlSchemaImportTest::testIntegerPrimaryKeyNotNull()
{
FbCreateStmtParser aCreateParser;
- aCreateParser.parse("CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY)");
+ aCreateParser.parse(u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY)");
CPPUNIT_ASSERT_EQUAL(OUString{ "\"myTable\"" }, aCreateParser.getTableName());
const auto& columns = aCreateParser.getColumnDef();
@@ -79,7 +79,7 @@ void HsqlSchemaImportTest::testVarcharWithParam()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
"VARCHAR(50))");
const auto& columns = aCreateParser.getColumnDef();
@@ -101,7 +101,7 @@ void HsqlSchemaImportTest::testVarcharWithoutParam()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
"VARCHAR)");
const auto& columns = aCreateParser.getColumnDef();
@@ -116,7 +116,7 @@ void HsqlSchemaImportTest::testNumericWithTwoParam()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"Betrag\" "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"Betrag\" "
"NUMERIC(8,2))");
const auto& columns = aCreateParser.getColumnDef();
@@ -137,7 +137,7 @@ void HsqlSchemaImportTest::testIntegerAutoincremental()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY GENERATED "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY GENERATED "
"BY DEFAULT AS IDENTITY(START WITH 0), \"myText\" VARCHAR(50))");
const auto& columns = aCreateParser.getColumnDef();
@@ -157,7 +157,7 @@ void HsqlSchemaImportTest::testTimestampWithParam()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myText\" "
"TIMESTAMP(0))");
const auto& columns = aCreateParser.getColumnDef();
@@ -179,7 +179,7 @@ void HsqlSchemaImportTest::testDefaultValueNow()
{
FbCreateStmtParser aCreateParser;
aCreateParser.parse(
- "CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myDate\" "
+ u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, \"myDate\" "
"TIMESTAMP DEFAULT NOW)");
const auto& columns = aCreateParser.getColumnDef();
@@ -194,7 +194,7 @@ void HsqlSchemaImportTest::testDefaultValueNow()
void HsqlSchemaImportTest::testEvilNullColumnName()
{
FbCreateStmtParser aCreateParser;
- aCreateParser.parse("CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, "
+ aCreateParser.parse(u"CREATE CACHED TABLE \"myTable\"(\"id\" INTEGER NOT NULL PRIMARY KEY, "
"\"myEvilNOT NULLName\" "
"VARCHAR(20))");
diff --git a/dbaccess/qa/extras/macros-test.cxx b/dbaccess/qa/extras/macros-test.cxx
index e102c75896b3..c2f75fa3c8f6 100644
--- a/dbaccess/qa/extras/macros-test.cxx
+++ b/dbaccess/qa/extras/macros-test.cxx
@@ -11,7 +11,6 @@
#include <test/unoapi_test.hxx>
using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
#if !defined(MACOSX) && !defined(_WIN32)
@@ -32,14 +31,7 @@ DBAccessTest::DBAccessTest()
{
}
-void DBAccessTest::test()
-{
- OUString aFileName;
- createFileURL(u"testdb.odb", aFileName);
- uno::Reference<lang::XComponent> xComponent = loadFromDesktop(aFileName);
- CPPUNIT_ASSERT(xComponent.is());
- xComponent->dispose();
-}
+void DBAccessTest::test() { loadFromFile(u"testdb.odb"); }
CPPUNIT_TEST_SUITE_REGISTRATION(DBAccessTest);
diff --git a/dbaccess/qa/extras/nolib-save.cxx b/dbaccess/qa/extras/nolib-save.cxx
index e191402425f9..614c4f03794a 100644
--- a/dbaccess/qa/extras/nolib-save.cxx
+++ b/dbaccess/qa/extras/nolib-save.cxx
@@ -9,16 +9,12 @@
#include <sal/config.h>
#include <test/unoapi_test.hxx>
-#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp>
#include <com/sun/star/script/XStorageBasedLibraryContainer.hpp>
#include <com/sun/star/script/XLibraryContainer.hpp>
-#include <com/sun/star/util/XCloseable.hpp>
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
-#include <vcl/svapp.hxx>
-
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
@@ -47,25 +43,18 @@ DialogSaveTest::DialogSaveTest()
void DialogSaveTest::test()
{
- // UnoApiTest::setUp (via InitVCL) puts each test under a locked SolarMutex,
- // but at least the below xDocCloseable->close call could lead to a deadlock
- // then, and it looks like none of the code here requires the SolarMutex to
- // be locked anyway:
- SolarMutexReleaser rel;
-
const OUString aFileName(m_directories.getURLFromWorkdir(u"CppunitTest/testNolibSave.odb"));
{
- uno::Reference< lang::XComponent > xComponent = loadFromDesktop(aFileName);
- CPPUNIT_ASSERT(xComponent.is());
- uno::Reference< frame::XStorable > xDocStorable(xComponent, UNO_QUERY_THROW);
- uno::Reference< document::XEmbeddedScripts > xDocScr(xComponent, UNO_QUERY_THROW);
+ mxComponent = loadFromDesktop(aFileName);
+ uno::Reference< frame::XStorable > xDocStorable(mxComponent, UNO_QUERY_THROW);
+ uno::Reference< document::XEmbeddedScripts > xDocScr(mxComponent, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorBasLib(xDocScr->getBasicLibraries());
CPPUNIT_ASSERT(xStorBasLib.is());
uno::Reference< script::XLibraryContainer > xBasLib(xStorBasLib, UNO_QUERY_THROW);
uno::Reference< script::XStorageBasedLibraryContainer > xStorDlgLib(xDocScr->getDialogLibraries());
CPPUNIT_ASSERT(xStorDlgLib.is());
uno::Reference< script::XLibraryContainer > xDlgLib(xStorDlgLib, UNO_QUERY_THROW);
- const OUString sStandard("Standard");
+ static constexpr OUString sStandard(u"Standard"_ustr);
xBasLib->loadLibrary(sStandard);
xDlgLib->loadLibrary(sStandard);
CPPUNIT_ASSERT(xBasLib->isLibraryLoaded(sStandard));
@@ -80,7 +69,7 @@ void DialogSaveTest::test()
// uno::Reference< util::XModifiable > xScrMod(xDocScr, UNO_QUERY_THROW);
// xScrMod->setModified(sal_True);
- // uno::Reference< util::XModifiable > xDocMod(xComponent, UNO_QUERY_THROW);
+ // uno::Reference< util::XModifiable > xDocMod(mxComponent, UNO_QUERY_THROW);
// std::cerr << "** Modified: " << static_cast<bool>(xDocMod->isModified()) << std::endl;
// xDocMod->setModified(sal_True);
// std::cerr << "** Modified: " << static_cast<bool>(xDocMod->isModified()) << std::endl;
@@ -90,15 +79,10 @@ void DialogSaveTest::test()
// do *not* change to store(As|To|URL)!
xDocStorable->store();
- // close
- uno::Reference< util::XCloseable > xDocCloseable(xComponent, UNO_QUERY_THROW);
- xDocCloseable->close(false);
-
// All our uno::References are (should?) be invalid now -> let them go out of scope
}
{
- uno::Sequence<uno::Any> args(1);
- args[0] <<= aFileName;
+ uno::Sequence<uno::Any> args{ uno::Any(aFileName) };
Reference<container::XHierarchicalNameAccess> xHNA(getMultiServiceFactory()->createInstanceWithArguments("com.sun.star.packages.Package", args), UNO_QUERY_THROW);
CPPUNIT_ASSERT(!xHNA->hasByHierarchicalName("Basic/Standard"));
CPPUNIT_ASSERT(!xHNA->hasByHierarchicalName("Dialogs/Standard"));
diff --git a/dbaccess/qa/extras/rowsetclones.cxx b/dbaccess/qa/extras/rowsetclones.cxx
index d4637c5d8ae6..88afad9eab9e 100644
--- a/dbaccess/qa/extras/rowsetclones.cxx
+++ b/dbaccess/qa/extras/rowsetclones.cxx
@@ -10,7 +10,6 @@
#include <sal/config.h>
#include <test/unoapi_test.hxx>
#include <com/sun/star/sdb/XOfficeDatabaseDocument.hpp>
-#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/sdb/CommandType.hpp>
#include <com/sun/star/sdbc/XConnection.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
@@ -25,7 +24,6 @@ using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::sdb;
using namespace ::com::sun::star::sdbc;
-using namespace ::com::sun::star::sdbcx;
class RowSetClones : public UnoApiTest
{
@@ -50,11 +48,8 @@ void RowSetClones::test()
{
const OUString sFilePath(m_directories.getURLFromWorkdir(u"CppunitTest/RowSetClones.odb"));
- uno::Reference< lang::XComponent > xComponent (loadFromDesktop(sFilePath));
- CPPUNIT_ASSERT(xComponent.is());
-
- uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY);
- CPPUNIT_ASSERT(xDocument.is());
+ mxComponent = loadFromDesktop(sFilePath);
+ uno::Reference< XOfficeDatabaseDocument > xDocument(mxComponent, UNO_QUERY_THROW);
uno::Reference< XDataSource > xDataSource = xDocument->getDataSource();
CPPUNIT_ASSERT(xDataSource.is());
@@ -125,8 +120,6 @@ void RowSetClones::test()
CPPUNIT_ASSERT(xResultSetClone->isLast());
CPPUNIT_ASSERT(xResultSet->isFirst());
CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1), xRow->getInt(1));
-
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
}
CPPUNIT_TEST_SUITE_REGISTRATION(RowSetClones);
diff --git a/dbaccess/qa/python/fdo84315.py b/dbaccess/qa/python/fdo84315.py
index f58b16f51309..680ba7495c3b 100644
--- a/dbaccess/qa/python/fdo84315.py
+++ b/dbaccess/qa/python/fdo84315.py
@@ -10,7 +10,6 @@
import os
import unittest
from collections import deque
-import unohelper
from org.libreoffice.unotest import UnoInProcess
class Fdo84315(unittest.TestCase):
@@ -67,7 +66,7 @@ class Fdo84315(unittest.TestCase):
xResultset = xStatement.executeQuery('SELECT "id" FROM "test_table"')
expected_values = deque([0, 1])
- xMeta = self.__test_Query('id', INTEGER, xResultset)
+ self.__test_Query('id', INTEGER, xResultset)
self.__test_ResultSetInteger(xResultset, expected_values)
xCon.dispose()
diff --git a/dbaccess/qa/unit/data/firebird_empty_le.odb b/dbaccess/qa/unit/data/firebird_empty_le.odb
deleted file mode 100644
index 766c17db2ec9..000000000000
--- a/dbaccess/qa/unit/data/firebird_empty_le.odb
+++ /dev/null
Binary files differ
diff --git a/dbaccess/qa/unit/data/firebird_integer_le.odb b/dbaccess/qa/unit/data/firebird_integer_le.odb
deleted file mode 100644
index da2ec1499198..000000000000
--- a/dbaccess/qa/unit/data/firebird_integer_le.odb
+++ /dev/null
Binary files differ
diff --git a/dbaccess/qa/unit/data/firebird_integer_le_ods12.odb b/dbaccess/qa/unit/data/firebird_integer_le_ods12.odb
deleted file mode 100644
index 95691ed20585..000000000000
--- a/dbaccess/qa/unit/data/firebird_integer_le_ods12.odb
+++ /dev/null
Binary files differ
diff --git a/dbaccess/qa/unit/data/tdf132924.odb b/dbaccess/qa/unit/data/tdf132924.odb
new file mode 100644
index 000000000000..8cee7bcbabfd
--- /dev/null
+++ b/dbaccess/qa/unit/data/tdf132924.odb
Binary files differ
diff --git a/dbaccess/qa/unit/dbtest_base.cxx b/dbaccess/qa/unit/dbtest_base.cxx
index caee25fa70ac..88da4b469742 100644
--- a/dbaccess/qa/unit/dbtest_base.cxx
+++ b/dbaccess/qa/unit/dbtest_base.cxx
@@ -30,11 +30,6 @@ class DBTestBase
public:
DBTestBase() : UnoApiTest("dbaccess/qa/unit/data") {};
- utl::TempFile createTempCopy(std::u16string_view pathname);
-
- uno::Reference< XOfficeDatabaseDocument >
- getDocumentForFileName(std::u16string_view sFileName);
-
uno::Reference<XOfficeDatabaseDocument> getDocumentForUrl(OUString const & url);
uno::Reference< XConnection >
@@ -42,36 +37,9 @@ public:
uno::Reference< XOfficeDatabaseDocument > const & xDocument);
};
-utl::TempFile DBTestBase::createTempCopy(std::u16string_view pathname) {
- OUString url;
- createFileURL(pathname, url);
- utl::TempFile tmp;
- tmp.EnableKillingFile();
- auto const e = osl::File::copy(url, tmp.GetURL());
- CPPUNIT_ASSERT_EQUAL_MESSAGE(
- (OString(
- "<" + OUStringToOString(url, RTL_TEXTENCODING_UTF8) + "> -> <"
- + OUStringToOString(tmp.GetURL(), RTL_TEXTENCODING_UTF8) + ">")
- .getStr()),
- osl::FileBase::E_None, e);
- return tmp;
-}
-
-uno::Reference< XOfficeDatabaseDocument >
- DBTestBase::getDocumentForFileName(std::u16string_view sFileName)
-{
- OUString sFilePath;
- createFileURL(sFileName, sFilePath);
- return getDocumentForUrl(sFilePath);
-}
-
uno::Reference<XOfficeDatabaseDocument> DBTestBase::getDocumentForUrl(OUString const & url) {
- uno::Reference< lang::XComponent > xComponent (loadFromDesktop(url));
- CPPUNIT_ASSERT(xComponent.is());
-
- uno::Reference< XOfficeDatabaseDocument > xDocument(xComponent, UNO_QUERY);
- CPPUNIT_ASSERT(xDocument.is());
-
+ mxComponent = loadFromDesktop(url);
+ uno::Reference< XOfficeDatabaseDocument > xDocument(mxComponent, UNO_QUERY_THROW);
return xDocument;
}
diff --git a/dbaccess/qa/unit/embeddeddb_performancetest.cxx b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
index e4119804d3b1..184ef0831ad1 100644
--- a/dbaccess/qa/unit/embeddeddb_performancetest.cxx
+++ b/dbaccess/qa/unit/embeddeddb_performancetest.cxx
@@ -82,7 +82,7 @@ class EmbeddedDBPerformanceTest
: public DBTestBase
{
private:
- static constexpr OUStringLiteral our_sEnableTestEnvVar = u"DBA_PERFTEST";
+ static constexpr OUString our_sEnableTestEnvVar = u"DBA_PERFTEST"_ustr;
// We store the results and print them at the end due to the amount of warning
@@ -92,7 +92,7 @@ private:
void printTimes(const TimeValue* pTime1, const TimeValue* pTime2, const TimeValue* pTime3);
void doPerformanceTestOnODB(const OUString& rDriverURL,
- const OUString& rDBName,
+ std::u16string_view rDBName,
const bool bUsePreparedStatement);
void setupTestTable(uno::Reference< XConnection > const & xConnection);
@@ -102,13 +102,13 @@ private:
// Individual Tests
void performPreparedStatementInsertTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName);
+ std::u16string_view rDBName);
void performStatementInsertTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName);
+ std::u16string_view rDBName);
void performReadTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName);
+ std::u16string_view rDBName);
// Perform all tests on a given DB.
void testFirebird();
@@ -124,8 +124,7 @@ public:
SvFileStream* EmbeddedDBPerformanceTest::getWordListStream()
{
- OUString wlPath;
- createFileURL(u"wordlist", wlPath);
+ OUString wlPath = createFileURL(u"wordlist");
return new SvFileStream(wlPath, StreamMode::READ);
}
@@ -134,11 +133,11 @@ void EmbeddedDBPerformanceTest::printTimes(
const TimeValue* pTime2,
const TimeValue* pTime3)
{
- m_aOutputBuffer
- .append(getPrintableTimeValue(pTime1)).append("\t")
- .append(getPrintableTimeValue(pTime2)).append("\t")
- .append(getPrintableTimeValue(pTime3)).append("\t")
- .append("\n");
+ m_aOutputBuffer.append(
+ getPrintableTimeValue(pTime1) + "\t" +
+ getPrintableTimeValue(pTime2) + "\t" +
+ getPrintableTimeValue(pTime3) + "\t"
+ "\n");
}
// TODO: we probably should create a document from scratch instead?
@@ -146,7 +145,7 @@ void EmbeddedDBPerformanceTest::printTimes(
void EmbeddedDBPerformanceTest::testPerformance()
{
OUString sEnabled;
- osl_getEnvironment(OUString(our_sEnableTestEnvVar).pData, &sEnabled.pData);
+ osl_getEnvironment(our_sEnableTestEnvVar.pData, &sEnabled.pData);
if (sEnabled.isEmpty())
return;
@@ -173,17 +172,17 @@ void EmbeddedDBPerformanceTest::testFirebird()
{
m_aOutputBuffer.append("Standard Insert\n");
- doPerformanceTestOnODB("sdbc:embedded:firebird", "Firebird", false);
+ doPerformanceTestOnODB("sdbc:embedded:firebird", u"Firebird", false);
m_aOutputBuffer.append("PreparedStatement Insert\n");
- doPerformanceTestOnODB("sdbc:embedded:firebird", "Firebird", true);
+ doPerformanceTestOnODB("sdbc:embedded:firebird", u"Firebird", true);
}
void EmbeddedDBPerformanceTest::testHSQLDB()
{
m_aOutputBuffer.append("Standard Insert\n");
- doPerformanceTestOnODB("sdbc:embedded:hsqldb", "HSQLDB", false);
+ doPerformanceTestOnODB("sdbc:embedded:hsqldb", u"HSQLDB", false);
m_aOutputBuffer.append("PreparedStatement Insert\n");
- doPerformanceTestOnODB("sdbc:embedded:hsqldb", "HSQLDB", true);
+ doPerformanceTestOnODB("sdbc:embedded:hsqldb", u"HSQLDB", true);
}
/**
@@ -192,10 +191,10 @@ void EmbeddedDBPerformanceTest::testHSQLDB()
*/
void EmbeddedDBPerformanceTest::doPerformanceTestOnODB(
const OUString& rDriverURL,
- const OUString& rDBName,
+ std::u16string_view rDBName,
const bool bUsePreparedStatement)
{
- ::utl::TempFile aFile;
+ ::utl::TempFileNamed aFile;
aFile.EnableKillingFile();
{
@@ -244,7 +243,7 @@ void EmbeddedDBPerformanceTest::setupTestTable(
void EmbeddedDBPerformanceTest::performPreparedStatementInsertTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName)
+ std::u16string_view rDBName)
{
uno::Reference< XPreparedStatement > xPreparedStatement =
xConnection->prepareStatement(
@@ -278,7 +277,7 @@ void EmbeddedDBPerformanceTest::performPreparedStatementInsertTest(
getTimeDifference(&aStart, &aMiddle, &aTimeInsert);
getTimeDifference(&aMiddle, &aEnd, &aTimeCommit);
getTimeDifference(&aStart, &aEnd, &aTimeTotal);
- m_aOutputBuffer.append("Insert: ").append(rDBName).append("\n");
+ m_aOutputBuffer.append(OUString::Concat("Insert: ") + rDBName + "\n");
printTimes(&aTimeInsert, &aTimeCommit, &aTimeTotal);
pFile->Close();
@@ -286,7 +285,7 @@ void EmbeddedDBPerformanceTest::performPreparedStatementInsertTest(
void EmbeddedDBPerformanceTest::performStatementInsertTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName)
+ std::u16string_view rDBName)
{
uno::Reference< XStatement > xStatement =
xConnection->createStatement();
@@ -316,7 +315,7 @@ void EmbeddedDBPerformanceTest::performStatementInsertTest(
getTimeDifference(&aStart, &aMiddle, &aTimeInsert);
getTimeDifference(&aMiddle, &aEnd, &aTimeCommit);
getTimeDifference(&aStart, &aEnd, &aTimeTotal);
- m_aOutputBuffer.append("Insert: ").append(rDBName).append("\n");
+ m_aOutputBuffer.append(OUString::Concat("Insert: ") + rDBName + "\n");
printTimes(&aTimeInsert, &aTimeCommit, &aTimeTotal);
pFile->Close();
@@ -324,7 +323,7 @@ void EmbeddedDBPerformanceTest::performStatementInsertTest(
void EmbeddedDBPerformanceTest::performReadTest(
uno::Reference< XConnection > const & xConnection,
- const OUString& rDBName)
+ std::u16string_view rDBName)
{
uno::Reference< XStatement > xStatement = xConnection->createStatement();
@@ -347,7 +346,7 @@ void EmbeddedDBPerformanceTest::performReadTest(
getTimeDifference(&aStart, &aMiddle, &aTimeSelect);
getTimeDifference(&aMiddle, &aEnd, &aTimeIterate);
getTimeDifference(&aStart, &aEnd, &aTimeTotal);
- m_aOutputBuffer.append("Read from: ").append(rDBName).append("\n");
+ m_aOutputBuffer.append(OUString::Concat("Read from: ") + rDBName + "\n");
printTimes(&aTimeSelect, &aTimeIterate, &aTimeTotal);
}
diff --git a/dbaccess/qa/unit/firebird-regression.cxx b/dbaccess/qa/unit/firebird-regression.cxx
deleted file mode 100644
index d5c53b93a64d..000000000000
--- a/dbaccess/qa/unit/firebird-regression.cxx
+++ /dev/null
@@ -1,106 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- */
-
-#include "dbtest_base.cxx"
-
-#include <com/sun/star/sdb/XOfficeDatabaseDocument.hpp>
-#include <com/sun/star/sdbc/XColumnLocate.hpp>
-#include <com/sun/star/sdbc/XConnection.hpp>
-#include <com/sun/star/sdbc/XResultSet.hpp>
-#include <com/sun/star/sdbc/XRow.hpp>
-#include <com/sun/star/sdbc/XStatement.hpp>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::sdb;
-using namespace ::com::sun::star::sdbc;
-using namespace ::com::sun::star::uno;
-
-class FirebirdTest
- : public DBTestBase
-{
-public:
- void testEmptyDBConnection();
- void testIntegerDatabase();
-
- CPPUNIT_TEST_SUITE(FirebirdTest);
- CPPUNIT_TEST(testEmptyDBConnection);
- CPPUNIT_TEST(testIntegerDatabase);
- CPPUNIT_TEST_SUITE_END();
-};
-
-/**
- * Test the loading of an "empty" file, i.e. the embedded database has not yet
- * been initialised (as occurs when a new .odb is created and opened by base).
- */
-void FirebirdTest::testEmptyDBConnection()
-{
-#ifdef OSL_BIGENDIAN
- auto const tmp = createTempCopy("firebird_empty_be.odb");
-#else
- auto const tmp = createTempCopy(u"firebird_empty_le.odb");
-#endif
- uno::Reference< XOfficeDatabaseDocument > xDocument =
- getDocumentForUrl(tmp.GetURL());
-
- getConnectionForDocument(xDocument);
-
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
-}
-
-/**
- * Test reading of integers from a known .odb to verify that the data
- * can still be read on all systems.
- */
-void FirebirdTest::testIntegerDatabase()
-{
-#ifdef OSL_BIGENDIAN
- uno::Reference< XOfficeDatabaseDocument > xDocument =
- getDocumentForFileName("firebird_integer_be_ods12.odb");
-#else
- uno::Reference< XOfficeDatabaseDocument > xDocument =
- getDocumentForFileName(u"firebird_integer_le_ods12.odb");
-#endif
-
- uno::Reference< XConnection > xConnection =
- getConnectionForDocument(xDocument);
-
- uno::Reference< XStatement > xStatement = xConnection->createStatement();
- CPPUNIT_ASSERT(xStatement.is());
-
- uno::Reference< XResultSet > xResultSet = xStatement->executeQuery(
- "SELECT * FROM TESTTABLE");
- CPPUNIT_ASSERT(xResultSet.is());
- CPPUNIT_ASSERT(xResultSet->next());
-
- uno::Reference< XRow > xRow(xResultSet, UNO_QUERY);
- CPPUNIT_ASSERT(xRow.is());
- uno::Reference< XColumnLocate > xColumnLocate(xRow, UNO_QUERY);
- CPPUNIT_ASSERT(xColumnLocate.is());
-
- CPPUNIT_ASSERT_EQUAL(sal_Int16(-30000),
- xRow->getShort(xColumnLocate->findColumn("_SMALLINT")));
- CPPUNIT_ASSERT_EQUAL(sal_Int32(-2100000000),
- xRow->getInt(xColumnLocate->findColumn("_INT")));
- CPPUNIT_ASSERT_EQUAL(SAL_CONST_INT64(-9000000000000000000),
- xRow->getLong(xColumnLocate->findColumn("_BIGINT")));
- CPPUNIT_ASSERT_EQUAL(OUString("5"),
- xRow->getString(xColumnLocate->findColumn("_CHAR")));
- CPPUNIT_ASSERT_EQUAL(OUString("5"),
- xRow->getString(xColumnLocate->findColumn("_VARCHAR")));
-
- CPPUNIT_ASSERT(!xResultSet->next()); // Should only be one row
-
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
-}
-
-CPPUNIT_TEST_SUITE_REGISTRATION(FirebirdTest);
-
-CPPUNIT_PLUGIN_IMPLEMENT();
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/qa/unit/firebird.cxx b/dbaccess/qa/unit/firebird.cxx
index e67a4d10c097..1b6b7172fdbd 100644
--- a/dbaccess/qa/unit/firebird.cxx
+++ b/dbaccess/qa/unit/firebird.cxx
@@ -15,6 +15,7 @@
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XStatement.hpp>
+#include <com/sun/star/util/XCloseable.hpp>
using namespace ::com::sun::star;
using namespace ::com::sun::star::sdb;
@@ -27,10 +28,12 @@ class FirebirdTest
public:
void testEmptyDBConnection();
void testIntegerDatabase();
+ void testTdf132924();
CPPUNIT_TEST_SUITE(FirebirdTest);
CPPUNIT_TEST(testEmptyDBConnection);
CPPUNIT_TEST(testIntegerDatabase);
+ CPPUNIT_TEST(testTdf132924);
CPPUNIT_TEST_SUITE_END();
};
@@ -40,13 +43,14 @@ public:
*/
void FirebirdTest::testEmptyDBConnection()
{
- auto const tmp = createTempCopy(u"firebird_empty.odb");
+ createTempCopy(u"firebird_empty.odb");
uno::Reference< XOfficeDatabaseDocument > xDocument =
- getDocumentForUrl(tmp.GetURL());
+ getDocumentForUrl(maTempFile.GetURL());
getConnectionForDocument(xDocument);
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
+ css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
+ xCloseable->close(false);
}
/**
@@ -55,8 +59,8 @@ void FirebirdTest::testEmptyDBConnection()
*/
void FirebirdTest::testIntegerDatabase()
{
- uno::Reference< XOfficeDatabaseDocument > xDocument =
- getDocumentForFileName(u"firebird_integer_ods12.odb");
+ loadFromFile(u"firebird_integer_ods12.odb");
+ uno::Reference< XOfficeDatabaseDocument > xDocument(mxComponent, UNO_QUERY_THROW);
uno::Reference< XConnection > xConnection =
getConnectionForDocument(xDocument);
@@ -87,7 +91,36 @@ void FirebirdTest::testIntegerDatabase()
CPPUNIT_ASSERT(!xResultSet->next()); // Should only be one row
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
+ css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
+ xCloseable->close(false);
+}
+
+void FirebirdTest::testTdf132924()
+{
+ loadFromFile(u"tdf132924.odb");
+ uno::Reference< XOfficeDatabaseDocument > xDocument(mxComponent, UNO_QUERY_THROW);
+ uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
+
+ uno::Reference<XStatement> xStatement = xConnection->createStatement();
+ CPPUNIT_ASSERT(xStatement.is());
+
+ uno::Reference<XResultSet> xResultSet = xStatement->executeQuery("SELECT * FROM AliasTest");
+ CPPUNIT_ASSERT(xResultSet.is());
+ CPPUNIT_ASSERT(xResultSet->next());
+
+ uno::Reference<XRow> xRow(xResultSet, UNO_QUERY);
+ CPPUNIT_ASSERT(xRow.is());
+ uno::Reference<XColumnLocate> xColumnLocate(xRow, UNO_QUERY);
+ CPPUNIT_ASSERT(xColumnLocate.is());
+
+ // Without the fix in place, this test would have failed with:
+ // - Expected: 1
+ // - Actual : The column name 'TestId' is not valid
+ CPPUNIT_ASSERT_EQUAL(sal_Int16(1), xRow->getShort(xColumnLocate->findColumn("TestId")));
+ CPPUNIT_ASSERT_EQUAL(OUString("TestName"), xRow->getString(xColumnLocate->findColumn("TestName")));
+
+ css::uno::Reference<util::XCloseable> xCloseable(mxComponent, css::uno::UNO_QUERY_THROW);
+ xCloseable->close(false);
}
CPPUNIT_TEST_SUITE_REGISTRATION(FirebirdTest);
diff --git a/dbaccess/qa/unit/hsql_binary_import.cxx b/dbaccess/qa/unit/hsql_binary_import.cxx
index 4eac0cdc4130..569463e7e4ef 100644
--- a/dbaccess/qa/unit/hsql_binary_import.cxx
+++ b/dbaccess/qa/unit/hsql_binary_import.cxx
@@ -46,8 +46,9 @@ void HsqlBinaryImportTest::testBinaryImport()
}
// the migration requires the file to be writable
- utl::TempFile const temp(createTempCopy(u"hsqldb_migration_test.odb"));
- uno::Reference<XOfficeDatabaseDocument> const xDocument = getDocumentForUrl(temp.GetURL());
+ createTempCopy(u"hsqldb_migration_test.odb");
+ uno::Reference<XOfficeDatabaseDocument> const xDocument
+ = getDocumentForUrl(maTempFile.GetURL());
uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
// at this point migration is already done
@@ -86,7 +87,6 @@ void HsqlBinaryImportTest::testBinaryImport()
CPPUNIT_ASSERT_EQUAL(sal_uInt16{ 2 }, date.Month);
CPPUNIT_ASSERT_EQUAL(sal_Int16{ 1998 }, date.Year);
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
if (!oldValue)
{
std::shared_ptr<comphelper::ConfigurationChanges> xChanges(
diff --git a/dbaccess/qa/unit/hsqldb.cxx b/dbaccess/qa/unit/hsqldb.cxx
index 5ee011af276e..eb553eac756e 100644
--- a/dbaccess/qa/unit/hsqldb.cxx
+++ b/dbaccess/qa/unit/hsqldb.cxx
@@ -32,12 +32,10 @@ public:
*/
void HSQLDBTest::testEmptyDBConnection()
{
- auto const file = createTempCopy(u"hsqldb_empty.odb");
- uno::Reference<XOfficeDatabaseDocument> xDocument = getDocumentForUrl(file.GetURL());
+ createTempCopy(u"hsqldb_empty.odb");
+ uno::Reference<XOfficeDatabaseDocument> xDocument = getDocumentForUrl(maTempFile.GetURL());
getConnectionForDocument(xDocument);
-
- css::uno::Reference<css::lang::XComponent>(xDocument, css::uno::UNO_QUERY_THROW)->dispose();
}
CPPUNIT_TEST_SUITE_REGISTRATION(HSQLDBTest);
diff --git a/dbaccess/qa/unit/tdf119625.cxx b/dbaccess/qa/unit/tdf119625.cxx
index 22fb5849305e..ba0c7b2ce345 100644
--- a/dbaccess/qa/unit/tdf119625.cxx
+++ b/dbaccess/qa/unit/tdf119625.cxx
@@ -66,8 +66,9 @@ void Tdf119625Test::testTime()
}
// the migration requires the file to be writable
- utl::TempFile const temp(createTempCopy(u"tdf119625.odb"));
- uno::Reference<XOfficeDatabaseDocument> const xDocument = getDocumentForUrl(temp.GetURL());
+ createTempCopy(u"tdf119625.odb");
+ uno::Reference<XOfficeDatabaseDocument> const xDocument
+ = getDocumentForUrl(maTempFile.GetURL());
uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
// at this point migration is already done
@@ -106,7 +107,6 @@ void Tdf119625Test::testTime()
}
CPPUNIT_ASSERT(!xRes->next());
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
if (!oldValue)
{
std::shared_ptr<comphelper::ConfigurationChanges> xChanges(
diff --git a/dbaccess/qa/unit/tdf126268.cxx b/dbaccess/qa/unit/tdf126268.cxx
index a4ed9dc3b868..c06fdead79c7 100644
--- a/dbaccess/qa/unit/tdf126268.cxx
+++ b/dbaccess/qa/unit/tdf126268.cxx
@@ -60,8 +60,9 @@ void Tdf126268Test::testNumbers()
}
// the migration requires the file to be writable
- utl::TempFile const temp(createTempCopy(u"tdf126268.odb"));
- uno::Reference<XOfficeDatabaseDocument> const xDocument = getDocumentForUrl(temp.GetURL());
+ createTempCopy(u"tdf126268.odb");
+ uno::Reference<XOfficeDatabaseDocument> const xDocument
+ = getDocumentForUrl(maTempFile.GetURL());
uno::Reference<XConnection> xConnection = getConnectionForDocument(xDocument);
@@ -82,7 +83,6 @@ void Tdf126268Test::testNumbers()
}
CPPUNIT_ASSERT(!xRes->next());
- closeDocument(uno::Reference<lang::XComponent>(xDocument, uno::UNO_QUERY));
if (!oldValue)
{
std::shared_ptr<comphelper::ConfigurationChanges> xChanges(