Mercurial > repos > agpetit > calculate_diameter
comparison run_installed_tests.html @ 6:a7128cd8f0e1 draft
"planemo upload for repository https://github.com/mesocentre-clermont-auvergne/aubi_piaf commit b6488400d4478d46697019485e912c38ea2202a5-dirty"
| author | agpetit |
|---|---|
| date | Mon, 30 May 2022 15:04:51 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 5:e504457035e5 | 6:a7128cd8f0e1 |
|---|---|
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <head> | |
| 4 <meta charset="utf-8"/> | |
| 5 <title>Test Report</title> | |
| 6 <style>body { | |
| 7 font-family: Helvetica, Arial, sans-serif; | |
| 8 font-size: 12px; | |
| 9 /* do not increase min-width as some may use split screens */ | |
| 10 min-width: 800px; | |
| 11 color: #999; | |
| 12 } | |
| 13 | |
| 14 h1 { | |
| 15 font-size: 24px; | |
| 16 color: black; | |
| 17 } | |
| 18 | |
| 19 h2 { | |
| 20 font-size: 16px; | |
| 21 color: black; | |
| 22 } | |
| 23 | |
| 24 p { | |
| 25 color: black; | |
| 26 } | |
| 27 | |
| 28 a { | |
| 29 color: #999; | |
| 30 } | |
| 31 | |
| 32 table { | |
| 33 border-collapse: collapse; | |
| 34 } | |
| 35 | |
| 36 /****************************** | |
| 37 * SUMMARY INFORMATION | |
| 38 ******************************/ | |
| 39 #environment td { | |
| 40 padding: 5px; | |
| 41 border: 1px solid #E6E6E6; | |
| 42 } | |
| 43 #environment tr:nth-child(odd) { | |
| 44 background-color: #f6f6f6; | |
| 45 } | |
| 46 | |
| 47 /****************************** | |
| 48 * TEST RESULT COLORS | |
| 49 ******************************/ | |
| 50 span.passed, | |
| 51 .passed .col-result { | |
| 52 color: green; | |
| 53 } | |
| 54 | |
| 55 span.skipped, | |
| 56 span.xfailed, | |
| 57 span.rerun, | |
| 58 .skipped .col-result, | |
| 59 .xfailed .col-result, | |
| 60 .rerun .col-result { | |
| 61 color: orange; | |
| 62 } | |
| 63 | |
| 64 span.error, | |
| 65 span.failed, | |
| 66 span.xpassed, | |
| 67 .error .col-result, | |
| 68 .failed .col-result, | |
| 69 .xpassed .col-result { | |
| 70 color: red; | |
| 71 } | |
| 72 | |
| 73 /****************************** | |
| 74 * RESULTS TABLE | |
| 75 * | |
| 76 * 1. Table Layout | |
| 77 * 2. Extra | |
| 78 * 3. Sorting items | |
| 79 * | |
| 80 ******************************/ | |
| 81 /*------------------ | |
| 82 * 1. Table Layout | |
| 83 *------------------*/ | |
| 84 #results-table { | |
| 85 border: 1px solid #e6e6e6; | |
| 86 color: #999; | |
| 87 font-size: 12px; | |
| 88 width: 100%; | |
| 89 } | |
| 90 #results-table th, | |
| 91 #results-table td { | |
| 92 padding: 5px; | |
| 93 border: 1px solid #E6E6E6; | |
| 94 text-align: left; | |
| 95 } | |
| 96 #results-table th { | |
| 97 font-weight: bold; | |
| 98 } | |
| 99 | |
| 100 /*------------------ | |
| 101 * 2. Extra | |
| 102 *------------------*/ | |
| 103 .log { | |
| 104 background-color: #e6e6e6; | |
| 105 border: 1px solid #e6e6e6; | |
| 106 color: black; | |
| 107 display: block; | |
| 108 font-family: "Courier New", Courier, monospace; | |
| 109 height: 230px; | |
| 110 overflow-y: scroll; | |
| 111 padding: 5px; | |
| 112 white-space: pre-wrap; | |
| 113 } | |
| 114 .log:only-child { | |
| 115 height: inherit; | |
| 116 } | |
| 117 | |
| 118 div.image { | |
| 119 border: 1px solid #e6e6e6; | |
| 120 float: right; | |
| 121 height: 240px; | |
| 122 margin-left: 5px; | |
| 123 overflow: hidden; | |
| 124 width: 320px; | |
| 125 } | |
| 126 div.image img { | |
| 127 width: 320px; | |
| 128 } | |
| 129 | |
| 130 div.video { | |
| 131 border: 1px solid #e6e6e6; | |
| 132 float: right; | |
| 133 height: 240px; | |
| 134 margin-left: 5px; | |
| 135 overflow: hidden; | |
| 136 width: 320px; | |
| 137 } | |
| 138 div.video video { | |
| 139 overflow: hidden; | |
| 140 width: 320px; | |
| 141 height: 240px; | |
| 142 } | |
| 143 | |
| 144 .collapsed { | |
| 145 display: none; | |
| 146 } | |
| 147 | |
| 148 .expander::after { | |
| 149 content: " (show details)"; | |
| 150 color: #BBB; | |
| 151 font-style: italic; | |
| 152 cursor: pointer; | |
| 153 } | |
| 154 | |
| 155 .collapser::after { | |
| 156 content: " (hide details)"; | |
| 157 color: #BBB; | |
| 158 font-style: italic; | |
| 159 cursor: pointer; | |
| 160 } | |
| 161 | |
| 162 /*------------------ | |
| 163 * 3. Sorting items | |
| 164 *------------------*/ | |
| 165 .sortable { | |
| 166 cursor: pointer; | |
| 167 } | |
| 168 | |
| 169 .sort-icon { | |
| 170 font-size: 0px; | |
| 171 float: left; | |
| 172 margin-right: 5px; | |
| 173 margin-top: 5px; | |
| 174 /*triangle*/ | |
| 175 width: 0; | |
| 176 height: 0; | |
| 177 border-left: 8px solid transparent; | |
| 178 border-right: 8px solid transparent; | |
| 179 } | |
| 180 .inactive .sort-icon { | |
| 181 /*finish triangle*/ | |
| 182 border-top: 8px solid #E6E6E6; | |
| 183 } | |
| 184 .asc.active .sort-icon { | |
| 185 /*finish triangle*/ | |
| 186 border-bottom: 8px solid #999; | |
| 187 } | |
| 188 .desc.active .sort-icon { | |
| 189 /*finish triangle*/ | |
| 190 border-top: 8px solid #999; | |
| 191 } | |
| 192 </style></head> | |
| 193 <body onLoad="init()"> | |
| 194 <script>/* This Source Code Form is subject to the terms of the Mozilla Public | |
| 195 * License, v. 2.0. If a copy of the MPL was not distributed with this file, | |
| 196 * You can obtain one at http://mozilla.org/MPL/2.0/. */ | |
| 197 | |
| 198 | |
| 199 function toArray(iter) { | |
| 200 if (iter === null) { | |
| 201 return null; | |
| 202 } | |
| 203 return Array.prototype.slice.call(iter); | |
| 204 } | |
| 205 | |
| 206 function find(selector, elem) { // eslint-disable-line no-redeclare | |
| 207 if (!elem) { | |
| 208 elem = document; | |
| 209 } | |
| 210 return elem.querySelector(selector); | |
| 211 } | |
| 212 | |
| 213 function findAll(selector, elem) { | |
| 214 if (!elem) { | |
| 215 elem = document; | |
| 216 } | |
| 217 return toArray(elem.querySelectorAll(selector)); | |
| 218 } | |
| 219 | |
| 220 function sortColumn(elem) { | |
| 221 toggleSortStates(elem); | |
| 222 const colIndex = toArray(elem.parentNode.childNodes).indexOf(elem); | |
| 223 let key; | |
| 224 if (elem.classList.contains('result')) { | |
| 225 key = keyResult; | |
| 226 } else if (elem.classList.contains('links')) { | |
| 227 key = keyLink; | |
| 228 } else { | |
| 229 key = keyAlpha; | |
| 230 } | |
| 231 sortTable(elem, key(colIndex)); | |
| 232 } | |
| 233 | |
| 234 function showAllExtras() { // eslint-disable-line no-unused-vars | |
| 235 findAll('.col-result').forEach(showExtras); | |
| 236 } | |
| 237 | |
| 238 function hideAllExtras() { // eslint-disable-line no-unused-vars | |
| 239 findAll('.col-result').forEach(hideExtras); | |
| 240 } | |
| 241 | |
| 242 function showExtras(colresultElem) { | |
| 243 const extras = colresultElem.parentNode.nextElementSibling; | |
| 244 const expandcollapse = colresultElem.firstElementChild; | |
| 245 extras.classList.remove('collapsed'); | |
| 246 expandcollapse.classList.remove('expander'); | |
| 247 expandcollapse.classList.add('collapser'); | |
| 248 } | |
| 249 | |
| 250 function hideExtras(colresultElem) { | |
| 251 const extras = colresultElem.parentNode.nextElementSibling; | |
| 252 const expandcollapse = colresultElem.firstElementChild; | |
| 253 extras.classList.add('collapsed'); | |
| 254 expandcollapse.classList.remove('collapser'); | |
| 255 expandcollapse.classList.add('expander'); | |
| 256 } | |
| 257 | |
| 258 function showFilters() { | |
| 259 const filterItems = document.getElementsByClassName('filter'); | |
| 260 for (let i = 0; i < filterItems.length; i++) | |
| 261 filterItems[i].hidden = false; | |
| 262 } | |
| 263 | |
| 264 function addCollapse() { | |
| 265 // Add links for show/hide all | |
| 266 const resulttable = find('table#results-table'); | |
| 267 const showhideall = document.createElement('p'); | |
| 268 showhideall.innerHTML = '<a href="javascript:showAllExtras()">Show all details</a> / ' + | |
| 269 '<a href="javascript:hideAllExtras()">Hide all details</a>'; | |
| 270 resulttable.parentElement.insertBefore(showhideall, resulttable); | |
| 271 | |
| 272 // Add show/hide link to each result | |
| 273 findAll('.col-result').forEach(function(elem) { | |
| 274 const collapsed = getQueryParameter('collapsed') || 'Passed'; | |
| 275 const extras = elem.parentNode.nextElementSibling; | |
| 276 const expandcollapse = document.createElement('span'); | |
| 277 if (extras.classList.contains('collapsed')) { | |
| 278 expandcollapse.classList.add('expander'); | |
| 279 } else if (collapsed.includes(elem.innerHTML)) { | |
| 280 extras.classList.add('collapsed'); | |
| 281 expandcollapse.classList.add('expander'); | |
| 282 } else { | |
| 283 expandcollapse.classList.add('collapser'); | |
| 284 } | |
| 285 elem.appendChild(expandcollapse); | |
| 286 | |
| 287 elem.addEventListener('click', function(event) { | |
| 288 if (event.currentTarget.parentNode.nextElementSibling.classList.contains('collapsed')) { | |
| 289 showExtras(event.currentTarget); | |
| 290 } else { | |
| 291 hideExtras(event.currentTarget); | |
| 292 } | |
| 293 }); | |
| 294 }); | |
| 295 } | |
| 296 | |
| 297 function getQueryParameter(name) { | |
| 298 const match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search); | |
| 299 return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); | |
| 300 } | |
| 301 | |
| 302 function init () { // eslint-disable-line no-unused-vars | |
| 303 resetSortHeaders(); | |
| 304 | |
| 305 addCollapse(); | |
| 306 | |
| 307 showFilters(); | |
| 308 | |
| 309 sortColumn(find('.initial-sort')); | |
| 310 | |
| 311 findAll('.sortable').forEach(function(elem) { | |
| 312 elem.addEventListener('click', | |
| 313 function() { | |
| 314 sortColumn(elem); | |
| 315 }, false); | |
| 316 }); | |
| 317 } | |
| 318 | |
| 319 function sortTable(clicked, keyFunc) { | |
| 320 const rows = findAll('.results-table-row'); | |
| 321 const reversed = !clicked.classList.contains('asc'); | |
| 322 const sortedRows = sort(rows, keyFunc, reversed); | |
| 323 /* Whole table is removed here because browsers acts much slower | |
| 324 * when appending existing elements. | |
| 325 */ | |
| 326 const thead = document.getElementById('results-table-head'); | |
| 327 document.getElementById('results-table').remove(); | |
| 328 const parent = document.createElement('table'); | |
| 329 parent.id = 'results-table'; | |
| 330 parent.appendChild(thead); | |
| 331 sortedRows.forEach(function(elem) { | |
| 332 parent.appendChild(elem); | |
| 333 }); | |
| 334 document.getElementsByTagName('BODY')[0].appendChild(parent); | |
| 335 } | |
| 336 | |
| 337 function sort(items, keyFunc, reversed) { | |
| 338 const sortArray = items.map(function(item, i) { | |
| 339 return [keyFunc(item), i]; | |
| 340 }); | |
| 341 | |
| 342 sortArray.sort(function(a, b) { | |
| 343 const keyA = a[0]; | |
| 344 const keyB = b[0]; | |
| 345 | |
| 346 if (keyA == keyB) return 0; | |
| 347 | |
| 348 if (reversed) { | |
| 349 return keyA < keyB ? 1 : -1; | |
| 350 } else { | |
| 351 return keyA > keyB ? 1 : -1; | |
| 352 } | |
| 353 }); | |
| 354 | |
| 355 return sortArray.map(function(item) { | |
| 356 const index = item[1]; | |
| 357 return items[index]; | |
| 358 }); | |
| 359 } | |
| 360 | |
| 361 function keyAlpha(colIndex) { | |
| 362 return function(elem) { | |
| 363 return elem.childNodes[1].childNodes[colIndex].firstChild.data.toLowerCase(); | |
| 364 }; | |
| 365 } | |
| 366 | |
| 367 function keyLink(colIndex) { | |
| 368 return function(elem) { | |
| 369 const dataCell = elem.childNodes[1].childNodes[colIndex].firstChild; | |
| 370 return dataCell == null ? '' : dataCell.innerText.toLowerCase(); | |
| 371 }; | |
| 372 } | |
| 373 | |
| 374 function keyResult(colIndex) { | |
| 375 return function(elem) { | |
| 376 const strings = ['Error', 'Failed', 'Rerun', 'XFailed', 'XPassed', | |
| 377 'Skipped', 'Passed']; | |
| 378 return strings.indexOf(elem.childNodes[1].childNodes[colIndex].firstChild.data); | |
| 379 }; | |
| 380 } | |
| 381 | |
| 382 function resetSortHeaders() { | |
| 383 findAll('.sort-icon').forEach(function(elem) { | |
| 384 elem.parentNode.removeChild(elem); | |
| 385 }); | |
| 386 findAll('.sortable').forEach(function(elem) { | |
| 387 const icon = document.createElement('div'); | |
| 388 icon.className = 'sort-icon'; | |
| 389 icon.textContent = 'vvv'; | |
| 390 elem.insertBefore(icon, elem.firstChild); | |
| 391 elem.classList.remove('desc', 'active'); | |
| 392 elem.classList.add('asc', 'inactive'); | |
| 393 }); | |
| 394 } | |
| 395 | |
| 396 function toggleSortStates(elem) { | |
| 397 //if active, toggle between asc and desc | |
| 398 if (elem.classList.contains('active')) { | |
| 399 elem.classList.toggle('asc'); | |
| 400 elem.classList.toggle('desc'); | |
| 401 } | |
| 402 | |
| 403 //if inactive, reset all other functions and add ascending active | |
| 404 if (elem.classList.contains('inactive')) { | |
| 405 resetSortHeaders(); | |
| 406 elem.classList.remove('inactive'); | |
| 407 elem.classList.add('active'); | |
| 408 } | |
| 409 } | |
| 410 | |
| 411 function isAllRowsHidden(value) { | |
| 412 return value.hidden == false; | |
| 413 } | |
| 414 | |
| 415 function filterTable(elem) { // eslint-disable-line no-unused-vars | |
| 416 const outcomeAtt = 'data-test-result'; | |
| 417 const outcome = elem.getAttribute(outcomeAtt); | |
| 418 const classOutcome = outcome + ' results-table-row'; | |
| 419 const outcomeRows = document.getElementsByClassName(classOutcome); | |
| 420 | |
| 421 for(let i = 0; i < outcomeRows.length; i++){ | |
| 422 outcomeRows[i].hidden = !elem.checked; | |
| 423 } | |
| 424 | |
| 425 const rows = findAll('.results-table-row').filter(isAllRowsHidden); | |
| 426 const allRowsHidden = rows.length == 0 ? true : false; | |
| 427 const notFoundMessage = document.getElementById('not-found-message'); | |
| 428 notFoundMessage.hidden = !allRowsHidden; | |
| 429 } | |
| 430 </script> | |
| 431 <h1>run_installed_tests.html</h1> | |
| 432 <p>Report generated on 30-May-2022 at 16:40:20 by <a href="https://pypi.python.org/pypi/pytest-html">pytest-html</a> v3.1.1</p> | |
| 433 <h2>Environment</h2> | |
| 434 <table id="environment"> | |
| 435 <tr> | |
| 436 <td>Packages</td> | |
| 437 <td>{"pluggy": "1.0.0", "py": "1.11.0", "pytest": "6.2.5"}</td></tr> | |
| 438 <tr> | |
| 439 <td>Platform</td> | |
| 440 <td>Linux-5.13.0-44-generic-x86_64-with-glibc2.29</td></tr> | |
| 441 <tr> | |
| 442 <td>Plugins</td> | |
| 443 <td>{"anyio": "3.5.0", "asyncio": "0.17.2", "celery": "0.0.0", "cov": "3.0.0", "html": "3.1.1", "json-report": "1.4.1", "metadata": "1.11.0", "mock": "3.7.0", "postgresql": "4.1.0", "pythonpath": "0.7.3", "shard": "0.1.2"}</td></tr> | |
| 444 <tr> | |
| 445 <td>Python</td> | |
| 446 <td>3.8.10</td></tr></table> | |
| 447 <h2>Summary</h2> | |
| 448 <p>6 tests ran in 207.85 seconds. </p> | |
| 449 <p class="filter" hidden="true">(Un)check the boxes to filter the results.</p><input checked="true" class="filter" data-test-result="passed" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="passed">4 passed</span>, <input checked="true" class="filter" data-test-result="skipped" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="skipped">0 skipped</span>, <input checked="true" class="filter" data-test-result="failed" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="failed">2 failed</span>, <input checked="true" class="filter" data-test-result="error" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="error">0 errors</span>, <input checked="true" class="filter" data-test-result="xfailed" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="xfailed">0 expected failures</span>, <input checked="true" class="filter" data-test-result="xpassed" disabled="true" hidden="true" name="filter_checkbox" onChange="filterTable(this)" type="checkbox"/><span class="xpassed">0 unexpected passes</span> | |
| 450 <h2>Results</h2> | |
| 451 <table id="results-table"> | |
| 452 <thead id="results-table-head"> | |
| 453 <tr> | |
| 454 <th class="sortable result initial-sort" col="result">Result</th> | |
| 455 <th class="sortable" col="name">Test</th> | |
| 456 <th class="sortable" col="duration">Duration</th> | |
| 457 <th class="sortable links" col="links">Links</th></tr> | |
| 458 <tr hidden="true" id="not-found-message"> | |
| 459 <th colspan="4">No results found. Try to check the filters</th></tr></thead> | |
| 460 <tbody class="failed results-table-row"> | |
| 461 <tr> | |
| 462 <td class="col-result">Failed</td> | |
| 463 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0_test_1]</td> | |
| 464 <td class="col-duration">41.70</td> | |
| 465 <td class="col-links"></td></tr> | |
| 466 <tr> | |
| 467 <td class="extra" colspan="4"> | |
| 468 <div class="log">testcases = ('testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0_test_1', <functional.test_toolbox.TestForTool_testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 testMethod=runTest>, 0)<br/>driver = <functional.test_toolbox_pytest.DefaultGalaxyTestDriver object at 0x7fbd7dccadc0><br/><br/> @pytest.mark.parametrize("testcases", cases(), ids=idfn)<br/> def test_tool(testcases, driver):<br/> test = testcases[1]<br/>> test.do_it(test_index=testcases[2])<br/><br/>test/functional/test_toolbox_pytest.py:84: <br/>_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <br/>test/functional/test_toolbox.py:35: in do_it<br/> verify_tool(tool_id, self.galaxy_interactor, resource_parameters=resource_parameters, test_index=test_index, tool_version=tool_version, register_job_data=register_job_data)<br/>lib/galaxy/tool_util/verify/interactor.py:1127: in verify_tool<br/> raise e<br/>lib/galaxy/tool_util/verify/interactor.py:1123: in verify_tool<br/> job_stdio = _verify_outputs(testdef, test_history, jobs, data_list, data_collection_list, galaxy_interactor, quiet=quiet)<br/>_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <br/><br/>testdef = <galaxy.tool_util.verify.interactor.ToolTestDescription object at 0x7fbd717e2400>, history = '54f2a3a23292eb07'<br/>jobs = [{'create_time': '2022-05-30T14:38:35.742760', 'exit_code': None, 'galaxy_version': '22.01', 'history_id': '54f2a3a23292eb07', ...}]<br/>data_list = {'cut_log': {'create_time': '2022-05-30T14:38:35.746121', 'data_type': 'galaxy.datatypes.data.Text', 'deleted': False,...b446aa50-6cfd-42d4-a1ed-d388b4035422', 'validated_state': 'unknown', 'validated_state_message': None, 'visible': True}}<br/>data_collection_list = {'output_traj': {'collection_type': 'list', 'contents_url': '/api/dataset_collections/5729865256bc2525/contents/5729865256bc2525', 'create_time': '2022-05-30T14:38:35.744675', 'deleted': False, ...}}<br/>galaxy_interactor = <galaxy.tool_util.verify.interactor.GalaxyInteractorApi object at 0x7fbd2509c1f0>, quiet = False<br/><br/> def _verify_outputs(testdef, history, jobs, data_list, data_collection_list, galaxy_interactor, quiet=False):<br/> assert len(jobs) == 1, "Test framework logic error, somehow tool test resulted in more than one job."<br/> job = jobs[0]<br/> <br/> found_exceptions = []<br/> <br/> def register_exception(e):<br/> if not found_exceptions and not quiet:<br/> # Only print this stuff out once.<br/> for stream in ['stdout', 'stderr']:<br/> if stream in job_stdio:<br/> print(_format_stream(job_stdio[stream], stream=stream, format=True), file=sys.stderr)<br/> found_exceptions.append(e)<br/> <br/> if testdef.expect_failure:<br/> if testdef.outputs:<br/> raise Exception("Cannot specify outputs in a test expecting failure.")<br/> <br/> maxseconds = testdef.maxseconds<br/> # Wait for the job to complete and register expections if the final<br/> # status was not what test was expecting.<br/> job_failed = False<br/> try:<br/> galaxy_interactor.wait_for_job(job['id'], history, maxseconds)<br/> except Exception as e:<br/> job_failed = True<br/> if not testdef.expect_failure:<br/> found_exceptions.append(e)<br/> <br/> job_stdio = galaxy_interactor.get_job_stdio(job['id'])<br/> <br/> if testdef.num_outputs is not None:<br/> expected = testdef.num_outputs<br/> actual = len(data_list) + len(data_collection_list)<br/> if expected != actual:<br/> message = f"Incorrect number of outputs - expected {expected}, found {actual}: datasets {data_list.keys()} collections {data_collection_list.keys()}"<br/> error = AssertionError(message)<br/> register_exception(error)<br/> <br/> if not job_failed and testdef.expect_failure:<br/> error = AssertionError("Expected job to fail but Galaxy indicated the job successfully completed.")<br/> register_exception(error)<br/> <br/> expect_exit_code = testdef.expect_exit_code<br/> if expect_exit_code is not None:<br/> exit_code = job_stdio["exit_code"]<br/> if str(expect_exit_code) != str(exit_code):<br/> error = AssertionError(f"Expected job to complete with exit code {expect_exit_code}, found {exit_code}")<br/> register_exception(error)<br/> <br/> for output_index, output_dict in enumerate(testdef.outputs):<br/> # Get the correct hid<br/> name = output_dict["name"]<br/> outfile = output_dict["value"]<br/> attributes = output_dict["attributes"]<br/> output_testdef = Bunch(name=name, outfile=outfile, attributes=attributes)<br/> try:<br/> output_data = data_list[name]<br/> except (TypeError, KeyError):<br/> # Legacy - fall back on ordered data list access if data_list is<br/> # just a list (case with twill variant or if output changes its<br/> # name).<br/> if hasattr(data_list, "values"):<br/> output_data = list(data_list.values())[output_index]<br/> else:<br/> output_data = data_list[len(data_list) - len(testdef.outputs) + output_index]<br/> assert output_data is not None<br/> try:<br/> galaxy_interactor.verify_output(history, jobs, output_data, output_testdef=output_testdef, tool_id=job['tool_id'], maxseconds=maxseconds, tool_version=testdef.tool_version)<br/> except Exception as e:<br/> register_exception(e)<br/> <br/> other_checks = {<br/> "command_line": "Command produced by the job",<br/> "command_version": "Tool version indicated during job execution",<br/> "stdout": "Standard output of the job",<br/> "stderr": "Standard error of the job",<br/> }<br/> # TODO: Only hack the stdio like this for older profile, for newer tool profiles<br/> # add some syntax for asserting job messages maybe - or just drop this because exit<br/> # code and regex on stdio can be tested directly - so this is really testing Galaxy<br/> # core handling more than the tool.<br/> job_messages = job_stdio.get("job_messages") or []<br/> stdout_prefix = ""<br/> stderr_prefix = ""<br/> for job_message in job_messages:<br/> message_type = job_message.get("type")<br/> if message_type == "regex" and job_message.get("stream") == "stderr":<br/> stderr_prefix += f"{job_message.get('desc') or ''}\n"<br/> elif message_type == "regex" and job_message.get("stream") == "stdout":<br/> stdout_prefix += f"{job_message.get('desc') or ''}\n"<br/> elif message_type == "exit_code":<br/> stderr_prefix += f"{job_message.get('desc') or ''}\n"<br/> else:<br/> raise Exception(f"Unknown job message type [{message_type}] in [{job_message}]")<br/> <br/> for what, description in other_checks.items():<br/> if getattr(testdef, what, None) is not None:<br/> try:<br/> raw_data = job_stdio[what]<br/> assertions = getattr(testdef, what)<br/> if what == "stdout":<br/> data = stdout_prefix + raw_data<br/> elif what == "stderr":<br/> data = stderr_prefix + raw_data<br/> else:<br/> data = raw_data<br/> verify_assertions(data, assertions)<br/> except AssertionError as err:<br/> errmsg = f'{description} different than expected\n'<br/> errmsg += util.unicodify(err)<br/> register_exception(AssertionError(errmsg))<br/> <br/> for output_collection_def in testdef.output_collections:<br/> try:<br/> name = output_collection_def.name<br/> # TODO: data_collection_list is clearly a bad name for dictionary.<br/> if name not in data_collection_list:<br/> message = f"Failed to find output [{name}], tool outputs include [{','.join(data_collection_list.keys())}]"<br/> raise AssertionError(message)<br/> <br/> # Data collection returned from submission, elements may have been populated after<br/> # the job completed so re-hit the API for more information.<br/> data_collection_id = data_collection_list[name]["id"]<br/> galaxy_interactor.verify_output_collection(output_collection_def, data_collection_id, history, job['tool_id'])<br/> except Exception as e:<br/> register_exception(e)<br/> <br/> if found_exceptions and not testdef.expect_test_failure:<br/>> raise JobOutputsError(found_exceptions, job_stdio)<br/><span class="error">E galaxy.tool_util.verify.interactor.JobOutputsError: Output cut_log: different than expected, difference (using diff):</span><br/><span class="error">E ( /tmp/tmppchetkzbcut_trajectories_file.log v. /tmp/tmpt35t2o_2cut_trajectories_file.log )</span><br/><span class="error">E --- local_file</span><br/><span class="error">E +++ history_data</span><br/><span class="error">E @@ -25,9 +25,9 @@</span><br/><span class="error">E </span><br/><span class="error">E :-) GROMACS - gmx trjconv, 2022.1-conda_forge (-:</span><br/><span class="error">E </span><br/><span class="error">E -Executable: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1/bin.AVX2_256/gmx</span><br/><span class="error">E -Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1</span><br/><span class="error">E -Working dir: /tmp/tmp87fei_xs/job_working_directory/000/5/working</span><br/><span class="error">E +Executable: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296/bin.AVX2_256/gmx</span><br/><span class="error">E +Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296</span><br/><span class="error">E +Working dir: /tmp/tmpudbcnm66/job_working_directory/000/11/working</span><br/><span class="error">E Command line:</span><br/><span class="error">E gmx trjconv -f PIP2.1_test.xtc -s PIP2.1_test.gro -b 0 -e 20 -o out/PIP2.1_test_traj_1.xtc</span><br/><span class="error">E </span><br/><span class="error">E @@ -63,16 +63,16 @@</span><br/><span class="error">E Last written: frame 2 time 20.000</span><br/><span class="error">E </span><br/><span class="error">E </span><br/><span class="error">E -GROMACS reminds you: "The Microsecond is Within Reach" (P.J. Van Maaren)</span><br/><span class="error">E +GROMACS reminds you: "Unlike teachers or doctors, our efforts improve the lives of people we'll never meet." (Katie Busch-Sorensen)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><span class="error">E Selected 0: 'System'</span><br/><span class="error">E ********</span><br/><span class="error">E *SNIP *</span><br/><span class="error">E ********</span><br/><span class="error">E +GROMACS reminds you: "What about my nose?" (Aneesur Rahman, responding to an Argonne manager arguing the long hair of Charles Bennett in his group was disreputing the lab; Retold by Michael Klein)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><span class="error">E Selected 0: 'System'</span><br/><span class="error">E :-) GROMACS - gmx trjconv, 2022.1-conda_forge (-:</span><br/><span class="error">E </span><br/><span class="error">E -Executable: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1/bin.AVX2_256/gmx</span><br/><span class="error">E -Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1</span><br/><span class="error">E -Working dir: /tmp/tmp87fei_xs/job_working_directory/000/5/working</span><br/><span class="error">E +Executable: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296/bin.AVX2_256/gmx</span><br/><span class="error">E +Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296</span><br/><span class="error">E +Working dir: /tmp/tmpudbcnm66/job_working_directory/000/11/working</span><br/><span class="error">E Command line:</span><br/><span class="error">E gmx trjconv -f PIP2.1_test.xtc -s PIP2.1_test.gro -b 60 -e 80 -o out/PIP2.1_test_traj_3.xtc</span><br/><span class="error">E </span><br/><span class="error">E @@ -155,7 +155,7 @@</span><br/><span class="error">E Last written: frame 2 time 80.000</span><br/><span class="error">E </span><br/><span class="error">E </span><br/><span class="error">E -GROMACS reminds you: "Furious activity is no substitute for understanding." (H.H. Williams)</span><br/><span class="error">E +GROMACS reminds you: "There's so many shades of black" (The Raconteurs)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><br/>lib/galaxy/tool_util/verify/interactor.py:1299: JobOutputsError<br/> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:38:07,832 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 469 2022-05-30 16:38:07,832 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 470 2022-05-30 16:38:07,833 DEBUG [multipart.multipart] Calling on_field_data with data[5:123] | |
| 471 2022-05-30 16:38:07,833 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 472 2022-05-30 16:38:07,833 DEBUG [multipart.multipart] Calling on_end with no data | |
| 473 2022-05-30 16:38:08,953 INFO [galaxy.tools] Validated and populated state for tool request (29.050 ms) | |
| 474 2022-05-30 16:38:08,960 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.145 ms) | |
| 475 2022-05-30 16:38:09,092 DEBUG [galaxy.tools.actions.upload] Checked uploads (132.576 ms) | |
| 476 2022-05-30 16:38:09,098 DEBUG [galaxy.tools.actions.upload] Created upload job (6.056 ms) | |
| 477 2022-05-30 16:38:09,122 INFO [galaxy.web_stack.handlers] (Job[id=8,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 478 2022-05-30 16:38:09,852 INFO [galaxy.jobs.handler] (8) Job dispatched | |
| 479 2022-05-30 16:38:10,126 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/8/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/8/registry.xml' '/tmp/upload_params_i5a_w25s' '9:/tmp/tmpudbcnm66/job_working_directory/000/8/working/dataset_23d2a6f5-94b1-4d86-9f3f-a265f3acfe63_files:/tmp/tmpudbcnm66/files/2/3/d/dataset_23d2a6f5-94b1-4d86-9f3f-a265f3acfe63.dat'] | |
| 480 2022-05-30 16:38:18,031 INFO [galaxy.tools] Validated and populated state for tool request (29.267 ms) | |
| 481 2022-05-30 16:38:18,038 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.146 ms) | |
| 482 2022-05-30 16:38:18,189 DEBUG [galaxy.tools.actions.upload] Checked uploads (150.477 ms) | |
| 483 2022-05-30 16:38:18,195 DEBUG [galaxy.tools.actions.upload] Created upload job (6.006 ms) | |
| 484 2022-05-30 16:38:18,222 INFO [galaxy.web_stack.handlers] (Job[id=9,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 485 2022-05-30 16:38:19,453 INFO [galaxy.jobs.handler] (9) Job dispatched | |
| 486 2022-05-30 16:38:19,600 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/9/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/9/registry.xml' '/tmp/upload_params_f8bxg9_p' '10:/tmp/tmpudbcnm66/job_working_directory/000/9/working/dataset_db8cec7e-182c-4956-ab6d-92d9562a59a0_files:/tmp/tmpudbcnm66/files/d/b/8/dataset_db8cec7e-182c-4956-ab6d-92d9562a59a0.dat'] | |
| 487 2022-05-30 16:38:26,862 INFO [galaxy.tools] Validated and populated state for tool request (22.705 ms) | |
| 488 2022-05-30 16:38:26,868 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.148 ms) | |
| 489 2022-05-30 16:38:26,990 DEBUG [galaxy.tools.actions.upload] Checked uploads (121.841 ms) | |
| 490 2022-05-30 16:38:26,997 DEBUG [galaxy.tools.actions.upload] Created upload job (6.363 ms) | |
| 491 2022-05-30 16:38:27,045 INFO [galaxy.web_stack.handlers] (Job[id=10,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 492 2022-05-30 16:38:28,374 INFO [galaxy.jobs.handler] (10) Job dispatched | |
| 493 2022-05-30 16:38:28,534 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/10/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/10/registry.xml' '/tmp/upload_params_ta376p5u' '11:/tmp/tmpudbcnm66/job_working_directory/000/10/working/dataset_3d11862f-97ea-4b1f-9042-90ff10bf136a_files:/tmp/tmpudbcnm66/files/3/d/1/dataset_3d11862f-97ea-4b1f-9042-90ff10bf136a.dat'] | |
| 494 2022-05-30 16:38:35,702 INFO [galaxy.tools] Validated and populated state for tool request (25.700 ms) | |
| 495 2022-05-30 16:38:35,716 INFO [galaxy.tools.actions] Handled collection output named output_traj for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 (2.649 ms) | |
| 496 2022-05-30 16:38:35,718 INFO [galaxy.tools.actions] Handled output named cut_log for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 (2.191 ms) | |
| 497 2022-05-30 16:38:35,729 INFO [galaxy.tools.actions] Added output datasets to history (10.524 ms) | |
| 498 2022-05-30 16:38:35,731 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0] complete, ready to be enqueued (1.911 ms) | |
| 499 2022-05-30 16:38:35,771 INFO [galaxy.web_stack.handlers] (Job[id=11,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 500 2022-05-30 16:38:36,103 INFO [galaxy.jobs.handler] (11) Job dispatched | |
| 501 2022-05-30 16:38:36,326 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/11/tool_script.sh] for tool command [[ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296')" ] || { | |
| 502 MAX_TRIES=3 | |
| 503 COUNT=0 | |
| 504 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 505 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296' > conda_activate.log 2>&1 | |
| 506 if [ $? -eq 0 ];then | |
| 507 break | |
| 508 else | |
| 509 let COUNT=COUNT+1 | |
| 510 if [ $COUNT -eq $MAX_TRIES ];then | |
| 511 echo "Failed to activate conda environment! Error was:" | |
| 512 cat conda_activate.log | |
| 513 exit 1 | |
| 514 fi | |
| 515 sleep 10s | |
| 516 fi | |
| 517 done | |
| 518 } ; [ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296')" ] || { | |
| 519 MAX_TRIES=3 | |
| 520 COUNT=0 | |
| 521 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 522 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296' > conda_activate.log 2>&1 | |
| 523 if [ $? -eq 0 ];then | |
| 524 break | |
| 525 else | |
| 526 let COUNT=COUNT+1 | |
| 527 if [ $COUNT -eq $MAX_TRIES ];then | |
| 528 echo "Failed to activate conda environment! Error was:" | |
| 529 cat conda_activate.log | |
| 530 exit 1 | |
| 531 fi | |
| 532 sleep 10s | |
| 533 fi | |
| 534 done | |
| 535 } ; ln -s '/tmp/tmpudbcnm66/files/2/3/d/dataset_23d2a6f5-94b1-4d86-9f3f-a265f3acfe63.dat' 'PIP2.1_test.gro' && ln -s '/tmp/tmpudbcnm66/files/d/b/8/dataset_db8cec7e-182c-4956-ab6d-92d9562a59a0.dat' 'PIP2.1_test.xtc' && ln -s '/tmp/tmpudbcnm66/files/3/d/1/dataset_3d11862f-97ea-4b1f-9042-90ff10bf136a.dat' 'estimated_number_of_sub_trajectories.tsv' && python '/tmp/tmpudbcnm66/shed_tools/testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/b9fb306ccb2a/cut_trajectory/cut_trajectory.py' --verbose --gro_file 'PIP2.1_test.gro' --xtc_file 'PIP2.1_test.xtc' --log_output 'out_log/cut_trajectories.log' --output_directory 'out/' --nbr_sub_traj 'estimated_number_of_sub_trajectories.tsv' --group_output 0 --number_cpus "${GALAXY_SLOTS:-1}"] | |
| 536 2022-05-30 16:38:47,856 INFO [galaxy.tool_util.verify] ## files diff on '/tmp/tmppchetkzbcut_trajectories_file.log' and '/tmp/tmpt35t2o_2cut_trajectories_file.log': lines_diff = 12, found diff = 24 | |
| 537 ---------------------- >> begin tool stdout << ----------------------- | |
| 538 | |
| 539 ----------------------- >> end tool stdout << ------------------------ | |
| 540 | |
| 541 ---------------------- >> begin tool stderr << ----------------------- | |
| 542 | |
| 543 ----------------------- >> end tool stderr << ------------------------ | |
| 544 | |
| 545 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 546 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 547 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:123] | |
| 548 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 549 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/></div></td></tr></tbody> | |
| 550 <tbody class="failed results-table-row"> | |
| 551 <tr> | |
| 552 <td class="col-result">Failed</td> | |
| 553 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0_test_2]</td> | |
| 554 <td class="col-duration">45.94</td> | |
| 555 <td class="col-links"></td></tr> | |
| 556 <tr> | |
| 557 <td class="extra" colspan="4"> | |
| 558 <div class="log">testcases = ('testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0_test_2', <functional.test_toolbox.TestForTool_testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 testMethod=runTest>, 1)<br/>driver = <functional.test_toolbox_pytest.DefaultGalaxyTestDriver object at 0x7fbd7dccadc0><br/><br/> @pytest.mark.parametrize("testcases", cases(), ids=idfn)<br/> def test_tool(testcases, driver):<br/> test = testcases[1]<br/>> test.do_it(test_index=testcases[2])<br/><br/>test/functional/test_toolbox_pytest.py:84: <br/>_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <br/>test/functional/test_toolbox.py:35: in do_it<br/> verify_tool(tool_id, self.galaxy_interactor, resource_parameters=resource_parameters, test_index=test_index, tool_version=tool_version, register_job_data=register_job_data)<br/>lib/galaxy/tool_util/verify/interactor.py:1127: in verify_tool<br/> raise e<br/>lib/galaxy/tool_util/verify/interactor.py:1123: in verify_tool<br/> job_stdio = _verify_outputs(testdef, test_history, jobs, data_list, data_collection_list, galaxy_interactor, quiet=quiet)<br/>_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ <br/><br/>testdef = <galaxy.tool_util.verify.interactor.ToolTestDescription object at 0x7fbd7aaba0d0>, history = '8155e4b4bf1581ff'<br/>jobs = [{'create_time': '2022-05-30T14:39:20.051320', 'exit_code': None, 'galaxy_version': '22.01', 'history_id': '8155e4b4bf1581ff', ...}]<br/>data_list = {'cut_log': {'create_time': '2022-05-30T14:39:20.055030', 'data_type': 'galaxy.datatypes.data.Text', 'deleted': False,...9bcf1c61-a26b-4578-9eb2-b93eb3b0d2d9', 'validated_state': 'unknown', 'validated_state_message': None, 'visible': True}}<br/>data_collection_list = {'output_traj': {'collection_type': 'list', 'contents_url': '/api/dataset_collections/54f2a3a23292eb07/contents/54f2a3a23292eb07', 'create_time': '2022-05-30T14:39:20.052784', 'deleted': False, ...}}<br/>galaxy_interactor = <galaxy.tool_util.verify.interactor.GalaxyInteractorApi object at 0x7fbd2509c1f0>, quiet = False<br/><br/> def _verify_outputs(testdef, history, jobs, data_list, data_collection_list, galaxy_interactor, quiet=False):<br/> assert len(jobs) == 1, "Test framework logic error, somehow tool test resulted in more than one job."<br/> job = jobs[0]<br/> <br/> found_exceptions = []<br/> <br/> def register_exception(e):<br/> if not found_exceptions and not quiet:<br/> # Only print this stuff out once.<br/> for stream in ['stdout', 'stderr']:<br/> if stream in job_stdio:<br/> print(_format_stream(job_stdio[stream], stream=stream, format=True), file=sys.stderr)<br/> found_exceptions.append(e)<br/> <br/> if testdef.expect_failure:<br/> if testdef.outputs:<br/> raise Exception("Cannot specify outputs in a test expecting failure.")<br/> <br/> maxseconds = testdef.maxseconds<br/> # Wait for the job to complete and register expections if the final<br/> # status was not what test was expecting.<br/> job_failed = False<br/> try:<br/> galaxy_interactor.wait_for_job(job['id'], history, maxseconds)<br/> except Exception as e:<br/> job_failed = True<br/> if not testdef.expect_failure:<br/> found_exceptions.append(e)<br/> <br/> job_stdio = galaxy_interactor.get_job_stdio(job['id'])<br/> <br/> if testdef.num_outputs is not None:<br/> expected = testdef.num_outputs<br/> actual = len(data_list) + len(data_collection_list)<br/> if expected != actual:<br/> message = f"Incorrect number of outputs - expected {expected}, found {actual}: datasets {data_list.keys()} collections {data_collection_list.keys()}"<br/> error = AssertionError(message)<br/> register_exception(error)<br/> <br/> if not job_failed and testdef.expect_failure:<br/> error = AssertionError("Expected job to fail but Galaxy indicated the job successfully completed.")<br/> register_exception(error)<br/> <br/> expect_exit_code = testdef.expect_exit_code<br/> if expect_exit_code is not None:<br/> exit_code = job_stdio["exit_code"]<br/> if str(expect_exit_code) != str(exit_code):<br/> error = AssertionError(f"Expected job to complete with exit code {expect_exit_code}, found {exit_code}")<br/> register_exception(error)<br/> <br/> for output_index, output_dict in enumerate(testdef.outputs):<br/> # Get the correct hid<br/> name = output_dict["name"]<br/> outfile = output_dict["value"]<br/> attributes = output_dict["attributes"]<br/> output_testdef = Bunch(name=name, outfile=outfile, attributes=attributes)<br/> try:<br/> output_data = data_list[name]<br/> except (TypeError, KeyError):<br/> # Legacy - fall back on ordered data list access if data_list is<br/> # just a list (case with twill variant or if output changes its<br/> # name).<br/> if hasattr(data_list, "values"):<br/> output_data = list(data_list.values())[output_index]<br/> else:<br/> output_data = data_list[len(data_list) - len(testdef.outputs) + output_index]<br/> assert output_data is not None<br/> try:<br/> galaxy_interactor.verify_output(history, jobs, output_data, output_testdef=output_testdef, tool_id=job['tool_id'], maxseconds=maxseconds, tool_version=testdef.tool_version)<br/> except Exception as e:<br/> register_exception(e)<br/> <br/> other_checks = {<br/> "command_line": "Command produced by the job",<br/> "command_version": "Tool version indicated during job execution",<br/> "stdout": "Standard output of the job",<br/> "stderr": "Standard error of the job",<br/> }<br/> # TODO: Only hack the stdio like this for older profile, for newer tool profiles<br/> # add some syntax for asserting job messages maybe - or just drop this because exit<br/> # code and regex on stdio can be tested directly - so this is really testing Galaxy<br/> # core handling more than the tool.<br/> job_messages = job_stdio.get("job_messages") or []<br/> stdout_prefix = ""<br/> stderr_prefix = ""<br/> for job_message in job_messages:<br/> message_type = job_message.get("type")<br/> if message_type == "regex" and job_message.get("stream") == "stderr":<br/> stderr_prefix += f"{job_message.get('desc') or ''}\n"<br/> elif message_type == "regex" and job_message.get("stream") == "stdout":<br/> stdout_prefix += f"{job_message.get('desc') or ''}\n"<br/> elif message_type == "exit_code":<br/> stderr_prefix += f"{job_message.get('desc') or ''}\n"<br/> else:<br/> raise Exception(f"Unknown job message type [{message_type}] in [{job_message}]")<br/> <br/> for what, description in other_checks.items():<br/> if getattr(testdef, what, None) is not None:<br/> try:<br/> raw_data = job_stdio[what]<br/> assertions = getattr(testdef, what)<br/> if what == "stdout":<br/> data = stdout_prefix + raw_data<br/> elif what == "stderr":<br/> data = stderr_prefix + raw_data<br/> else:<br/> data = raw_data<br/> verify_assertions(data, assertions)<br/> except AssertionError as err:<br/> errmsg = f'{description} different than expected\n'<br/> errmsg += util.unicodify(err)<br/> register_exception(AssertionError(errmsg))<br/> <br/> for output_collection_def in testdef.output_collections:<br/> try:<br/> name = output_collection_def.name<br/> # TODO: data_collection_list is clearly a bad name for dictionary.<br/> if name not in data_collection_list:<br/> message = f"Failed to find output [{name}], tool outputs include [{','.join(data_collection_list.keys())}]"<br/> raise AssertionError(message)<br/> <br/> # Data collection returned from submission, elements may have been populated after<br/> # the job completed so re-hit the API for more information.<br/> data_collection_id = data_collection_list[name]["id"]<br/> galaxy_interactor.verify_output_collection(output_collection_def, data_collection_id, history, job['tool_id'])<br/> except Exception as e:<br/> register_exception(e)<br/> <br/> if found_exceptions and not testdef.expect_test_failure:<br/>> raise JobOutputsError(found_exceptions, job_stdio)<br/><span class="error">E galaxy.tool_util.verify.interactor.JobOutputsError: Output cut_log: different than expected, difference (using diff):</span><br/><span class="error">E ( /tmp/tmp64i094o0cut_trajectories_no_file.log v. /tmp/tmpmbp6yd0kcut_trajectories_no_file.log )</span><br/><span class="error">E --- local_file</span><br/><span class="error">E +++ history_data</span><br/><span class="error">E @@ -23,9 +23,9 @@</span><br/><span class="error">E </span><br/><span class="error">E :-) GROMACS - gmx trjconv, 2022.1-conda_forge (-:</span><br/><span class="error">E </span><br/><span class="error">E -Executable: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1/bin.AVX2_256/gmx</span><br/><span class="error">E -Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1</span><br/><span class="error">E -Working dir: /tmp/tmp87fei_xs/job_working_directory/000/7/working</span><br/><span class="error">E +Executable: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296/bin.AVX2_256/gmx</span><br/><span class="error">E +Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296</span><br/><span class="error">E +Working dir: /tmp/tmpudbcnm66/job_working_directory/000/15/working</span><br/><span class="error">E Command line:</span><br/><span class="error">E gmx trjconv -f PIP2.1_test.xtc -s PIP2.1_test.gro -b 0 -e 20 -o out/PIP2.1_test_traj_1.xtc</span><br/><span class="error">E </span><br/><span class="error">E @@ -61,16 +61,16 @@</span><br/><span class="error">E Last written: frame 2 time 20.000</span><br/><span class="error">E </span><br/><span class="error">E </span><br/><span class="error">E -GROMACS reminds you: "It is now quite lawful for a Catholic woman to avoid pregnancy by a resort to mathematics, though she is still forbidden to resort to physics and chemistry." (Henry Louis Mencken)</span><br/><span class="error">E +GROMACS reminds you: "Pretend That You're Hercule Poirot" (TeX)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><span class="error">E Selected 0: 'System'</span><br/><span class="error">E ********</span><br/><span class="error">E *SNIP *</span><br/><span class="error">E ********</span><br/><span class="error">E +GROMACS reminds you: "If it's a good idea, go ahead and do it. It's much easier to apologize than it is to get permission." (Grace Hopper, developer of COBOL)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><span class="error">E Selected 0: 'System'</span><br/><span class="error">E :-) GROMACS - gmx trjconv, 2022.1-conda_forge (-:</span><br/><span class="error">E </span><br/><span class="error">E -Executable: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1/bin.AVX2_256/gmx</span><br/><span class="error">E -Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-0569c04ab612909a373223b7f7da6469041d31d933b93b55db5a38a76d747ad1</span><br/><span class="error">E -Working dir: /tmp/tmp87fei_xs/job_working_directory/000/7/working</span><br/><span class="error">E +Executable: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296/bin.AVX2_256/gmx</span><br/><span class="error">E +Data prefix: /home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296</span><br/><span class="error">E +Working dir: /tmp/tmpudbcnm66/job_working_directory/000/15/working</span><br/><span class="error">E Command line:</span><br/><span class="error">E gmx trjconv -f PIP2.1_test.xtc -s PIP2.1_test.gro -b 60 -e 80 -o out/PIP2.1_test_traj_3.xtc</span><br/><span class="error">E </span><br/><span class="error">E @@ -153,7 +153,7 @@</span><br/><span class="error">E Last written: frame 2 time 80.000</span><br/><span class="error">E </span><br/><span class="error">E </span><br/><span class="error">E -GROMACS reminds you: "Whatever Happened to Pong ?" (F. Black)</span><br/><span class="error">E +GROMACS reminds you: "Oh My God ! It's the Funky Shit" (Beastie Boys)</span><br/><span class="error">E </span><br/><span class="error">E Note that major changes are planned in future for trjconv, to improve usability and utility.</span><br/><span class="error">E Select group for output</span><br/><br/>lib/galaxy/tool_util/verify/interactor.py:1299: JobOutputsError<br/> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:38:49,689 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 559 2022-05-30 16:38:49,689 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 560 2022-05-30 16:38:49,689 DEBUG [multipart.multipart] Calling on_field_data with data[5:123] | |
| 561 2022-05-30 16:38:49,689 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 562 2022-05-30 16:38:49,690 DEBUG [multipart.multipart] Calling on_end with no data | |
| 563 2022-05-30 16:38:50,819 INFO [galaxy.tools] Validated and populated state for tool request (23.182 ms) | |
| 564 2022-05-30 16:38:50,825 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.158 ms) | |
| 565 2022-05-30 16:38:50,943 DEBUG [galaxy.tools.actions.upload] Checked uploads (118.175 ms) | |
| 566 2022-05-30 16:38:50,952 DEBUG [galaxy.tools.actions.upload] Created upload job (8.520 ms) | |
| 567 2022-05-30 16:38:50,974 INFO [galaxy.web_stack.handlers] (Job[id=12,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 568 2022-05-30 16:38:51,873 INFO [galaxy.jobs.handler] (12) Job dispatched | |
| 569 2022-05-30 16:38:52,023 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/12/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/12/registry.xml' '/tmp/upload_params_fm4vkooe' '16:/tmp/tmpudbcnm66/job_working_directory/000/12/working/dataset_835311dd-d3e5-4db2-bd98-274b2aa04186_files:/tmp/tmpudbcnm66/files/8/3/5/dataset_835311dd-d3e5-4db2-bd98-274b2aa04186.dat'] | |
| 570 2022-05-30 16:39:00,135 INFO [galaxy.tools] Validated and populated state for tool request (22.401 ms) | |
| 571 2022-05-30 16:39:00,141 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.169 ms) | |
| 572 2022-05-30 16:39:00,253 DEBUG [galaxy.tools.actions.upload] Checked uploads (111.316 ms) | |
| 573 2022-05-30 16:39:00,260 DEBUG [galaxy.tools.actions.upload] Created upload job (7.542 ms) | |
| 574 2022-05-30 16:39:00,290 INFO [galaxy.web_stack.handlers] (Job[id=13,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 575 2022-05-30 16:39:00,589 INFO [galaxy.jobs.handler] (13) Job dispatched | |
| 576 2022-05-30 16:39:00,789 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/13/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/13/registry.xml' '/tmp/upload_params_porkb1x0' '17:/tmp/tmpudbcnm66/job_working_directory/000/13/working/dataset_93d9a3db-08e5-4c64-b4b8-6ea194b2ec67_files:/tmp/tmpudbcnm66/files/9/3/d/dataset_93d9a3db-08e5-4c64-b4b8-6ea194b2ec67.dat'] | |
| 577 2022-05-30 16:39:07,852 INFO [galaxy.tools] Validated and populated state for tool request (23.241 ms) | |
| 578 2022-05-30 16:39:07,858 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.145 ms) | |
| 579 2022-05-30 16:39:07,983 DEBUG [galaxy.tools.actions.upload] Checked uploads (124.879 ms) | |
| 580 2022-05-30 16:39:07,994 DEBUG [galaxy.tools.actions.upload] Created upload job (10.361 ms) | |
| 581 2022-05-30 16:39:08,024 INFO [galaxy.web_stack.handlers] (Job[id=14,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 582 2022-05-30 16:39:09,254 INFO [galaxy.jobs.handler] (14) Job dispatched | |
| 583 2022-05-30 16:39:09,407 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/14/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/14/registry.xml' '/tmp/upload_params_zlwcb6g0' '18:/tmp/tmpudbcnm66/job_working_directory/000/14/working/dataset_89419396-ffd3-496c-9421-9534fdcdfb7b_files:/tmp/tmpudbcnm66/files/8/9/4/dataset_89419396-ffd3-496c-9421-9534fdcdfb7b.dat'] | |
| 584 2022-05-30 16:39:20,011 INFO [galaxy.tools] Validated and populated state for tool request (25.260 ms) | |
| 585 2022-05-30 16:39:20,024 INFO [galaxy.tools.actions] Handled collection output named output_traj for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 (0.951 ms) | |
| 586 2022-05-30 16:39:20,025 INFO [galaxy.tools.actions] Handled output named cut_log for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0 (0.960 ms) | |
| 587 2022-05-30 16:39:20,036 INFO [galaxy.tools.actions] Added output datasets to history (11.339 ms) | |
| 588 2022-05-30 16:39:20,039 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0] complete, ready to be enqueued (1.890 ms) | |
| 589 2022-05-30 16:39:20,079 INFO [galaxy.web_stack.handlers] (Job[id=15,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/cut_trajectory/0.1.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 590 2022-05-30 16:39:21,134 INFO [galaxy.jobs.handler] (15) Job dispatched | |
| 591 2022-05-30 16:39:21,441 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/15/tool_script.sh] for tool command [[ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296')" ] || { | |
| 592 MAX_TRIES=3 | |
| 593 COUNT=0 | |
| 594 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 595 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296' > conda_activate.log 2>&1 | |
| 596 if [ $? -eq 0 ];then | |
| 597 break | |
| 598 else | |
| 599 let COUNT=COUNT+1 | |
| 600 if [ $COUNT -eq $MAX_TRIES ];then | |
| 601 echo "Failed to activate conda environment! Error was:" | |
| 602 cat conda_activate.log | |
| 603 exit 1 | |
| 604 fi | |
| 605 sleep 10s | |
| 606 fi | |
| 607 done | |
| 608 } ; [ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296')" ] || { | |
| 609 MAX_TRIES=3 | |
| 610 COUNT=0 | |
| 611 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 612 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-2880a0cc8fea113b095b7fdfec6d72552feed785405b8640b3b3dfce7df9d296' > conda_activate.log 2>&1 | |
| 613 if [ $? -eq 0 ];then | |
| 614 break | |
| 615 else | |
| 616 let COUNT=COUNT+1 | |
| 617 if [ $COUNT -eq $MAX_TRIES ];then | |
| 618 echo "Failed to activate conda environment! Error was:" | |
| 619 cat conda_activate.log | |
| 620 exit 1 | |
| 621 fi | |
| 622 sleep 10s | |
| 623 fi | |
| 624 done | |
| 625 } ; ln -s '/tmp/tmpudbcnm66/files/8/3/5/dataset_835311dd-d3e5-4db2-bd98-274b2aa04186.dat' 'PIP2.1_test.gro' && ln -s '/tmp/tmpudbcnm66/files/9/3/d/dataset_93d9a3db-08e5-4c64-b4b8-6ea194b2ec67.dat' 'PIP2.1_test.xtc' && ln -s '/tmp/tmpudbcnm66/files/8/9/4/dataset_89419396-ffd3-496c-9421-9534fdcdfb7b.dat' 'PIP2.1_test_check.txt' && python '/tmp/tmpudbcnm66/shed_tools/testtoolshed.g2.bx.psu.edu/repos/agpetit/cut_trajectory/b9fb306ccb2a/cut_trajectory/cut_trajectory.py' --verbose --gro_file 'PIP2.1_test.gro' --xtc_file 'PIP2.1_test.xtc' --log_output 'out_log/cut_trajectories.log' --output_directory 'out/' --nbr_sub_traj '3' --input_check 'PIP2.1_test_check.txt' --start_traj '0' --end_traj '10' --group_output 0 --number_cpus "${GALAXY_SLOTS:-1}"] | |
| 626 2022-05-30 16:39:33,777 INFO [galaxy.tool_util.verify] ## files diff on '/tmp/tmp64i094o0cut_trajectories_no_file.log' and '/tmp/tmpmbp6yd0kcut_trajectories_no_file.log': lines_diff = 12, found diff = 24 | |
| 627 ---------------------- >> begin tool stdout << ----------------------- | |
| 628 | |
| 629 ----------------------- >> end tool stdout << ------------------------ | |
| 630 | |
| 631 ---------------------- >> begin tool stderr << ----------------------- | |
| 632 | |
| 633 ----------------------- >> end tool stderr << ------------------------ | |
| 634 | |
| 635 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 636 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 637 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:123] | |
| 638 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 639 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/></div></td></tr></tbody> | |
| 640 <tbody class="passed results-table-row"> | |
| 641 <tr> | |
| 642 <td class="col-result">Passed</td> | |
| 643 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/calculate_diameter/1.0.0_test_1]</td> | |
| 644 <td class="col-duration">30.87</td> | |
| 645 <td class="col-links"></td></tr> | |
| 646 <tr> | |
| 647 <td class="extra" colspan="4"> | |
| 648 <div class="log"> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:37:05,655 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 649 2022-05-30 16:37:05,655 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 650 2022-05-30 16:37:05,655 DEBUG [multipart.multipart] Calling on_field_data with data[5:131] | |
| 651 2022-05-30 16:37:05,655 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 652 2022-05-30 16:37:05,655 DEBUG [multipart.multipart] Calling on_end with no data | |
| 653 2022-05-30 16:37:05,796 INFO [galaxy.managers.configuration] Galaxy extra version JSON file /tmp/tmpudbcnm66/galaxy-dev/version.json not loaded. | |
| 654 2022-05-30 16:37:06,804 INFO [galaxy.tools] Validated and populated state for tool request (24.171 ms) | |
| 655 2022-05-30 16:37:06,821 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.159 ms) | |
| 656 2022-05-30 16:37:06,969 DEBUG [galaxy.tools.actions.upload] Checked uploads (147.872 ms) | |
| 657 2022-05-30 16:37:06,975 DEBUG [galaxy.tools.actions.upload] Created upload job (5.802 ms) | |
| 658 2022-05-30 16:37:07,006 INFO [galaxy.web_stack.handlers] (Job[id=1,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 659 2022-05-30 16:37:07,656 INFO [galaxy.jobs.handler] (1) Job dispatched | |
| 660 2022-05-30 16:37:07,917 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/1/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/1/registry.xml' '/tmp/upload_params_b__72u_9' '1:/tmp/tmpudbcnm66/job_working_directory/000/1/working/dataset_fa99edec-859c-4f92-a5c3-df96305c5bb8_files:/tmp/tmpudbcnm66/files/f/a/9/dataset_fa99edec-859c-4f92-a5c3-df96305c5bb8.dat'] | |
| 661 2022-05-30 16:37:15,524 INFO [galaxy.tools] Validated and populated state for tool request (24.286 ms) | |
| 662 2022-05-30 16:37:15,531 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.453 ms) | |
| 663 2022-05-30 16:37:15,643 DEBUG [galaxy.tools.actions.upload] Checked uploads (112.079 ms) | |
| 664 2022-05-30 16:37:15,650 DEBUG [galaxy.tools.actions.upload] Created upload job (6.610 ms) | |
| 665 2022-05-30 16:37:15,678 INFO [galaxy.web_stack.handlers] (Job[id=2,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 666 2022-05-30 16:37:16,066 INFO [galaxy.jobs.handler] (2) Job dispatched | |
| 667 2022-05-30 16:37:16,315 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/2/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/2/registry.xml' '/tmp/upload_params_tk7_ntpu' '2:/tmp/tmpudbcnm66/job_working_directory/000/2/working/dataset_428a901e-46dd-433f-aa38-040834923c53_files:/tmp/tmpudbcnm66/files/4/2/8/dataset_428a901e-46dd-433f-aa38-040834923c53.dat'] | |
| 668 2022-05-30 16:37:23,491 INFO [galaxy.tools] Validated and populated state for tool request (28.958 ms) | |
| 669 2022-05-30 16:37:23,505 INFO [galaxy.tools.actions] Handled output named table for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/calculate_diameter/1.0.0 (2.815 ms) | |
| 670 2022-05-30 16:37:23,507 INFO [galaxy.tools.actions] Handled output named tool_log for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/calculate_diameter/1.0.0 (2.062 ms) | |
| 671 2022-05-30 16:37:23,523 INFO [galaxy.tools.actions] Added output datasets to history (15.846 ms) | |
| 672 2022-05-30 16:37:23,527 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/calculate_diameter/1.0.0] complete, ready to be enqueued (3.520 ms) | |
| 673 2022-05-30 16:37:23,568 INFO [galaxy.web_stack.handlers] (Job[id=3,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/calculate_diameter/1.0.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 674 2022-05-30 16:37:24,549 INFO [galaxy.jobs.handler] (3) Job dispatched | |
| 675 2022-05-30 16:37:24,812 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/3/tool_script.sh] for tool command [[ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/__mdanalysis@2.1.0')" ] || { | |
| 676 MAX_TRIES=3 | |
| 677 COUNT=0 | |
| 678 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 679 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/__mdanalysis@2.1.0' > conda_activate.log 2>&1 | |
| 680 if [ $? -eq 0 ];then | |
| 681 break | |
| 682 else | |
| 683 let COUNT=COUNT+1 | |
| 684 if [ $COUNT -eq $MAX_TRIES ];then | |
| 685 echo "Failed to activate conda environment! Error was:" | |
| 686 cat conda_activate.log | |
| 687 exit 1 | |
| 688 fi | |
| 689 sleep 10s | |
| 690 fi | |
| 691 done | |
| 692 } ; python '/tmp/tmpudbcnm66/shed_tools/testtoolshed.g2.bx.psu.edu/repos/agpetit/calculate_diameter/e504457035e5/calculate_diameter/calculate_pore_diameter_aqp.py' --arr_one 'HSD LEU ALA THR' --arr_second 'ARG SER PHE GLY' --gro_file '/tmp/tmpudbcnm66/files/f/a/9/dataset_fa99edec-859c-4f92-a5c3-df96305c5bb8.dat' --xtc_file '/tmp/tmpudbcnm66/files/4/2/8/dataset_428a901e-46dd-433f-aa38-040834923c53.dat' --gro_file_ext 'gro' --xtc_file_ext 'xtc' --output '/tmp/tmpudbcnm66/files/9/7/7/dataset_977de3e3-d359-4a40-8a4b-7c51d4262504.dat' --verbose --log_output '/tmp/tmpudbcnm66/files/4/5/1/dataset_451a5cfb-9113-4c26-83ee-01449cf245c7.dat' --output_directory 'out' 2>&1] | |
| 693 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 694 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 695 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:131] | |
| 696 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 697 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/></div></td></tr></tbody> | |
| 698 <tbody class="passed results-table-row"> | |
| 699 <tr> | |
| 700 <td class="col-result">Passed</td> | |
| 701 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/concatenate_table/concatenate_table/1.0.0_test_1]</td> | |
| 702 <td class="col-duration">31.28</td> | |
| 703 <td class="col-links"></td></tr> | |
| 704 <tr> | |
| 705 <td class="extra" colspan="4"> | |
| 706 <div class="log"> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:37:36,534 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 707 2022-05-30 16:37:36,535 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 708 2022-05-30 16:37:36,535 DEBUG [multipart.multipart] Calling on_field_data with data[5:129] | |
| 709 2022-05-30 16:37:36,535 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 710 2022-05-30 16:37:36,535 DEBUG [multipart.multipart] Calling on_end with no data | |
| 711 2022-05-30 16:37:36,751 INFO [galaxy.tools] Validated and populated state for tool request (22.588 ms) | |
| 712 2022-05-30 16:37:36,757 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.152 ms) | |
| 713 2022-05-30 16:37:36,869 DEBUG [galaxy.tools.actions.upload] Checked uploads (111.983 ms) | |
| 714 2022-05-30 16:37:36,876 DEBUG [galaxy.tools.actions.upload] Created upload job (6.364 ms) | |
| 715 2022-05-30 16:37:36,905 INFO [galaxy.web_stack.handlers] (Job[id=4,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 716 2022-05-30 16:37:37,198 INFO [galaxy.jobs.handler] (4) Job dispatched | |
| 717 2022-05-30 16:37:37,368 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/4/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/4/registry.xml' '/tmp/upload_params_86aigh4i' '5:/tmp/tmpudbcnm66/job_working_directory/000/4/working/dataset_31f0355f-84ac-411f-97a3-0ac90eb23f59_files:/tmp/tmpudbcnm66/files/3/1/f/dataset_31f0355f-84ac-411f-97a3-0ac90eb23f59.dat'] | |
| 718 2022-05-30 16:37:44,495 INFO [galaxy.tools] Validated and populated state for tool request (22.079 ms) | |
| 719 2022-05-30 16:37:44,502 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.148 ms) | |
| 720 2022-05-30 16:37:44,627 DEBUG [galaxy.tools.actions.upload] Checked uploads (125.252 ms) | |
| 721 2022-05-30 16:37:44,636 DEBUG [galaxy.tools.actions.upload] Created upload job (8.474 ms) | |
| 722 2022-05-30 16:37:44,669 INFO [galaxy.web_stack.handlers] (Job[id=5,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 723 2022-05-30 16:37:45,610 INFO [galaxy.jobs.handler] (5) Job dispatched | |
| 724 2022-05-30 16:37:45,851 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/5/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/5/registry.xml' '/tmp/upload_params_wrbilm9o' '6:/tmp/tmpudbcnm66/job_working_directory/000/5/working/dataset_3698b34a-13cb-49f7-a025-b7c5874abd65_files:/tmp/tmpudbcnm66/files/3/6/9/dataset_3698b34a-13cb-49f7-a025-b7c5874abd65.dat'] | |
| 725 2022-05-30 16:37:53,123 INFO [galaxy.tools] Validated and populated state for tool request (26.199 ms) | |
| 726 2022-05-30 16:37:53,129 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.147 ms) | |
| 727 2022-05-30 16:37:53,247 DEBUG [galaxy.tools.actions.upload] Checked uploads (117.795 ms) | |
| 728 2022-05-30 16:37:53,253 DEBUG [galaxy.tools.actions.upload] Created upload job (5.870 ms) | |
| 729 2022-05-30 16:37:53,281 INFO [galaxy.web_stack.handlers] (Job[id=6,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 730 2022-05-30 16:37:54,076 INFO [galaxy.jobs.handler] (6) Job dispatched | |
| 731 2022-05-30 16:37:54,263 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/6/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/6/registry.xml' '/tmp/upload_params_a2trnhop' '7:/tmp/tmpudbcnm66/job_working_directory/000/6/working/dataset_8eed8997-0952-492c-82cf-ec9c086fbdc2_files:/tmp/tmpudbcnm66/files/8/e/e/dataset_8eed8997-0952-492c-82cf-ec9c086fbdc2.dat'] | |
| 732 2022-05-30 16:38:01,685 INFO [galaxy.tools] Validated and populated state for tool request (28.588 ms) | |
| 733 2022-05-30 16:38:01,747 INFO [galaxy.tools.actions] Handled output named sort_file for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/concatenate_table/concatenate_table/1.0.0 (3.914 ms) | |
| 734 2022-05-30 16:38:01,762 INFO [galaxy.tools.actions] Added output datasets to history (14.449 ms) | |
| 735 2022-05-30 16:38:01,763 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/concatenate_table/concatenate_table/1.0.0] complete, ready to be enqueued (1.467 ms) | |
| 736 2022-05-30 16:38:01,798 INFO [galaxy.web_stack.handlers] (Job[id=7,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/concatenate_table/concatenate_table/1.0.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 737 2022-05-30 16:38:02,505 INFO [galaxy.jobs.handler] (7) Job dispatched | |
| 738 2022-05-30 16:38:02,788 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/7/tool_script.sh] for tool command [cat /tmp/tmpudbcnm66/files/3/1/f/dataset_31f0355f-84ac-411f-97a3-0ac90eb23f59.dat | awk -F'\t' 'BEGIN{mean="Time (ps)"; std=""} /^Time/ {for (i=2; i<(NF+1); i++) gsub(" ", ",mean ",$i) ; for (i=2; i<(NF+1); i++) mean=mean "\t" $i ; for (i=2; i<(NF+1); i++) gsub(",mean", ",std ",$i); for (i=2; i<(NF+1); i++) std=std "\t" $i } END{print (mean std)}' &>> '/tmp/tmpudbcnm66/files/2/d/6/dataset_2d6d52d2-777e-48e6-b725-28a364f4e52c.dat' ; cat /tmp/tmpudbcnm66/files/3/1/f/dataset_31f0355f-84ac-411f-97a3-0ac90eb23f59.dat | awk -F'\t' -v min=200.0 'BEGIN{min_val=min ; max_val=0 ; means=""; std=""} /^[0-9]/ {if ($1 <= min_val) {min_val=$1} ; if ($1 >= max_val) {max_val=$1}} ; /Mean/ {for (i=2; i<NF; i++) means=means"\t"$i ;means=means"\t"$NF } ; /Std/ {for (i=2; i<NF; i++) std=std"\t"$i; ;std=std"\t"$NF} END {print (min_val "-" max_val means std)}' &>> 'test.tabular' ; cat /tmp/tmpudbcnm66/files/3/6/9/dataset_3698b34a-13cb-49f7-a025-b7c5874abd65.dat | awk -F'\t' -v min=500.0 'BEGIN{min_val=min ; max_val=0 ; means=""; std=""} /^[0-9]/ {if ($1 <= min_val) {min_val=$1} ; if ($1 >= max_val) {max_val=$1}} ; /Mean/ {for (i=2; i<NF; i++) means=means"\t"$i ;means=means"\t"$NF } ; /Std/ {for (i=2; i<NF; i++) std=std"\t"$i; ;std=std"\t"$NF} END {print (min_val "-" max_val means std)}' &>> 'test.tabular' ; cat /tmp/tmpudbcnm66/files/8/e/e/dataset_8eed8997-0952-492c-82cf-ec9c086fbdc2.dat | awk -F'\t' -v min=1000.0 'BEGIN{min_val=min ; max_val=0 ; means=""; std=""} /^[0-9]/ {if ($1 <= min_val) {min_val=$1} ; if ($1 >= max_val) {max_val=$1}} ; /Mean/ {for (i=2; i<NF; i++) means=means"\t"$i ;means=means"\t"$NF } ; /Std/ {for (i=2; i<NF; i++) std=std"\t"$i; ;std=std"\t"$NF} END {print (min_val "-" max_val means std)}' &>> 'test.tabular' ; cat 'test.tabular' | sort -k1 -n &>> '/tmp/tmpudbcnm66/files/2/d/6/dataset_2d6d52d2-777e-48e6-b725-28a364f4e52c.dat'] | |
| 739 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 740 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 741 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:129] | |
| 742 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 743 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/></div></td></tr></tbody> | |
| 744 <tbody class="passed results-table-row"> | |
| 745 <tr> | |
| 746 <td class="col-result">Passed</td> | |
| 747 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories/0.1.0_test_1]</td> | |
| 748 <td class="col-duration">18.87</td> | |
| 749 <td class="col-links"></td></tr> | |
| 750 <tr> | |
| 751 <td class="extra" colspan="4"> | |
| 752 <div class="log"> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:39:35,689 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 753 2022-05-30 16:39:35,689 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 754 2022-05-30 16:39:35,689 DEBUG [multipart.multipart] Calling on_field_data with data[5:151] | |
| 755 2022-05-30 16:39:35,689 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 756 2022-05-30 16:39:35,689 DEBUG [multipart.multipart] Calling on_end with no data | |
| 757 2022-05-30 16:39:35,939 INFO [galaxy.tools] Validated and populated state for tool request (22.631 ms) | |
| 758 2022-05-30 16:39:35,946 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.145 ms) | |
| 759 2022-05-30 16:39:36,081 DEBUG [galaxy.tools.actions.upload] Checked uploads (135.506 ms) | |
| 760 2022-05-30 16:39:36,091 DEBUG [galaxy.tools.actions.upload] Created upload job (9.617 ms) | |
| 761 2022-05-30 16:39:36,127 INFO [galaxy.web_stack.handlers] (Job[id=16,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 762 2022-05-30 16:39:37,095 INFO [galaxy.jobs.handler] (16) Job dispatched | |
| 763 2022-05-30 16:39:37,276 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/16/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/16/registry.xml' '/tmp/upload_params_yw33j4zk' '23:/tmp/tmpudbcnm66/job_working_directory/000/16/working/dataset_5b800b43-9848-4d53-9323-c6aceb22f262_files:/tmp/tmpudbcnm66/files/5/b/8/dataset_5b800b43-9848-4d53-9323-c6aceb22f262.dat'] | |
| 764 2022-05-30 16:39:47,071 INFO [galaxy.tools] Validated and populated state for tool request (13.357 ms) | |
| 765 2022-05-30 16:39:47,085 INFO [galaxy.tools.actions] Handled output named sub_trajectories_out_file for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories/0.1.0 (2.867 ms) | |
| 766 2022-05-30 16:39:47,087 INFO [galaxy.tools.actions] Handled output named estimate_log for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories/0.1.0 (1.940 ms) | |
| 767 2022-05-30 16:39:47,102 INFO [galaxy.tools.actions] Added output datasets to history (14.826 ms) | |
| 768 2022-05-30 16:39:47,105 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories/0.1.0] complete, ready to be enqueued (1.997 ms) | |
| 769 2022-05-30 16:39:47,141 INFO [galaxy.web_stack.handlers] (Job[id=17,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories/0.1.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 770 2022-05-30 16:39:47,780 INFO [galaxy.jobs.handler] (17) Job dispatched | |
| 771 2022-05-30 16:39:48,028 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/17/tool_script.sh] for tool command [ln -s '/tmp/tmpudbcnm66/files/5/b/8/dataset_5b800b43-9848-4d53-9323-c6aceb22f262.dat' 'PIP2.1_test_check.txt' && ln -s '/tmp/tmpudbcnm66/files/c/5/6/dataset_c56e8bb6-ce7d-4267-8564-4773459f1129.dat' 'estimated_number_of_sub_trajectories.tsv' && python '/tmp/tmpudbcnm66/shed_tools/testtoolshed.g2.bx.psu.edu/repos/agpetit/estimate_nb_sub_trajectories/5fcbf7af809c/estimate_nb_sub_trajectories/estimate_nb_sub_trajectories.py' --input_check 'PIP2.1_test_check.txt' --verbose --output_file 'estimated_number_of_sub_trajectories.tsv' --log_output 'out_log/estimated_number_of_sub_trajectories.log' --nb_frames '3' --start_traj '' --end_traj ''] | |
| 772 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 773 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 774 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:151] | |
| 775 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 776 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/></div></td></tr></tbody> | |
| 777 <tbody class="passed results-table-row"> | |
| 778 <tr> | |
| 779 <td class="col-result">Passed</td> | |
| 780 <td class="col-name">test/functional/test_toolbox_pytest.py::test_tool[testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0_test_1]</td> | |
| 781 <td class="col-duration">26.28</td> | |
| 782 <td class="col-links"></td></tr> | |
| 783 <tr> | |
| 784 <td class="extra" colspan="4"> | |
| 785 <div class="log"> ------------------------------Captured stderr call------------------------------ <br/>2022-05-30 16:39:54,571 DEBUG [multipart.multipart] Calling on_field_start with no data | |
| 786 2022-05-30 16:39:54,571 DEBUG [multipart.multipart] Calling on_field_name with data[0:4] | |
| 787 2022-05-30 16:39:54,571 DEBUG [multipart.multipart] Calling on_field_data with data[5:149] | |
| 788 2022-05-30 16:39:54,571 DEBUG [multipart.multipart] Calling on_field_end with no data | |
| 789 2022-05-30 16:39:54,571 DEBUG [multipart.multipart] Calling on_end with no data | |
| 790 2022-05-30 16:39:54,792 INFO [galaxy.tools] Validated and populated state for tool request (26.681 ms) | |
| 791 2022-05-30 16:39:54,798 DEBUG [galaxy.tools.actions.upload] Persisted uploads (0.150 ms) | |
| 792 2022-05-30 16:39:54,915 DEBUG [galaxy.tools.actions.upload] Checked uploads (116.261 ms) | |
| 793 2022-05-30 16:39:54,921 DEBUG [galaxy.tools.actions.upload] Created upload job (6.361 ms) | |
| 794 2022-05-30 16:39:54,943 INFO [galaxy.web_stack.handlers] (Job[id=18,tool_id=upload1]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 795 2022-05-30 16:39:55,282 INFO [galaxy.jobs.handler] (18) Job dispatched | |
| 796 2022-05-30 16:39:55,521 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/18/tool_script.sh] for tool command [python '/tmp/tmpudbcnm66/galaxy-dev/tools/data_source/upload.py' '/tmp/tmpudbcnm66/galaxy-dev' '/tmp/tmpudbcnm66/job_working_directory/000/18/registry.xml' '/tmp/upload_params_tj6wy_cu' '26:/tmp/tmpudbcnm66/job_working_directory/000/18/working/dataset_12912b09-e396-43d6-afbb-14e2260e8be3_files:/tmp/tmpudbcnm66/files/1/2/9/dataset_12912b09-e396-43d6-afbb-14e2260e8be3.dat'] | |
| 797 2022-05-30 16:40:03,597 INFO [galaxy.tools] Validated and populated state for tool request (16.995 ms) | |
| 798 2022-05-30 16:40:03,623 INFO [galaxy.tools.actions] Handled output named out_file for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0 (4.741 ms) | |
| 799 2022-05-30 16:40:03,628 INFO [galaxy.tools.actions] Handled output named out_file2 for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0 (4.097 ms) | |
| 800 2022-05-30 16:40:03,630 INFO [galaxy.tools.actions] Handled output named out_file3 for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0 (2.331 ms) | |
| 801 2022-05-30 16:40:03,634 INFO [galaxy.tools.actions] Handled output named out_file4 for tool testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0 (3.048 ms) | |
| 802 2022-05-30 16:40:03,656 INFO [galaxy.tools.actions] Added output datasets to history (22.238 ms) | |
| 803 2022-05-30 16:40:03,659 INFO [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0] complete, ready to be enqueued (2.452 ms) | |
| 804 2022-05-30 16:40:03,721 INFO [galaxy.web_stack.handlers] (Job[id=19,tool_id=testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp/0.1.0]) Handler '_default_' assigned using 'HANDLER_ASSIGNMENT_METHODS.DB_SKIP_LOCKED' assignment method | |
| 805 2022-05-30 16:40:04,091 INFO [galaxy.jobs.handler] (19) Job dispatched | |
| 806 2022-05-30 16:40:04,375 INFO [galaxy.jobs.command_factory] Built script [/tmp/tmpudbcnm66/job_working_directory/000/19/tool_script.sh] for tool command [[ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f')" ] || { | |
| 807 MAX_TRIES=3 | |
| 808 COUNT=0 | |
| 809 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 810 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f' > conda_activate.log 2>&1 | |
| 811 if [ $? -eq 0 ];then | |
| 812 break | |
| 813 else | |
| 814 let COUNT=COUNT+1 | |
| 815 if [ $COUNT -eq $MAX_TRIES ];then | |
| 816 echo "Failed to activate conda environment! Error was:" | |
| 817 cat conda_activate.log | |
| 818 exit 1 | |
| 819 fi | |
| 820 sleep 10s | |
| 821 fi | |
| 822 done | |
| 823 } ; [ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f')" ] || { | |
| 824 MAX_TRIES=3 | |
| 825 COUNT=0 | |
| 826 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 827 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f' > conda_activate.log 2>&1 | |
| 828 if [ $? -eq 0 ];then | |
| 829 break | |
| 830 else | |
| 831 let COUNT=COUNT+1 | |
| 832 if [ $COUNT -eq $MAX_TRIES ];then | |
| 833 echo "Failed to activate conda environment! Error was:" | |
| 834 cat conda_activate.log | |
| 835 exit 1 | |
| 836 fi | |
| 837 sleep 10s | |
| 838 fi | |
| 839 done | |
| 840 } ; [ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f')" ] || { | |
| 841 MAX_TRIES=3 | |
| 842 COUNT=0 | |
| 843 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 844 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f' > conda_activate.log 2>&1 | |
| 845 if [ $? -eq 0 ];then | |
| 846 break | |
| 847 else | |
| 848 let COUNT=COUNT+1 | |
| 849 if [ $COUNT -eq $MAX_TRIES ];then | |
| 850 echo "Failed to activate conda environment! Error was:" | |
| 851 cat conda_activate.log | |
| 852 exit 1 | |
| 853 fi | |
| 854 sleep 10s | |
| 855 fi | |
| 856 done | |
| 857 } ; [ "$(basename "$CONDA_DEFAULT_ENV")" = "$(basename '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f')" ] || { | |
| 858 MAX_TRIES=3 | |
| 859 COUNT=0 | |
| 860 while [ $COUNT -lt $MAX_TRIES ]; do | |
| 861 . '/home/aepetit/miniconda3/bin/activate' '/home/aepetit/miniconda3/envs/mulled-v1-5a4fbc211f26cb04dc98136056f4848655807f4df79e1bb9f5b172569688ee2f' > conda_activate.log 2>&1 | |
| 862 if [ $? -eq 0 ];then | |
| 863 break | |
| 864 else | |
| 865 let COUNT=COUNT+1 | |
| 866 if [ $COUNT -eq $MAX_TRIES ];then | |
| 867 echo "Failed to activate conda environment! Error was:" | |
| 868 cat conda_activate.log | |
| 869 exit 1 | |
| 870 fi | |
| 871 sleep 10s | |
| 872 fi | |
| 873 done | |
| 874 } ; ln -s '/tmp/tmpudbcnm66/files/1/2/9/dataset_12912b09-e396-43d6-afbb-14e2260e8be3.dat' 'table_sort_pore_diameter_aqp.tabular' && Rscript '/tmp/tmpudbcnm66/shed_tools/testtoolshed.g2.bx.psu.edu/repos/agpetit/visualize_pore_diameter_aqp/7f1b1530d0fb/visualize_pore_diameter_aqp/visualize_pore_diameter_aqp.R' -i 'table_sort_pore_diameter_aqp.tabular' -a TRUE -p TRUE -d TRUE -f TRUE] | |
| 875 2022-05-30 16:40:19,428 INFO [galaxy.tool_util.verify] ## files diff on '/tmp/tmpaz27gu1ball_graphics_distribution.pdf' and '/tmp/tmphrnvqxzjall_graphics_distribution.pdf': lines_diff = 0, found diff = 4, found pdf invalid diff = 0 | |
| 876 <br/> -------------------------------Captured log call-------------------------------- <br/>DEBUG multipart.multipart:multipart.py:604 Calling on_field_start with no data | |
| 877 DEBUG multipart.multipart:multipart.py:601 Calling on_field_name with data[0:4] | |
| 878 DEBUG multipart.multipart:multipart.py:601 Calling on_field_data with data[5:149] | |
| 879 DEBUG multipart.multipart:multipart.py:604 Calling on_field_end with no data | |
| 880 DEBUG multipart.multipart:multipart.py:604 Calling on_end with no data<br/> ----------------------------Captured stderr teardown---------------------------- <br/>2022-05-30 16:40:19,530 INFO [test_driver] 21 threads were active before stopping embedded server | |
| 881 2022-05-30 16:40:19,530 INFO [test_driver] Shutting down embedded galaxy uvicorn server | |
| 882 2022-05-30 16:40:19,530 INFO [test_driver] Embedded web server galaxy stopped | |
| 883 2022-05-30 16:40:19,531 INFO [test_driver] Stopping embedded server thread | |
| 884 INFO: Shutting down | |
| 885 2022-05-30 16:40:19,532 INFO [uvicorn.error] Shutting down | |
| 886 INFO: Waiting for application shutdown. | |
| 887 2022-05-30 16:40:19,632 INFO [uvicorn.error] Waiting for application shutdown. | |
| 888 INFO: Application shutdown complete. | |
| 889 2022-05-30 16:40:19,633 INFO [uvicorn.error] Application shutdown complete. | |
| 890 INFO: Finished server process [39518] | |
| 891 2022-05-30 16:40:19,633 INFO [uvicorn.error] Finished server process [39518] | |
| 892 2022-05-30 16:40:19,633 INFO [test_driver] Event loop for uvicorn closed | |
| 893 2022-05-30 16:40:19,633 INFO [test_driver] Embedded server thread stopped | |
| 894 2022-05-30 16:40:19,634 INFO [test_driver] Stopping application galaxy | |
| 895 2022-05-30 16:40:20,509 INFO [galaxy.queue_worker] Sending reconfigure_watcher control task. | |
| 896 2022-05-30 16:40:20,524 INFO [galaxy.jobs.handler] sending stop signal to worker thread | |
| 897 2022-05-30 16:40:20,525 INFO [galaxy.jobs.handler] job handler queue stopped | |
| 898 2022-05-30 16:40:20,525 INFO [galaxy.jobs.runners] LocalRunner: Sending stop signal to 4 job worker threads | |
| 899 2022-05-30 16:40:20,525 INFO [galaxy.jobs.runners] Waiting up to 5 seconds for job worker threads to shutdown... | |
| 900 2022-05-30 16:40:20,526 INFO [galaxy.jobs.runners] All job worker threads shutdown cleanly | |
| 901 2022-05-30 16:40:20,526 INFO [galaxy.jobs.runners] TaskRunner: Sending stop signal to 2 job worker threads | |
| 902 2022-05-30 16:40:20,526 INFO [galaxy.jobs.runners] Waiting up to 5 seconds for job worker threads to shutdown... | |
| 903 2022-05-30 16:40:20,800 INFO [galaxy.jobs.runners] All job worker threads shutdown cleanly | |
| 904 2022-05-30 16:40:20,801 INFO [galaxy.jobs.handler] sending stop signal to worker thread | |
| 905 2022-05-30 16:40:20,801 INFO [galaxy.jobs.handler] job handler stop queue stopped | |
| 906 2022-05-30 16:40:20,802 INFO [test_driver] Application galaxy stopped. | |
| 907 2022-05-30 16:40:20,803 INFO [test_driver] 2 active after stopping embedded server | |
| 908 <br/> -----------------------------Captured log teardown------------------------------ <br/>INFO test_driver:driver_util.py:747 21 threads were active before stopping embedded server | |
| 909 INFO test_driver:driver_util.py:755 Shutting down embedded galaxy uvicorn server | |
| 910 INFO test_driver:driver_util.py:757 Embedded web server galaxy stopped | |
| 911 INFO test_driver:driver_util.py:760 Stopping embedded server thread | |
| 912 INFO uvicorn.error:server.py:252 Shutting down | |
| 913 INFO uvicorn.error:on.py:64 Waiting for application shutdown. | |
| 914 INFO uvicorn.error:on.py:75 Application shutdown complete. | |
| 915 INFO uvicorn.error:server.py:85 Finished server process [39518] | |
| 916 INFO test_driver:driver_util.py:587 Event loop for uvicorn closed | |
| 917 INFO test_driver:driver_util.py:762 Embedded server thread stopped | |
| 918 INFO test_driver:driver_util.py:765 Stopping application galaxy | |
| 919 INFO test_driver:driver_util.py:767 Application galaxy stopped. | |
| 920 INFO test_driver:driver_util.py:769 2 active after stopping embedded server<br/></div></td></tr></tbody></table></body></html> |
