1# 2007 November 23 2# 3# May you do good and not evil. 4# May you find forgiveness for yourself and forgive others. 5# May you share freely, never taking more than you give. 6# 7#*********************************************************************** 8# This file runs all tests. 9# 10# $Id: fts3.test,v 1.2 2008/07/23 18:17:32 drh Exp $ 11 12set testdir [file dirname $argv0] 13source $testdir/tester.tcl 14set testprefix fts3varint 15 16ifcapable !fts3 { 17 finish_test 18 return 19} 20 21proc test_list {list} { 22 foreach n $list { fts3_test_varint $n } 23} 24 25proc do_fts3_varint_test {tn list} { 26 uplevel [list do_test $tn [list test_list $list] {}] 27} 28 29do_fts3_varint_test 1.0 { 30 1 10 100 1000 10000 100000 1000000 31 10000000 100000000 1000000000 10000000000 32 100000000000 1000000000000 10000000000000 33} 34 35do_fts3_varint_test 1.1 { 36 -1 -10 -100 -1000 -10000 -100000 -1000000 37 -10000000 -100000000 -1000000000 -10000000000 38 -100000000000 -1000000000000 -10000000000000 39} 40 41do_fts3_varint_test 2.0 { 0 1 2 } 42do_fts3_varint_test 2.1 { 1 2 3 } 43do_fts3_varint_test 2.2 { 3 4 5 } 44do_fts3_varint_test 2.3 { 7 8 9 } 45do_fts3_varint_test 2.4 { 15 16 17 } 46do_fts3_varint_test 2.5 { 31 32 33 } 47do_fts3_varint_test 2.6 { 63 64 65 } 48do_fts3_varint_test 2.7 { 127 128 129 } 49do_fts3_varint_test 2.8 { 255 256 257 } 50do_fts3_varint_test 2.9 { 511 512 513 } 51do_fts3_varint_test 2.10 { 1023 1024 1025 } 52do_fts3_varint_test 2.11 { 2047 2048 2049 } 53do_fts3_varint_test 2.12 { 4095 4096 4097 } 54do_fts3_varint_test 2.13 { 8191 8192 8193 } 55do_fts3_varint_test 2.14 { 16383 16384 16385 } 56do_fts3_varint_test 2.15 { 32767 32768 32769 } 57do_fts3_varint_test 2.16 { 65535 65536 65537 } 58do_fts3_varint_test 2.17 { 131071 131072 131073 } 59do_fts3_varint_test 2.18 { 262143 262144 262145 } 60do_fts3_varint_test 2.19 { 524287 524288 524289 } 61do_fts3_varint_test 2.20 { 1048575 1048576 1048577 } 62do_fts3_varint_test 2.21 { 2097151 2097152 2097153 } 63do_fts3_varint_test 2.22 { 4194303 4194304 4194305 } 64do_fts3_varint_test 2.23 { 8388607 8388608 8388609 } 65do_fts3_varint_test 2.24 { 16777215 16777216 16777217 } 66do_fts3_varint_test 2.25 { 33554431 33554432 33554433 } 67do_fts3_varint_test 2.26 { 67108863 67108864 67108865 } 68do_fts3_varint_test 2.27 { 134217727 134217728 134217729 } 69do_fts3_varint_test 2.28 { 268435455 268435456 268435457 } 70do_fts3_varint_test 2.29 { 536870911 536870912 536870913 } 71do_fts3_varint_test 2.30 { 1073741823 1073741824 1073741825 } 72do_fts3_varint_test 2.31 { 2147483647 2147483648 2147483649 } 73do_fts3_varint_test 2.32 { 4294967295 4294967296 4294967297 } 74do_fts3_varint_test 2.33 { 8589934591 8589934592 8589934593 } 75do_fts3_varint_test 2.34 { 17179869183 17179869184 17179869185 } 76do_fts3_varint_test 2.35 { 34359738367 34359738368 34359738369 } 77do_fts3_varint_test 2.36 { 68719476735 68719476736 68719476737 } 78do_fts3_varint_test 2.37 { 137438953471 137438953472 137438953473 } 79do_fts3_varint_test 2.38 { 274877906943 274877906944 274877906945 } 80do_fts3_varint_test 2.39 { 549755813887 549755813888 549755813889 } 81do_fts3_varint_test 2.40 { 1099511627775 1099511627776 1099511627777 } 82do_fts3_varint_test 2.41 { 2199023255551 2199023255552 2199023255553 } 83do_fts3_varint_test 2.42 { 4398046511103 4398046511104 4398046511105 } 84do_fts3_varint_test 2.43 { 8796093022207 8796093022208 8796093022209 } 85do_fts3_varint_test 2.44 { 17592186044415 17592186044416 17592186044417 } 86do_fts3_varint_test 2.45 { 35184372088831 35184372088832 35184372088833 } 87do_fts3_varint_test 2.46 { 70368744177663 70368744177664 70368744177665 } 88do_fts3_varint_test 2.47 { 140737488355327 140737488355328 140737488355329 } 89do_fts3_varint_test 2.48 { 281474976710655 281474976710656 281474976710657 } 90do_fts3_varint_test 2.49 { 562949953421311 562949953421312 562949953421313 } 91do_fts3_varint_test 2.50 { 1125899906842623 1125899906842624 1125899906842625 } 92do_fts3_varint_test 2.51 { 2251799813685247 2251799813685248 2251799813685249 } 93do_fts3_varint_test 2.52 { 4503599627370495 4503599627370496 4503599627370497 } 94do_fts3_varint_test 2.53 { 9007199254740991 9007199254740992 9007199254740993 } 95do_fts3_varint_test 2.54 { 96 18014398509481983 18014398509481984 18014398509481985 } 97do_fts3_varint_test 2.55 { 98 36028797018963967 36028797018963968 36028797018963969 } 99do_fts3_varint_test 2.56 { 100 72057594037927935 72057594037927936 72057594037927937 } 101do_fts3_varint_test 2.57 { 102 144115188075855871 144115188075855872 144115188075855873 } 103do_fts3_varint_test 2.58 { 104 288230376151711743 288230376151711744 288230376151711745 } 105do_fts3_varint_test 2.59 { 106 576460752303423487 576460752303423488 576460752303423489 } 107do_fts3_varint_test 2.60 { 108 1152921504606846975 1152921504606846976 1152921504606846977 } 109do_fts3_varint_test 2.61 { 110 2305843009213693951 2305843009213693952 2305843009213693953 } 111do_fts3_varint_test 2.62 { 112 4611686018427387903 4611686018427387904 4611686018427387905 } 113 114if {![catch {fts3_test_varint 18446744073709551615}]} { 115 do_fts3_varint_test 2.63 { 116 9223372036854775807 9223372036854775808 9223372036854775809 } 117 118 do_fts3_varint_test 3.0 { 18446744073709551615 -18446744073709551615 } 119} 120 121finish_test 122