Overview
Comment: | Partial implemenation of correct rerun behaviour |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | rerun-behavior-fixes |
Files: | files | file ages | folders |
SHA1: |
f9f3796ce31df8e613f584a41b48f6fb |
User & Date: | mrwellan on 2014-10-23 18:26:24 |
Other Links: | branch diff | manifest | tags |
Context
2014-10-23
| ||
23:53 | Merged v1.60 Closed-Leaf check-in: db227d3471 user: matt tags: rerun-behavior-fixes | |
18:26 | Partial implemenation of correct rerun behaviour check-in: f9f3796ce3 user: mrwellan tags: rerun-behavior-fixes | |
09:17 | Added error handler for dashboard where it looks for recent accesses to db check-in: 46182ccbf0 user: mrwellan tags: v1.60 | |
Changes
Modified db.scm from [5aaa9292b2] to [69fe2b8740].
︙ | |||
1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 | 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 | + + + + - + - - - + | (sqlite3:execute (db:get-db dbstruct run-id) "DELETE FROM tests WHERE state='DELETED' AND event_time<?;" targtime)) run-ids))) ;; set tests with state currstate and status currstatus to newstate and newstatus ;; use currstate = #f and or currstatus = #f to apply to any state or status respectively ;; WARNING: SQL injection risk. NB// See new but not yet used "faster" version below ;; ;; AND NOT (item_path='' AND testname in (SELECT DISTINCT testname FROM tests WHERE testname=? AND item_path != ''));"))) ;;(debug:print 0 "QRY: " qry) ;; (db:delay-if-busy) (define (db:set-tests-state-status dbstruct run-id testnames currstate currstatus newstate newstatus) (for-each (lambda (testname) (let ((qry (conc "UPDATE tests SET state=?,status=? WHERE " (if currstate (conc "state='" currstate "' AND ") "") (if currstatus (conc "status='" currstatus "' AND ") "") |
︙ |
Modified runs.scm from [0a93b5efd0] to [305bca0ebf].
︙ | |||
247 248 249 250 251 252 253 254 255 256 257 258 | 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 | + + + + + + + + - - + + - | (debug:print-info 0 "all tests: " (string-intersperse (sort all-test-names string<) " ")) (debug:print-info 0 "test names: " (string-intersperse (sort test-names string<) " ")) ;; on the first pass or call to run-tests set FAILS to NOT_STARTED if ;; -keepgoing is specified (if (eq? *passnum* 0) (begin ;; Is this still necessary? I think not. Unreachable tests are marked as such and ;; should not cause problems here. ;; ;; have to delete test records where NOT_STARTED since they can cause -keepgoing to ;; get stuck due to becoming inaccessible from a failed test. I.e. if test B depends ;; on test A but test B reached the point on being registered as NOT_STARTED and test ;; A failed for some reason then on re-run using -keepgoing the run can never complete. ;; ;; (rmt:general-call 'delete-tests-in-state run-id "NOT_STARTED") ;; Now convert FAIL and anything in allow-auto-rerun to NOT_STARTED ;; (for-each (lambda (state) |
︙ |