mirror of
https://github.com/zotero/zotero.git
synced 2026-10-05 02:43:38 +00:00
Make translator tester time out after 10 minutes, add partial failure condition in tester pane, and rename "Unknown" to the more descriptive "Data Mismatch"
This commit is contained in:
parent
394ad64091
commit
549fa4a508
3 changed files with 27 additions and 10 deletions
|
|
@ -26,7 +26,7 @@ td, th {
|
|||
width: 100px;
|
||||
}
|
||||
|
||||
.th-pending, .th-supported, .th-succeeded, .th-failed, .th-unknown {
|
||||
.th-pending, .th-supported, .th-succeeded, .th-failed, .th-mismatch {
|
||||
width: 75px;
|
||||
}
|
||||
|
||||
|
|
@ -38,7 +38,7 @@ td, th {
|
|||
background-color: #ff9090;
|
||||
}
|
||||
|
||||
.status-unknown {
|
||||
.status-mismatch {
|
||||
background-color: #FFB;
|
||||
}
|
||||
|
||||
|
|
@ -50,6 +50,10 @@ td, th {
|
|||
background-color: #9FF;
|
||||
}
|
||||
|
||||
.status-partial-failure {
|
||||
background-color: rgb(249, 180, 98);
|
||||
}
|
||||
|
||||
tr.output-displayed > td {
|
||||
background-color: #b4d5ff !important;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
|
||||
const NUM_CONCURRENT_TESTS = 6;
|
||||
const TRANSLATOR_TYPES = ["Web", "Import", "Export", "Search"];
|
||||
const TABLE_COLUMNS = ["Translator", "Supported", "Status", "Pending", "Succeeded", "Failed", "Unknown"];
|
||||
const TABLE_COLUMNS = ["Translator", "Supported", "Status", "Pending", "Succeeded", "Failed", "Mismatch"];
|
||||
var translatorTables = {},
|
||||
translatorTestViews = {},
|
||||
translatorTestViewsToRun = {},
|
||||
|
|
@ -89,7 +89,7 @@ var TranslatorTestView = function(translator, type) {
|
|||
this._status = document.createElement("td");
|
||||
row.appendChild(this._status);
|
||||
|
||||
// Unknown
|
||||
// Pending
|
||||
this._pending = document.createElement("td");
|
||||
row.appendChild(this._pending);
|
||||
|
||||
|
|
@ -101,7 +101,7 @@ var TranslatorTestView = function(translator, type) {
|
|||
this._failed = document.createElement("td");
|
||||
row.appendChild(this._failed);
|
||||
|
||||
// Unknown
|
||||
// Mismatch
|
||||
this._unknown = document.createElement("td");
|
||||
row.appendChild(this._unknown);
|
||||
|
||||
|
|
@ -212,15 +212,18 @@ TranslatorTestView.prototype.updateStatus = function(obj, status) {
|
|||
} else {
|
||||
this._status.textContent = "Not Run";
|
||||
}
|
||||
} else if((succeeded || unknown) && failed) {
|
||||
this._status.className = "status-partial-failure";
|
||||
this._status.textContent = "Partial Failure";
|
||||
} else if(failed) {
|
||||
this._status.className = "status-failed";
|
||||
this._status.textContent = "Failed";
|
||||
this._status.textContent = "Failure";
|
||||
} else if(unknown) {
|
||||
this._status.className = "status-unknown";
|
||||
this._status.textContent = "Unknown";
|
||||
this._status.className = "status-mismatch";
|
||||
this._status.textContent = "Data Mismatch";
|
||||
} else {
|
||||
this._status.className = "status-succeeded";
|
||||
this._status.textContent = "Succeeded";
|
||||
this._status.textContent = "Success";
|
||||
}
|
||||
} else {
|
||||
this._status.className = "status-untested";
|
||||
|
|
|
|||
|
|
@ -23,6 +23,9 @@
|
|||
***** END LICENSE BLOCK *****
|
||||
*/
|
||||
|
||||
// Timeout for test to complete
|
||||
const TEST_RUN_TIMEOUT = 600000;
|
||||
|
||||
var Zotero_TranslatorTester_IGNORE_FIELDS = ["complete", "accessDate", "checkFields"];
|
||||
|
||||
/**
|
||||
|
|
@ -137,14 +140,17 @@ Zotero_TranslatorTester.prototype.runTests = function(testDoneCallback, recursiv
|
|||
* @param {Function} testDoneCallback A callback to be executed each time a test is complete
|
||||
*/
|
||||
Zotero_TranslatorTester.prototype._runTestsRecursively = function(testDoneCallback) {
|
||||
|
||||
var test = this.pending.shift();
|
||||
var testNumber = this.tests.length-this.pending.length;
|
||||
var me = this;
|
||||
|
||||
this._debug(this, "\nTranslatorTester: Running "+this.translator.label+" Test "+testNumber);
|
||||
|
||||
var executedCallback = false;
|
||||
var callback = function(obj, test, status, message) {
|
||||
if(executedCallback) return;
|
||||
executedCallback = true;
|
||||
|
||||
me._debug(this, "TranslatorTester: "+me.translator.label+" Test "+testNumber+": "+status+" ("+message+")");
|
||||
me[status].push(test);
|
||||
if(testDoneCallback) testDoneCallback(me, test, status, message);
|
||||
|
|
@ -156,6 +162,10 @@ Zotero_TranslatorTester.prototype._runTestsRecursively = function(testDoneCallba
|
|||
} else {
|
||||
this.runTest(test, null, callback);
|
||||
}
|
||||
|
||||
window.setTimeout(function() {
|
||||
callback(me, test, "failed", "Test timed out after "+TEST_RUN_TIMEOUT+" seconds");
|
||||
}, TEST_RUN_TIMEOUT);
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue