10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
-
+
-
+
-
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
|
;; (fails (runs:calc-fails prereqs-not-met))
;; (prereq-fails (runs:calc-prereq-fail prereqs-not-met))
;; (non-completed (runs:calc-not-completed prereqs-not-met))
;; (runnables (runs:calc-runnable prereqs-not-met)))
;;
;;
;;
(define user (current-user-name))
(define runname "mytestrun")
(define keys (rmt:get-keys))
(define runinfo #f)
(define keyvals '(("SYSTEM" "abc")("RELEASE" "def")))
(define header (list "SYSTEM" "RELEASE" "id" "runname" "state" "status" "owner" "event_time"))
(define contour #f)
(define run-id 1)
(define new-comment #f)
;; Create a run
(test #f 1 (rmt:register-run keyvals runname "new" "n/a" user))
(test #f 1 (rmt:register-run keyvals runname "new" "n/a" user contour))
(test #f #t (rmt:general-call 'register-test run-id run-id "test-one" ""))
(test #f #t (rmt:general-call 'register-test run-id run-id "test-two" ""))
(test #f #t (rmt:general-call 'register-test run-id run-id "test-three" ""))
(test #f #t (rmt:general-call 'register-test run-id run-id "test-four" ""))
;; (define (rmt:test-set-state-status-by-id run-id test-id newstate newstatus newcomment)
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-one" "") "COMPLETED" "FAIL" "")
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-two" "") "COMPLETED" "PASS" "")
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-three" "") "RUNNING" "n/a" "")
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-four" "") "COMPLETED" "WARN" "")
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-one" "") "COMPLETED" "FAIL" new-comment)
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-two" "") "COMPLETED" "PASS" new-comment)
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-three" "") "RUNNING" "n/a" new-comment)
(rmt:test-set-state-status-by-id run-id (rmt:get-test-id run-id "test-four" "") "COMPLETED" "WARN" new-comment)
(print "MODE=not in")
(test #f '()
(test "MODE=not in"
'()
(filter
(lambda (y)
(equal? y "FAIL")) ;; any FAIL in the output list?
(map
(lambda (x)(vector-ref x 4))
(rmt:get-tests-for-run run-id "%/%" '() '("FAIL") #f #f #t 'event_time "DESC" 'shortlist 0 'dashboard))))
(print "MODE=in")
(test #f '("FAIL")
(test "MODE=in"
'("FAIL")
(map
(lambda (x)(vector-ref x 4))
(rmt:get-tests-for-run run-id "%/%" '() '("FAIL") #f #f #f 'event_time "DESC" 'shortlist 0 'dashboard)))
(set! *verbosity* 1)
(print "MODE=in, state in RUNNING")
;; (set! *verbosity* 8)
(test #f '("RUNNING")
(test "MODE=in, state in RUNNING" '("RUNNING")
(map
(lambda (x)(vector-ref x 3))
(rmt:get-tests-for-run run-id "%/%" '("RUNNING") '() #f #f #f 'event_time "DESC" 'shortlist 0 'dashboard)))
(set! *verbosity* 1)
(print "MODE=in, state in RUNNING and status IN WARN")
;; (set! *verbosity* 8)
;;(define (rmt:get-tests-for-run run-id testpatt states statuses offset limit not-in sort-by sort-order qryvals last-update mode)
(test
"MODE=in, state in RUNNING and status IN WARN"
(test #f '(("RUNNING" . "n/a") ("COMPLETED" . "WARN"))
(map
(lambda (x)
(cons (vector-ref x 3)(vector-ref x 4)))
(rmt:get-tests-for-run run-id "%/%" '("RUNNING") '("WARN") #f #f #f 'event_time "DESC" 'shortlist 0 'dashboard)))
'(("COMPLETED" . "WARN") ("RUNNING" . "n/a") )
(map
(lambda (x)
(cons (vector-ref x 3)(vector-ref x 4)))
(rmt:get-tests-for-run run-id "%/%" '("RUNNING") '("WARN") #f #f #f 'event_time "DESC" 'shortlist 0 'dashboard)))
(set! *verbosity* 1)
(print "MODE=not in, state in RUNNING and status IN WARN")
(set! *verbosity* 8)
(test "MODE=not in, state in RUNNING and status IN WARN"
(test #f '(("DELETED" . "n/a") ("COMPLETED" . "PASS") ("COMPLETED" . "FAIL"))
'(("COMPLETED" . "PASS") ("COMPLETED" . "FAIL"))
(map
(lambda (x)
(cons (vector-ref x 3)(vector-ref x 4)))
(rmt:get-tests-for-run run-id "%/%" '("RUNNING") '("WARN") #f #f #t 'event_time "DESC" 'shortlist 0 'dashboard)))
(set! *verbosity* 1)
(exit)
|