From 175871f9468b083a59554394ef2fa72ef6098070 Mon Sep 17 00:00:00 2001 From: Lauro Neto Date: Thu, 13 Jan 2011 15:00:12 -0300 Subject: Un-hardcode test resources path Instead of hardcoding (through the __FILE__ macro) use the current application directory to find the resources. The previous scheme didn't allow running the tests when the source code isn't available. List of resources: - a.xml -> testmodifydocumentation - utf8code.txt -> testcodeinjection Reviewer: Luciano Wolf Reviewer: Hugo Lima --- tests/CMakeLists.txt | 4 ++++ tests/testcodeinjection.cpp | 5 ++++- tests/testmodifydocumentation.cpp | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 250246645..8660ff1c1 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -15,6 +15,8 @@ declare_test(testabstractmetatype) declare_test(testaddfunction) declare_test(testarrayargument) declare_test(testcodeinjection) +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/utf8code.txt" + "${CMAKE_CURRENT_BINARY_DIR}/utf8code.txt" COPYONLY) declare_test(testcontainer) declare_test(testconversionoperator) declare_test(testconversionruletag) @@ -39,5 +41,7 @@ declare_test(testtoposort) declare_test(testvoidarg) if (NOT DISABLE_DOCSTRINGS) declare_test(testmodifydocumentation) + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/a.xml" + "${CMAKE_CURRENT_BINARY_DIR}/a.xml" COPYONLY) endif() diff --git a/tests/testcodeinjection.cpp b/tests/testcodeinjection.cpp index 6b708eb68..abc33856b 100644 --- a/tests/testcodeinjection.cpp +++ b/tests/testcodeinjection.cpp @@ -30,7 +30,10 @@ void TestCodeInjections::testReadFileUtf8() { const char* cppCode ="struct A {};"; - QString filePath = QFileInfo(__FILE__).absoluteDir().absolutePath(); + int argc = 0; + char *argv[] = {NULL}; + QCoreApplication app(argc, argv); + QString filePath = QCoreApplication::applicationDirPath(); QString xmlCode = "\ \ \ diff --git a/tests/testmodifydocumentation.cpp b/tests/testmodifydocumentation.cpp index 33a478650..46151ee88 100644 --- a/tests/testmodifydocumentation.cpp +++ b/tests/testmodifydocumentation.cpp @@ -50,7 +50,7 @@ void TestModifyDocumentation::testModifyDocumentation() QCOMPARE(docMods[0].code().trimmed(), QString("Some changed contents here")); QCOMPARE(docMods[0].signature(), QString("")); QtDocParser docParser; - docParser.setDocumentationDataDirectory(QFileInfo(__FILE__).absoluteDir().absolutePath()); + docParser.setDocumentationDataDirectory(QCoreApplication::applicationDirPath()); docParser.fillDocumentation(classA); QVERIFY(!classA->documentation().value().trimmed().isEmpty()); -- cgit v1.2.3