Megatest

Check-in [beab5c0392]
Login
Overview
Comment:do a complete update of tests_meta at the start of each run
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.55 | v1.5513
Files: files | file ages | folders
SHA1: beab5c03920bcd86bb85e1b17e4f1cd8fa340897
User & Date: mrwellan on 2013-10-25 14:02:34
Other Links: branch diff | manifest | tags
Context
2013-10-28
16:40
Added beginings of a test for speed, fixed couple minor bugs check-in: 39cf82c3af user: mrwellan tags: v1.55
2013-10-25
14:02
do a complete update of tests_meta at the start of each run check-in: beab5c0392 user: mrwellan tags: v1.55, v1.5513
2013-10-24
18:10
Fixed -update-meta check-in: 2057d3d239 user: mrwellan tags: v1.55, v1.5513
Changes

Modified runs.scm from [fe131639e3] to [b82cab12fb].

224
225
226
227
228
229
230



231
232
233
234
235
236
237
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240







+
+
+







	(begin
	  ;; 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.
	  (cdb:delete-tests-in-state *runremote* run-id "NOT_STARTED")
	  (cdb:remote-run db:set-tests-state-status #f run-id test-names #f "FAIL" "NOT_STARTED" "FAIL")))

    ;; Ensure all tests are registered in the test_meta table
    (open-run-close runs:update-all-test_meta #f)

    ;; now add non-directly referenced dependencies (i.e. waiton)
    ;;======================================================================
    ;; refactoring this block into tests:get-full-data
    ;;
    ;; What happended, this code is now duplicated in tests!?
    ;;
978
979
980
981
982
983
984





985
986
987
988
989
990
991
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999







+
+
+
+
+







    (setenv "MT_ITEMPATH"  item-path)
    (setenv "MT_RUNNAME"   runname)
    (set-megatest-env-vars run-id inrunname: runname) ;; these may be needed by the launching process
    (change-directory *toppath*)

    ;; Here is where the test_meta table is best updated
    ;; Yes, another use of a global for caching. Need a better way?
    ;;
    ;; There is now a single call to runs:update-all-test_meta and this 
    ;; per-test call is not needed. Given the delicacy of the move to 
    ;; v1.55 this code is being left in place for the time being.
    ;;
    (if (not (hash-table-ref/default *test-meta-updated* test-name #f))
        (begin
	   (hash-table-set! *test-meta-updated* test-name #t)
           (runs:update-test_meta test-name test-conf)))
    
    ;; itemdat => ((ripeness "overripe") (temperature "cool") (season "summer"))
    (let* ((new-test-path (string-intersperse (cons test-path (map cadr itemdat)) "/"))