Megatest

Check-in [2dea6425cc]
Login
Overview
Comment:corrected typo and wrong var reference in csv handling
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 2dea6425ccaf7bc8d1ea7d726b0cb3057e3a068e
User & Date: mrwellan on 2011-09-14 11:07:18
Other Links: manifest | tags
Context
2011-09-20
22:28
Snapshot of partially updated docs, transition to new template check-in: e74b5093a5 user: matt tags: trunk
2011-09-14
11:07
corrected typo and wrong var reference in csv handling check-in: 2dea6425cc user: mrwellan tags: trunk
2011-09-13
14:09
Fixed handling of test data rollup when status is a null or n/a string check-in: c22c4fd813 user: mrwellan tags: trunk, v1.25
Changes

Modified db.scm from [4dd82448eb] to [7de3dfb95e].

519
520
521
522
523
524
525
526

527
528
529
530
531
532
533
534
535
536

537
538

539
540
541
542
543
544
545
519
520
521
522
523
524
525

526
527
528
529
530
531
532
533
534
535

536
537

538
539
540
541
542
543
544
545







-
+









-
+

-
+







  (debug:print 4 "test-id " test-id ", csvdata: " csvdata)
  (let ((csvlist (csv->list (make-csv-reader
			     (open-input-string csvdata)
			     '((strip-leading-whitespace? #t)
			       (strip-trailing-whitespace? #t)) )))) ;; (csv->list csvdata)))
    (for-each 
     (lambda (csvrow)
       (let* ((padded-row  (take (append csvrow '(#f #f #f #f #f #f #f #f)) 8))
       (let* ((padded-row  (take (append csvrow (list #f #f #f #f #f #f #f #f)) 8))
	      (category    (list-ref padded-row 0))
	      (variable    (list-ref padded-row 1))
	      (value       (any->number-if-possible (list-ref padded-row 2)))
	      (expected    (any->number-if-possible (list-ref padded-row 3)))
	      (tol         (any->number-if-possible (list-ref padded-row 4))) ;; >, <, >=, <=, or a number
	      (units       (list-ref padded-row 5))
	      (comment     (list-ref padded-row 6))
	      (status      (let ((s (list-ref padded-row 7)))
			     (if (and (string? s)(or (string-match (regexp "^\\s*$") s)
						     (string-match (regexp "^n/a$"))))
						     (string-match (regexp "^n/a$") s)))
				 #f
				 status)))) ;; if specified on the input then use, else calculate
				 s)))) ;; if specified on the input then use, else calculate
	 ;; look up expected,tol,units from previous best fit test if they are all either #f or ''
	 (if (and (or (not expected)(equal? expected ""))
		  (or (not tol)     (equal? expected ""))
		  (or (not units)   (equal? expected "")))
	     (let-values (((new-expected new-tol new-units)(db:get-prev-tol-for-test db test-id category variable)))
	       (set! expected new-expected)
	       (set! tol      new-tol)