[gnome-continuous] integrationtest: skip results dir if it cannot be copied
- From: Vadim Rutkovsky <vrutkovsky src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous] integrationtest: skip results dir if it cannot be copied
- Date: Fri, 2 May 2014 12:07:48 +0000 (UTC)
commit dec5fa4ac837accf4ddc1d90dc0e3c9a9bc9afda
Author: Vadim Rutkovsky <vrutkovs redhat com>
Date: Fri Apr 25 11:30:24 2014 +0200
integrationtest: skip results dir if it cannot be copied
src/js/tasks/task-integrationtest.js | 18 ++++++++++++++----
1 files changed, 14 insertions(+), 4 deletions(-)
---
diff --git a/src/js/tasks/task-integrationtest.js b/src/js/tasks/task-integrationtest.js
index d21e806..4a927ca 100644
--- a/src/js/tasks/task-integrationtest.js
+++ b/src/js/tasks/task-integrationtest.js
@@ -32,6 +32,7 @@ const TestBase = imports.tasks.testbase;
const LibQA = imports.libqa;
const JSUtil = imports.jsutil;
const JSONUtil = imports.jsonutil;
+const FileUtil = imports.fileutil;
// From ot-gio-utils.h.
// XXX: Introspect this.
@@ -84,11 +85,20 @@ const TaskIntegrationTest = new Lang.Class({
let testsJson = Gio.File.new_for_path('installed-test-results.json');
JSONUtil.writeJsonFileAtomic(testsJson, this._allTests, null);
- let resultsDesc = this.subworkdir.resolve_relative_path('installed-test-results');
- if (resultsDesc.query_exists(null))
- GSystem.shutil_rm_rf(resultsDesc, cancellable);
+ let resultsDest = this.subworkdir.resolve_relative_path('installed-test-results');
+ if (resultsDest.query_exists(null))
+ GSystem.shutil_rm_rf(resultsDest, cancellable);
+ resultsDest.make_directory(cancellable);
let resultsSrc = mntdir.resolve_relative_path('home/testuser/installed-tests-results');
- GSystem.shutil_cp_a(resultsSrc, resultsDesc, cancellable);
+ FileUtil.walkDir(resultsSrc, { depth: 1, fileType: Gio.FileType.DIRECTORY },
+ Lang.bind(this, function(filePath, cancellable) {
+ try {
+ testResultsDest = resultsDest.resolve_relative_path(filePath.get_basename())
+ GSystem.shutil_cp_a(filePath, testResultsDest, cancellable);
+ } catch (e) {
+ print(Format.vprintf('Cannot copy %s: %s', [filePath.get_basename(), e]));
+ }
+ }), cancellable);
if (this._oneTestFailed) {
throw new Error("Not all tests passed");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]