aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/api
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2014-08-01 09:49:30 +0200
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-08-01 10:57:39 +0200
commit702068a6ab4a8e5cbd66d6e40b742d1f11c2361c (patch)
treeff93accb9c44aed841d4338ff0b1c7d8fa2d5ab6 /tests/auto/api
parentb07742b80d3d1727d60df9b68b07bb79c4caabf1 (diff)
Autotests: Make "copy and touch" operation atomic.
On Windows, QFile::copy does not update the timestamp on the target file. This fixes the "projectInvalidation" API test on that OS. Change-Id: I01c232de0f4e5e9bc5d2d28c24d5fb5516a58ca3 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'tests/auto/api')
-rw-r--r--tests/auto/api/tst_api.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/tests/auto/api/tst_api.cpp b/tests/auto/api/tst_api.cpp
index fd2968441..ceea0f4c4 100644
--- a/tests/auto/api/tst_api.cpp
+++ b/tests/auto/api/tst_api.cpp
@@ -777,15 +777,13 @@ void TestApi::projectInvalidation()
qbs::Project project = setupJob->project();
QVERIFY(project.isValid());
waitForNewTimestamp();
- QVERIFY(QFile::remove("project.qbs"));
- QVERIFY(QFile::copy("project.early-error.qbs", "project.qbs"));
+ copyFileAndUpdateTimestamp("project.early-error.qbs", "project.qbs");
setupJob.reset(project.setupProject(setupParams, m_logSink, 0));
waitForFinished(setupJob.data());
QVERIFY(setupJob->error().hasError());
QVERIFY(project.isValid()); // Error in Loader, old project still valid.
waitForNewTimestamp();
- QVERIFY(QFile::remove("project.qbs"));
- QVERIFY(QFile::copy("project.late-error.qbs", "project.qbs"));
+ copyFileAndUpdateTimestamp("project.late-error.qbs", "project.qbs");
setupJob.reset(project.setupProject(setupParams, m_logSink, 0));
waitForFinished(setupJob.data());
QVERIFY(setupJob->error().hasError());