Megatest

Diff
Login

Differences From Artifact [08123e62ac]:

To Artifact [dff7b1b281]:


265
266
267
268
269
270
271
272


273
274
275
276
277
278
279
265
266
267
268
269
270
271

272
273
274
275
276
277
278
279
280







-
+
+







	    (let ((remtests (delete-duplicates (append waitons tal))))
	      (if (not (null? remtests))
		  (loop (car remtests)(cdr remtests)))))))

    (if (not (null? required-tests))
	(debug:print 1 "INFO: Adding " required-tests " to the run queue"))
    ;; NOTE: these are all parent tests, items are not expanded yet.
    (runs:run-tests-queue db run-id runname test-records keyvallst flags)))
    (runs:run-tests-queue db run-id runname test-records keyvallst flags)
    (debug:print 4 "INFO: All done by here")))

(define (runs:run-tests-queue db run-id runname test-records keyvallst flags)
    ;; At this point the list of parent tests is expanded 
    ;; NB// Should expand items here and then insert into the run queue.
  (debug:print 5 "test-records: " test-records ", keyvallst: " keyvallst)
  (let ((sorted-test-names (tests:sort-by-priority-and-waiton test-records))
	(item-patts        (hash-table-ref/default flags "-itempatt" #f)))
361
362
363
364
365
366
367


368


369
370
371
372
373
374
375
362
363
364
365
366
367
368
369
370

371
372
373
374
375
376
377
378
379







+
+
-
+
+







	 ;; this case should not happen, added to help catch any bugs
	 ((and (list? items) itemdat)
	  (debug:print 0 "ERROR: Should not have a list of items in a test and the itemspath set - please report this")
	  (exit 1))))
	
      ;; we get here on "drop through" - loop for next test in queue
      (if (null? tal)
	  (begin
	    ;; FIXME!!!! THIS SHOULD NOT REQUIRE AN EXIT!!!!!!!
	  (debug:print 1 "INFO: All tests launched")
	    (debug:print 1 "INFO: All tests launched, exiting")
	    (exit 0))
	  (loop (car tal)(cdr tal))))))

;; parent-test is there as a placeholder for when parent-tests can be run as a setup step
(define (run:test db run-id runname keyvallst test-record flags parent-test)
  ;; All these vars might be referenced by the testconfig file reader
  (let* ((test-name    (tests:testqueue-get-testname   test-record))
	 (test-waitons (tests:testqueue-get-waitons    test-record))