Artifact
a573e1a6563b33919e76b0365a9bd6c1638ed8e2 :
Executable file
tests/fullrun/tests/sqlitespeed/runscript.rb
— part of check-in
[a24a1b2335]
at
2012-04-23 09:27:34
on branch extend-test-get-path
— Updated path due to move of tests
(user:
mrwellan
size: 1248)
[more...]
0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20 #! /usr/bin/env
0010: 72 75 62 79 0a 0a 72 65 71 75 69 72 65 20 22 23 ruby..require "#
0020: 7b 45 4e 56 5b 27 4d 54 5f 52 55 4e 5f 41 52 45 {ENV['MT_RUN_ARE
0030: 41 5f 48 4f 4d 45 27 5d 7d 2f 2e 2e 2f 73 75 70 A_HOME']}/../sup
0040: 70 6f 72 74 66 69 6c 65 73 2f 72 75 62 79 2f 6c portfiles/ruby/l
0050: 69 62 72 75 6e 73 63 72 69 70 74 2e 72 62 22 0a ibrunscript.rb".
0060: 0a 23 20 72 75 6e 5f 72 65 63 6f 72 64 28 73 74 .# run_record(st
0070: 65 70 6e 61 6d 65 2c 20 63 6d 64 29 20 2d 20 77 epname, cmd) - w
0080: 69 6c 6c 20 72 65 63 6f 72 64 20 69 6e 20 64 62 ill record in db
0090: 20 69 66 20 65 78 69 74 20 63 6f 64 65 20 6f 66 if exit code of
00a0: 20 73 63 72 69 70 74 20 77 61 73 20 7a 65 72 6f script was zero
00b0: 20 6f 72 20 6e 6f 74 0a 72 75 6e 5f 61 6e 64 5f or not.run_and_
00c0: 72 65 63 6f 72 64 28 27 63 72 65 61 74 65 20 64 record('create d
00d0: 62 27 2c 22 73 71 6c 69 74 65 33 20 74 65 73 74 b',"sqlite3 test
00e0: 69 6e 67 2e 64 62 20 3c 3c 20 45 4f 46 5c 6e 63 ing.db << EOF\nc
00f0: 72 65 61 74 65 20 74 61 62 6c 65 20 69 66 20 6e reate table if n
0100: 6f 74 20 65 78 69 73 74 73 20 62 6c 61 68 28 69 ot exists blah(i
0110: 64 20 49 4e 54 45 47 45 52 20 50 52 49 4d 41 52 d INTEGER PRIMAR
0120: 59 20 4b 45 59 2c 6e 61 6d 65 20 54 45 58 54 29 Y KEY,name TEXT)
0130: 3b 5c 6e 2e 71 5c 6e 45 4f 46 22 2c 22 22 29 0a ;\n.q\nEOF","").
0140: 0a 69 66 20 28 21 20 46 69 6c 65 2e 65 78 69 73 .if (! File.exis
0150: 74 73 3f 28 22 2e 2e 2f 2e 2e 2f 72 75 6e 66 69 ts?("../../runfi
0160: 72 73 74 2f 49 5f 77 61 73 5f 68 65 72 65 22 29 rst/I_was_here")
0170: 29 0a 20 20 20 20 70 75 74 73 20 22 45 52 52 4f ). puts "ERRO
0180: 52 3a 20 54 68 69 73 20 74 65 73 74 20 77 61 73 R: This test was
0190: 20 73 74 61 72 74 65 64 20 62 65 66 6f 72 65 20 started before
01a0: 74 68 65 20 70 72 65 72 65 71 75 69 73 69 74 65 the prerequisite
01b0: 73 20 72 61 6e 21 22 0a 20 20 20 20 73 79 73 74 s ran!". syst
01c0: 65 6d 20 22 6d 65 67 61 74 65 73 74 20 2d 74 65 em "megatest -te
01d0: 73 74 2d 73 74 61 74 75 73 20 3a 73 74 61 74 65 st-status :state
01e0: 20 49 4e 43 4f 4d 50 4c 45 54 45 20 3a 73 74 61 INCOMPLETE :sta
01f0: 74 75 73 20 46 41 49 4c 22 0a 20 20 20 20 65 78 tus FAIL". ex
0200: 69 74 20 31 0a 65 6e 64 0a 0a 23 20 66 69 6c 65 it 1.end..# file
0210: 5f 73 69 7a 65 5f 63 68 65 63 6b 65 72 28 73 74 _size_checker(st
0220: 65 70 6e 61 6d 65 2c 20 66 69 6c 65 6e 61 6d 65 epname, filename
0230: 2c 20 6d 69 6e 73 69 7a 65 2c 20 6d 61 78 73 69 , minsize, maxsi
0240: 7a 65 29 20 2d 20 6e 65 67 61 74 69 76 65 20 6d ze) - negative m
0250: 65 61 6e 73 20 69 67 6e 6f 72 65 0a 23 20 66 69 eans ignore.# fi
0260: 6c 65 5f 73 69 7a 65 5f 63 68 65 63 6b 65 72 28 le_size_checker(
0270: 27 63 72 65 61 74 65 20 64 62 27 2c 27 74 65 73 'create db','tes
0280: 74 69 6e 67 2e 64 62 27 2c 31 30 30 2c 2d 31 29 ting.db',100,-1)
0290: 0a 0a 6e 75 6d 5f 72 65 63 6f 72 64 73 3d 72 61 ..num_records=ra
02a0: 6e 64 28 35 29 20 23 20 30 30 30 30 0a 72 65 63 nd(5) # 0000.rec
02b0: 6f 72 64 5f 73 74 65 70 28 22 61 64 64 20 23 7b ord_step("add #{
02c0: 6e 75 6d 5f 72 65 63 6f 72 64 73 7d 22 2c 22 73 num_records}","s
02d0: 74 61 72 74 22 2c 22 6e 2f 61 22 29 0a 73 74 61 tart","n/a").sta
02e0: 74 75 73 3d 66 61 6c 73 65 0a 28 30 2e 2e 6e 75 tus=false.(0..nu
02f0: 6d 5f 72 65 63 6f 72 64 73 29 2e 65 61 63 68 20 m_records).each
0300: 64 6f 20 7c 69 7c 0a 20 20 72 61 6e 64 73 74 72 do |i|. randstr
0310: 69 6e 67 3d 22 61 3b 6c 73 6b 64 66 6a 61 3b 73 ing="a;lskdfja;s
0320: 64 66 6a 3b 61 6c 73 64 66 6a 3b 61 73 6c 66 64 dfj;alsdfj;aslfd
0330: 6a 3b 61 6c 73 66 6a 61 3b 6c 73 66 64 6a 3b 61 j;alsfja;lsfdj;a
0340: 6c 73 66 6a 61 3b 6c 73 6a 66 64 3b 6c 61 73 66 lsfja;lsjfd;lasf
0350: 6a 6c 3b 61 73 64 66 6a 61 3b 73 6c 66 6a 3b 61 jl;asdfja;slfj;a
0360: 6c 73 6a 66 3b 61 73 6c 6a 66 3b 61 6c 73 6a 66 lsjf;asljf;alsjf
0370: 3b 6c 61 73 64 6a 66 3b 6c 61 73 6a 66 3b 6c 61 ;lasdjf;lasjf;la
0380: 73 6a 66 3b 61 6c 73 6a 66 3b 6c 61 73 68 66 6c sjf;alsjf;lashfl
0390: 6b 61 73 68 66 6c 6b 65 72 68 66 6c 6b 64 73 76 kashflkerhflkdsv
03a0: 6e 6c 61 73 6c 64 68 6c 66 61 6c 64 66 22 0a 20 nlasldhlfaldf".
03b0: 20 23 20 73 74 61 74 75 73 3d 73 79 73 74 65 6d # status=system
03c0: 20 22 73 71 6c 69 74 65 33 20 74 65 73 74 69 6e "sqlite3 testin
03d0: 67 2e 64 62 20 5c 22 69 6e 73 65 72 74 20 69 6e g.db \"insert in
03e0: 74 6f 20 62 6c 61 68 20 28 6e 61 6d 65 29 20 76 to blah (name) v
03f0: 61 6c 75 65 73 20 28 27 23 7b 72 61 6e 64 73 74 alues ('#{randst
0400: 72 69 6e 67 7d 27 29 3b 5c 22 22 0a 20 20 73 79 ring}');\"". sy
0410: 73 74 65 6d 20 22 6d 65 67 61 74 65 73 74 20 2d stem "megatest -
0420: 73 74 65 70 20 74 65 73 74 69 6e 67 20 3a 73 74 step testing :st
0430: 61 74 65 20 77 72 6f 74 65 5f 6a 75 6e 6b 20 3a ate wrote_junk :
0440: 73 74 61 74 75 73 20 23 7b 6e 75 6d 5f 72 65 63 status #{num_rec
0450: 6f 72 64 73 7d 22 0a 20 20 73 6c 65 65 70 28 35 ords}". sleep(5
0460: 29 0a 20 20 70 75 74 73 20 22 69 3d 23 7b 69 7d ). puts "i=#{i}
0470: 22 0a 65 6e 64 0a 69 66 20 73 74 61 74 75 73 3d ".end.if status=
0480: 3d 30 0a 20 20 73 74 61 74 75 73 3d 27 70 61 73 =0. status='pas
0490: 73 27 0a 65 6c 73 65 0a 20 20 73 74 61 74 75 73 s'.else. status
04a0: 3d 27 66 61 69 6c 27 0a 65 6e 64 0a 0a 72 65 63 ='fail'.end..rec
04b0: 6f 72 64 5f 73 74 65 70 28 22 61 64 64 20 23 7b ord_step("add #{
04c0: 6e 75 6d 5f 72 65 63 6f 72 64 73 7d 22 2c 22 65 num_records}","e
04d0: 6e 64 22 2c 73 74 61 74 75 73 29 0a 0a 0a 0a 0a nd",status).....