Megatest

Check-in [51699c5ffe]
Login
Overview
Comment:cleaned up simplerun test case
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | test-specific-db
Files: files | file ages | folders
SHA1: 51699c5ffe676e8f50c0803910c5a40cab23572e
User & Date: mrwellan on 2012-10-04 15:42:18
Other Links: branch diff | manifest | tags
Context
2012-10-04
16:17
Merged with earlier edits check-in: 902282795a user: matt tags: test-specific-db
15:42
cleaned up simplerun test case check-in: 51699c5ffe user: mrwellan tags: test-specific-db
14:09
Couple minor improvemts to the launch loop and db calls check-in: d7e5bba155 user: mrwellan tags: test-specific-db
Changes

Modified tests/Makefile from [c1ec175c9b] to [46cfd15912].

9
10
11
12
13
14
15

16
17
18
19
20
21

22
23
24
25
26
27
28
9
10
11
12
13
14
15
16
17
18
19
20
21

22
23
24
25
26
27
28
29







+





-
+







SERVER := 
DEBUG  := 1

all : test1 test2 test3 test4 test5

test1 : cleanprep
	rm -f simplerun/megatest.db
	rm -rf simplelinks/ simpleruns/
	mkdir -p simplelinks simpleruns
	cd simplerun;cp ../../*_records.scm .;perl -pi.bak -e 's/define-inline/define/' *_records.scm
	cd simplerun;echo '(load "../tests.scm")' | $(MEGATEST) -repl -debug $(DEBUG)

test2 : fullprep
	cd fullrun;$(MEGATEST) -runtests ez_pass -reqtarg ubuntu/nfs/none :runname $(RUNNAME)_a $(SERVER)
	cd fullrun;$(MEGATEST) -runtests ez_pass,runfirst -reqtarg ubuntu/nfs/none -itempatt a/1 :runname $(RUNNAME)_a $(SERVER)

test3 : fullprep
	cd fullrun;$(MEGATEST) -runtests runfirst -reqtarg ubuntu/nfs/none :runname $(RUNNAME)_b  $(SERVER) -debug 10

test4 : fullprep
	cd fullrun;$(MEGATEST) $(SERVER) &
	cd fullrun;sleep 5;$(MEGATEST) -debug $(DEBUG) -runall -reqtarg ubuntu/nfs/none :runname $(RUNNAME)_b -m "This is a comment specific to a run" -v

Modified tests/simplerun/megatest.config from [a73caa58ab] to [3fbc57ac34].

1
2
3
4
5
6
7
8
9
10

11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

1
2
3
4
5
6
7
8
9

10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

27









-
+
















-
+
[fields]
SYSTEM TEXT
RELEASE TEXT

[setup]
# Adjust max_concurrent_jobs to limit how much you load your machines
max_concurrent_jobs 50

# This is your link path, you can move it but it is generally better to keep it stable
linktree #{getenv PWD}/../simplelinks
linktree #{shell realpath #{getenv PWD}/../simplelinks}

# Valid values for state and status for steps, NB// It is not recommended you use this
[validvalues]
state start end completed

# Job tools are more advanced ways to control how your jobs are launched
[jobtools]
useshell yes
launcher nbfind

# You can override environment variables for all your tests here
[env-override]
EXAMPLE_VAR example value

# As you run more tests you may need to add additional disks, the names are arbitrary but must be unique
[disks]
disk0 #{getenv PWD}/../simpleruns
disk0 #{shell realpath #{getenv PWD}/../simpleruns}

Modified tests/simplerun/tests/test1/step1.sh from [67f9a133dc] to [a96d5c2635].

1
2
3

1
2
3
4



+
#!/usr/bin/env bash

# Run your step here
echo Got here!

Modified tests/simplerun/tests/test1/step2.sh from [67f9a133dc] to [b3e19b3724].

1
2
3


1
2
3
4
5



+
+
#!/usr/bin/env bash

# Run your step here
echo Got here eh!

Modified tests/tests.scm from [2e6377ff4f] to [e5e4720537].

128
129
130
131
132
133
134
135

136
137
138
139
140

141
142
143
144
145
146
147

148
149
150


151
152

153

154
155

156




157

158
159

160
161
162
163
164
165
128
129
130
131
132
133
134

135
136
137
138
139

140
141
142
143
144
145
146

147
148


149
150
151
152
153

154
155

156
157
158
159
160
161

162
163

164



165
166
167







-
+




-
+






-
+

-
-
+
+


+
-
+

-
+

+
+
+
+
-
+

-
+
-
-
-



(test #f #t (let ((db (open-test-db testdbpath)))
	      (set! *tdb* db)
	      (sqlite3#database? db)))
(sqlite3#finalize! *tdb*)

;; (test "Remove the rollup run" #t (begin (remove-runs) #t))

(set! *verbosity* 20)
;; (set! *verbosity* 20)
(test "Run a test" #t (general-run-call 
		       "-runtests" 
		       "run a test"
		       (lambda (target runname keys keynames keyvallst)
			 (let ((test-patts "test1"))
			 (let ((test-patts "test%"))
			   (runs:run-tests target runname test-patts user (make-hash-table))
			   ))))

(change-directory test-work-dir)
(test "Add a step"  #t
      (begin
	(db:teststep-set-status! db 1 "step1" "start" 0 "This is a comment" "mylogfile.html")
	(db:teststep-set-status! db 2 "step1" "start" 0 "This is a comment" "mylogfile.html")
	(sleep 2)
	(db:teststep-set-status! db 1 "step1" "end" "pass" "This is a different comment" "finallogfile.html")
	(set! test-id (db:test-get-id (car (db:get-tests-for-run db 1 "test1" "" '() '()))))
	(db:teststep-set-status! db 2 "step1" "end" "pass" "This is a different comment" "finallogfile.html")
	(set! test-id (db:test-get-id (car (db:get-tests-for-run db 2 "test1" "" '() '()))))
	(number? test-id)))

(sleep 5)
(test "Get nice table for steps" "2.0s"
(test "Get nice table for steps" "2s"
      (begin
	(vector-ref (hash-table-ref (db:get-steps-table db test-id) "test1") 4)))
	(vector-ref (hash-table-ref (db:get-steps-table db test-id) "step1") 4)))

(test "Rollup the run(s)" #t (begin
			       (runs:rollup-run keys (keys->alist keys "na") "rollup" "matt")
			       #t))

(hash-table-set! args:arg-hash ":runname" "rollup")
(hash-table-set! args:arg-hash ":runname" "%")

(test "Remove the rollup run" #t (begin (remove-runs) #t))
(test "Remove the rollup run" #t (begin (operate-on 'remove-runs)))
(test "Rollup the run(s)" #t (begin
			       (runs:rollup-run db keys)
			       #t))

;; ADD ME!!!! (db:get-prereqs-not-met *db* 1 '("runfirst") "" mode: 'normal)
;; ADD ME!!!! (rdb:get-tests-for-run *db* 1 "runfirst" #f '() '())