System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact 29ac0c6f966a21abddb269f843e1b7a5be1646c2:


0000: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0010: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0d  ###############.
0050: 0a 23 0d 0a 23 20 76 65 72 73 69 6f 6e 2e 65 61  .#..# version.ea
0060: 67 6c 65 20 2d 2d 0d 0a 23 0d 0a 23 20 57 72 69  gle --..#..# Wri
0070: 74 74 65 6e 20 62 79 20 4a 6f 65 20 4d 69 73 74  tten by Joe Mist
0080: 61 63 68 6b 69 6e 2e 0d 0a 23 20 52 65 6c 65 61  achkin...# Relea
0090: 73 65 64 20 74 6f 20 74 68 65 20 70 75 62 6c 69  sed to the publi
00a0: 63 20 64 6f 6d 61 69 6e 2c 20 75 73 65 20 61 74  c domain, use at
00b0: 20 79 6f 75 72 20 6f 77 6e 20 72 69 73 6b 21 0d   your own risk!.
00c0: 0a 23 0d 0a 23 23 23 23 23 23 23 23 23 23 23 23  .#..############
00d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0110: 23 23 23 0d 0a 0d 0a 70 61 63 6b 61 67 65 20 72  ###....package r
0120: 65 71 75 69 72 65 20 45 61 67 6c 65 0d 0a 70 61  equire Eagle..pa
0130: 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 45 61  ckage require Ea
0140: 67 6c 65 4c 69 62 72 61 72 79 0d 0a 70 61 63 6b  gleLibrary..pack
0150: 61 67 65 20 72 65 71 75 69 72 65 20 45 61 67 6c  age require Eagl
0160: 65 54 65 73 74 0d 0a 0d 0a 72 75 6e 54 65 73 74  eTest....runTest
0170: 50 72 6f 6c 6f 67 75 65 0d 0a 0d 0a 23 23 23 23  Prologue....####
0180: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0190: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
01a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
01b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
01c0: 23 23 23 23 23 23 23 23 23 23 23 0d 0a 0d 0a 70  ###########....p
01d0: 61 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 53  ackage require S
01e0: 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74  ystem.Data.SQLit
01f0: 65 2e 54 65 73 74 0d 0a 72 75 6e 53 51 4c 69 74  e.Test..runSQLit
0200: 65 54 65 73 74 50 72 6f 6c 6f 67 75 65 0d 0a 0d  eTestPrologue...
0210: 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  .###############
0220: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0230: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0240: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0250: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0260: 0d 0a 0d 0a 23 0d 0a 23 20 4e 4f 54 45 3a 20 46  ....#..# NOTE: F
0270: 6f 72 20 74 68 65 73 65 20 75 6e 69 74 20 74 65  or these unit te
0280: 73 74 73 20 74 6f 20 62 65 20 75 73 65 66 75 6c  sts to be useful
0290: 20 61 6e 64 20 61 63 63 75 72 61 74 65 2c 20 74   and accurate, t
02a0: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 65 72  he following ver
02b0: 73 69 6f 6e 0d 0a 23 20 20 20 20 20 20 20 6e 75  sion..#       nu
02c0: 6d 62 65 72 73 20 6d 75 73 74 20 62 65 20 6d 61  mbers must be ma
02d0: 6e 75 61 6c 6c 79 20 6b 65 70 74 20 73 79 6e 63  nually kept sync
02e0: 68 72 6f 6e 69 7a 65 64 20 77 69 74 68 20 74 68  hronized with th
02f0: 65 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72  e version number
0300: 73 20 66 6f 72 0d 0a 23 20 20 20 20 20 20 20 74  s for..#       t
0310: 68 65 20 62 69 6e 61 72 69 65 73 2e 0d 0a 23 0d  he binaries...#.
0320: 0a 73 65 74 20 76 65 72 73 69 6f 6e 28 6d 61 6a  .set version(maj
0330: 6f 72 29 20 20 20 20 20 31 0d 0a 73 65 74 20 76  or)     1..set v
0340: 65 72 73 69 6f 6e 28 6d 69 6e 6f 72 29 20 20 20  ersion(minor)   
0350: 20 20 30 0d 0a 73 65 74 20 76 65 72 73 69 6f 6e    0..set version
0360: 28 62 75 69 6c 64 29 20 20 20 20 37 36 0d 0a 73  (build)    76..s
0370: 65 74 20 76 65 72 73 69 6f 6e 28 72 65 76 69 73  et version(revis
0380: 69 6f 6e 29 20 20 30 0d 0a 0d 0a 23 23 23 23 23  ion)  0....#####
0390: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
03a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
03b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
03c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
03d0: 23 23 23 23 23 23 23 23 23 23 0d 0a 0d 0a 23 0d  ##########....#.
03e0: 0a 23 20 4e 4f 54 45 3a 20 42 75 69 6c 64 20 74  .# NOTE: Build t
03f0: 68 65 20 66 75 6c 6c 20 76 65 72 73 69 6f 6e 20  he full version 
0400: 6e 75 6d 62 65 72 20 66 6f 72 20 74 68 65 20 70  number for the p
0410: 72 6f 6a 65 63 74 20 75 73 69 6e 67 20 74 68 65  roject using the
0420: 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 73 65 74 0d   components set.
0430: 0a 23 20 20 20 20 20 20 20 61 62 6f 76 65 2e 20  .#       above. 
0440: 20 54 68 69 73 20 73 68 6f 75 6c 64 20 6e 6f 74   This should not
0450: 20 68 61 76 65 20 74 6f 20 62 65 20 63 68 61 6e   have to be chan
0460: 67 65 64 2e 0d 0a 23 0d 0a 73 65 74 20 76 65 72  ged...#..set ver
0470: 73 69 6f 6e 28 66 75 6c 6c 29 20 5b 61 70 70 65  sion(full) [appe
0480: 6e 64 41 72 67 73 20 24 76 65 72 73 69 6f 6e 28  ndArgs $version(
0490: 6d 61 6a 6f 72 29 20 2e 20 24 76 65 72 73 69 6f  major) . $versio
04a0: 6e 28 6d 69 6e 6f 72 29 20 2e 20 5c 0d 0a 20 20  n(minor) . \..  
04b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
04c0: 20 20 20 20 20 20 20 20 20 20 20 20 24 76 65 72              $ver
04d0: 73 69 6f 6e 28 62 75 69 6c 64 29 20 2e 20 24 76  sion(build) . $v
04e0: 65 72 73 69 6f 6e 28 72 65 76 69 73 69 6f 6e 29  ersion(revision)
04f0: 5d 0d 0a 0d 0a 23 23 23 23 23 23 23 23 23 23 23  ]....###########
0500: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0510: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0520: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0530: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0540: 23 23 23 23 0d 0a 0d 0a 23 0d 0a 23 20 4e 4f 54  ####....#..# NOT
0550: 45 3a 20 53 65 74 75 70 20 74 68 65 20 76 61 72  E: Setup the var
0560: 69 61 62 6c 65 73 20 74 68 61 74 20 72 65 66 65  iables that refe
0570: 72 20 74 6f 20 74 68 65 20 76 61 72 69 6f 75 73  r to the various
0580: 20 66 69 6c 65 73 20 72 65 71 75 69 72 65 64 20   files required 
0590: 62 79 20 74 68 65 0d 0a 23 20 20 20 20 20 20 20  by the..#       
05a0: 74 65 73 74 73 20 69 6e 20 74 68 69 73 20 66 69  tests in this fi
05b0: 6c 65 2e 0d 0a 23 0d 0a 73 65 74 20 73 79 73 74  le...#..set syst
05c0: 65 6d 44 61 74 61 53 51 4c 69 74 65 44 6c 6c 46  emDataSQLiteDllF
05d0: 69 6c 65 20 5b 67 65 74 42 75 69 6c 64 46 69 6c  ile [getBuildFil
05e0: 65 4e 61 6d 65 20 53 79 73 74 65 6d 2e 44 61 74  eName System.Dat
05f0: 61 2e 53 51 4c 69 74 65 2e 64 6c 6c 5d 0d 0a 73  a.SQLite.dll]..s
0600: 65 74 20 73 79 73 74 65 6d 44 61 74 61 53 51 4c  et systemDataSQL
0610: 69 74 65 4c 69 6e 71 44 6c 6c 46 69 6c 65 20 5b  iteLinqDllFile [
0620: 67 65 74 42 75 69 6c 64 46 69 6c 65 4e 61 6d 65  getBuildFileName
0630: 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c   System.Data.SQL
0640: 69 74 65 2e 4c 69 6e 71 2e 64 6c 6c 5d 0d 0a 73  ite.Linq.dll]..s
0650: 65 74 20 74 65 73 74 45 78 65 46 69 6c 65 20 5b  et testExeFile [
0660: 67 65 74 42 75 69 6c 64 46 69 6c 65 4e 61 6d 65  getBuildFileName
0670: 20 74 65 73 74 2e 65 78 65 5d 0d 0a 73 65 74 20   test.exe]..set 
0680: 74 65 73 74 4c 69 6e 71 45 78 65 46 69 6c 65 20  testLinqExeFile 
0690: 5b 67 65 74 42 75 69 6c 64 46 69 6c 65 4e 61 6d  [getBuildFileNam
06a0: 65 20 74 65 73 74 6c 69 6e 71 2e 65 78 65 5d 0d  e testlinq.exe].
06b0: 0a 0d 0a 23 0d 0a 23 20 4e 4f 54 45 3a 20 53 65  ...#..# NOTE: Se
06c0: 74 75 70 20 74 68 65 20 74 65 73 74 20 63 6f 6e  tup the test con
06d0: 73 74 72 61 69 6e 74 73 20 73 70 65 63 69 66 69  straints specifi
06e0: 63 20 74 6f 20 74 68 65 20 74 65 73 74 73 20 69  c to the tests i
06f0: 6e 20 74 68 69 73 20 66 69 6c 65 2e 0d 0a 23 0d  n this file...#.
0700: 0a 69 66 20 7b 21 5b 68 61 76 65 43 6f 6e 73 74  .if {![haveConst
0710: 72 61 69 6e 74 20 5b 61 70 70 65 6e 64 41 72 67  raint [appendArg
0720: 73 20 66 69 6c 65 5f 20 5c 0d 0a 20 20 20 20 5b  s file_ \..    [
0730: 66 69 6c 65 20 74 61 69 6c 20 24 73 79 73 74 65  file tail $syste
0740: 6d 44 61 74 61 53 51 4c 69 74 65 44 6c 6c 46 69  mDataSQLiteDllFi
0750: 6c 65 5d 5d 5d 7d 20 74 68 65 6e 20 7b 0d 0a 20  le]]]} then {.. 
0760: 20 63 68 65 63 6b 46 6f 72 46 69 6c 65 20 24 74   checkForFile $t
0770: 65 73 74 5f 63 68 61 6e 6e 65 6c 20 24 73 79 73  est_channel $sys
0780: 74 65 6d 44 61 74 61 53 51 4c 69 74 65 44 6c 6c  temDataSQLiteDll
0790: 46 69 6c 65 0d 0a 7d 0d 0a 0d 0a 69 66 20 7b 21  File..}....if {!
07a0: 5b 68 61 76 65 43 6f 6e 73 74 72 61 69 6e 74 20  [haveConstraint 
07b0: 5b 61 70 70 65 6e 64 41 72 67 73 20 66 69 6c 65  [appendArgs file
07c0: 5f 20 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 74  _ \..    [file t
07d0: 61 69 6c 20 24 73 79 73 74 65 6d 44 61 74 61 53  ail $systemDataS
07e0: 51 4c 69 74 65 4c 69 6e 71 44 6c 6c 46 69 6c 65  QLiteLinqDllFile
07f0: 5d 5d 5d 7d 20 74 68 65 6e 20 7b 0d 0a 20 20 63  ]]]} then {..  c
0800: 68 65 63 6b 46 6f 72 46 69 6c 65 20 24 74 65 73  heckForFile $tes
0810: 74 5f 63 68 61 6e 6e 65 6c 20 24 73 79 73 74 65  t_channel $syste
0820: 6d 44 61 74 61 53 51 4c 69 74 65 4c 69 6e 71 44  mDataSQLiteLinqD
0830: 6c 6c 46 69 6c 65 0d 0a 7d 0d 0a 0d 0a 69 66 20  llFile..}....if 
0840: 7b 21 5b 68 61 76 65 43 6f 6e 73 74 72 61 69 6e  {![haveConstrain
0850: 74 20 5b 61 70 70 65 6e 64 41 72 67 73 20 66 69  t [appendArgs fi
0860: 6c 65 5f 20 5b 66 69 6c 65 20 74 61 69 6c 20 24  le_ [file tail $
0870: 74 65 73 74 45 78 65 46 69 6c 65 5d 5d 5d 7d 20  testExeFile]]]} 
0880: 74 68 65 6e 20 7b 0d 0a 20 20 63 68 65 63 6b 46  then {..  checkF
0890: 6f 72 46 69 6c 65 20 24 74 65 73 74 5f 63 68 61  orFile $test_cha
08a0: 6e 6e 65 6c 20 24 74 65 73 74 45 78 65 46 69 6c  nnel $testExeFil
08b0: 65 0d 0a 7d 0d 0a 0d 0a 69 66 20 7b 21 5b 68 61  e..}....if {![ha
08c0: 76 65 43 6f 6e 73 74 72 61 69 6e 74 20 5b 61 70  veConstraint [ap
08d0: 70 65 6e 64 41 72 67 73 20 66 69 6c 65 5f 20 5b  pendArgs file_ [
08e0: 66 69 6c 65 20 74 61 69 6c 20 24 74 65 73 74 4c  file tail $testL
08f0: 69 6e 71 45 78 65 46 69 6c 65 5d 5d 5d 7d 20 74  inqExeFile]]]} t
0900: 68 65 6e 20 7b 0d 0a 20 20 63 68 65 63 6b 46 6f  hen {..  checkFo
0910: 72 46 69 6c 65 20 24 74 65 73 74 5f 63 68 61 6e  rFile $test_chan
0920: 6e 65 6c 20 24 74 65 73 74 4c 69 6e 71 45 78 65  nel $testLinqExe
0930: 46 69 6c 65 0d 0a 7d 0d 0a 0d 0a 23 23 23 23 23  File..}....#####
0940: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0950: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0960: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0970: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0980: 23 23 23 23 23 23 23 23 23 23 0d 0a 0d 0a 72 75  ##########....ru
0990: 6e 54 65 73 74 20 7b 74 65 73 74 20 76 65 72 73  nTest {test vers
09a0: 69 6f 6e 2d 31 2e 31 20 7b 27 53 79 73 74 65 6d  ion-1.1 {'System
09b0: 2e 44 61 74 61 2e 53 51 4c 69 74 65 27 20 62 69  .Data.SQLite' bi
09c0: 6e 61 72 79 20 76 65 72 73 69 6f 6e 7d 20 2d 62  nary version} -b
09d0: 6f 64 79 20 7b 0d 0a 20 20 66 69 6c 65 20 76 65  ody {..  file ve
09e0: 72 73 69 6f 6e 20 24 73 79 73 74 65 6d 44 61 74  rsion $systemDat
09f0: 61 53 51 4c 69 74 65 44 6c 6c 46 69 6c 65 0d 0a  aSQLiteDllFile..
0a00: 7d 20 2d 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b  } -constraints {
0a10: 65 61 67 6c 65 20 66 69 6c 65 5f 53 79 73 74 65  eagle file_Syste
0a20: 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 2e 64 6c  m.Data.SQLite.dl
0a30: 6c 7d 20 2d 72 65 73 75 6c 74 20 24 76 65 72 73  l} -result $vers
0a40: 69 6f 6e 28 66 75 6c 6c 29 7d 0d 0a 0d 0a 23 23  ion(full)}....##
0a50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0a60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0a70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0a80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0a90: 23 23 23 23 23 23 23 23 23 23 23 23 23 0d 0a 0d  #############...
0aa0: 0a 72 75 6e 54 65 73 74 20 7b 74 65 73 74 20 76  .runTest {test v
0ab0: 65 72 73 69 6f 6e 2d 31 2e 32 20 7b 27 53 79 73  ersion-1.2 {'Sys
0ac0: 74 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 2e  tem.Data.SQLite.
0ad0: 4c 69 6e 71 27 20 62 69 6e 61 72 79 20 76 65 72  Linq' binary ver
0ae0: 73 69 6f 6e 7d 20 2d 62 6f 64 79 20 7b 0d 0a 20  sion} -body {.. 
0af0: 20 66 69 6c 65 20 76 65 72 73 69 6f 6e 20 24 73   file version $s
0b00: 79 73 74 65 6d 44 61 74 61 53 51 4c 69 74 65 4c  ystemDataSQLiteL
0b10: 69 6e 71 44 6c 6c 46 69 6c 65 0d 0a 7d 20 2d 63  inqDllFile..} -c
0b20: 6f 6e 73 74 72 61 69 6e 74 73 20 7b 65 61 67 6c  onstraints {eagl
0b30: 65 20 66 69 6c 65 5f 53 79 73 74 65 6d 2e 44 61  e file_System.Da
0b40: 74 61 2e 53 51 4c 69 74 65 2e 4c 69 6e 71 2e 64  ta.SQLite.Linq.d
0b50: 6c 6c 7d 20 2d 72 65 73 75 6c 74 20 24 76 65 72  ll} -result $ver
0b60: 73 69 6f 6e 28 66 75 6c 6c 29 7d 0d 0a 0d 0a 23  sion(full)}....#
0b70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0b80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0b90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0ba0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0bb0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0d 0a  ##############..
0bc0: 0d 0a 72 75 6e 54 65 73 74 20 7b 74 65 73 74 20  ..runTest {test 
0bd0: 76 65 72 73 69 6f 6e 2d 31 2e 33 20 7b 27 74 65  version-1.3 {'te
0be0: 73 74 27 20 62 69 6e 61 72 79 20 76 65 72 73 69  st' binary versi
0bf0: 6f 6e 7d 20 2d 62 6f 64 79 20 7b 0d 0a 20 20 66  on} -body {..  f
0c00: 69 6c 65 20 76 65 72 73 69 6f 6e 20 24 74 65 73  ile version $tes
0c10: 74 45 78 65 46 69 6c 65 0d 0a 7d 20 2d 63 6f 6e  tExeFile..} -con
0c20: 73 74 72 61 69 6e 74 73 20 7b 65 61 67 6c 65 20  straints {eagle 
0c30: 66 69 6c 65 5f 74 65 73 74 2e 65 78 65 7d 20 2d  file_test.exe} -
0c40: 72 65 73 75 6c 74 20 24 76 65 72 73 69 6f 6e 28  result $version(
0c50: 66 75 6c 6c 29 7d 0d 0a 0d 0a 23 23 23 23 23 23  full)}....######
0c60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0ca0: 23 23 23 23 23 23 23 23 23 0d 0a 0d 0a 72 75 6e  #########....run
0cb0: 54 65 73 74 20 7b 74 65 73 74 20 76 65 72 73 69  Test {test versi
0cc0: 6f 6e 2d 31 2e 34 20 7b 27 74 65 73 74 6c 69 6e  on-1.4 {'testlin
0cd0: 71 27 20 62 69 6e 61 72 79 20 76 65 72 73 69 6f  q' binary versio
0ce0: 6e 7d 20 2d 62 6f 64 79 20 7b 0d 0a 20 20 66 69  n} -body {..  fi
0cf0: 6c 65 20 76 65 72 73 69 6f 6e 20 24 74 65 73 74  le version $test
0d00: 4c 69 6e 71 45 78 65 46 69 6c 65 0d 0a 7d 20 2d  LinqExeFile..} -
0d10: 63 6f 6e 73 74 72 61 69 6e 74 73 20 7b 65 61 67  constraints {eag
0d20: 6c 65 20 66 69 6c 65 5f 74 65 73 74 6c 69 6e 71  le file_testlinq
0d30: 2e 65 78 65 7d 20 2d 72 65 73 75 6c 74 20 24 76  .exe} -result $v
0d40: 65 72 73 69 6f 6e 28 66 75 6c 6c 29 7d 0d 0a 0d  ersion(full)}...
0d50: 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  .###############
0d60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0d70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0d80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0d90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0da0: 0d 0a 0d 0a 73 65 74 20 70 61 74 74 65 72 6e 73  ....set patterns
0db0: 20 5b 6c 69 73 74 20 5c 0d 0a 20 20 20 20 5b 61   [list \..    [a
0dc0: 70 70 65 6e 64 41 72 67 73 20 3c 76 65 72 73 69  ppendArgs <versi
0dd0: 6f 6e 3e 20 5b 73 74 72 69 6e 67 20 6d 61 70 20  on> [string map 
0de0: 5b 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20 24 76 65  [list . \\.] $ve
0df0: 72 73 69 6f 6e 28 66 75 6c 6c 29 5d 20 5c 0d 0a  rsion(full)] \..
0e00: 20 20 20 20 20 20 20 20 3c 2f 76 65 72 73 69 6f          </versio
0e10: 6e 3e 5d 20 5c 0d 0a 20 20 20 20 5b 61 70 70 65  n>] \..    [appe
0e20: 6e 64 41 72 67 73 20 3c 76 65 72 73 69 6f 6e 3e  ndArgs <version>
0e30: 20 5b 73 74 72 69 6e 67 20 6d 61 70 20 5b 6c 69   [string map [li
0e40: 73 74 20 2e 20 5c 5c 2e 5d 20 24 76 65 72 73 69  st . \\.] $versi
0e50: 6f 6e 28 66 75 6c 6c 29 5d 20 5c 0d 0a 20 20 20  on(full)] \..   
0e60: 20 20 20 20 20 3c 2f 76 65 72 73 69 6f 6e 3e 5d       </version>]
0e70: 20 5c 0d 0a 20 20 20 20 5b 61 70 70 65 6e 64 41   \..    [appendA
0e80: 72 67 73 20 3c 76 65 72 73 69 6f 6e 3e 20 5b 73  rgs <version> [s
0e90: 74 72 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20  tring map [list 
0ea0: 2e 20 5c 5c 2e 5d 20 24 76 65 72 73 69 6f 6e 28  . \\.] $version(
0eb0: 66 75 6c 6c 29 5d 20 5c 0d 0a 20 20 20 20 20 20  full)] \..      
0ec0: 20 20 3c 2f 76 65 72 73 69 6f 6e 3e 5d 20 5c 0d    </version>] \.
0ed0: 0a 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73  .    [appendArgs
0ee0: 20 3c 76 65 72 73 69 6f 6e 3e 20 5b 73 74 72 69   <version> [stri
0ef0: 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20 5c  ng map [list . \
0f00: 5c 2e 5d 20 24 76 65 72 73 69 6f 6e 28 66 75 6c  \.] $version(ful
0f10: 6c 29 5d 20 5c 0d 0a 20 20 20 20 20 20 20 20 3c  l)] \..        <
0f20: 2f 76 65 72 73 69 6f 6e 3e 5d 20 5c 0d 0a 20 20  /version>] \..  
0f30: 20 20 5b 61 70 70 65 6e 64 41 72 67 73 20 56 65    [appendArgs Ve
0f40: 72 73 69 6f 6e 3d 20 5b 73 74 72 69 6e 67 20 6d  rsion= [string m
0f50: 61 70 20 5b 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20  ap [list . \\.] 
0f60: 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29 5d 20  $version(full)] 
0f70: 2c 5d 20 5c 0d 0a 20 20 20 20 5b 61 70 70 65 6e  ,] \..    [appen
0f80: 64 41 72 67 73 20 26 71 75 6f 74 5c 3b 20 5b 66  dArgs &quot\; [f
0f90: 6f 72 6d 61 74 20 25 30 33 64 20 24 76 65 72 73  ormat %03d $vers
0fa0: 69 6f 6e 28 62 75 69 6c 64 29 5d 20 26 71 75 6f  ion(build)] &quo
0fb0: 74 5c 3b 5d 20 5c 0d 0a 20 20 20 20 5b 61 70 70  t\;] \..    [app
0fc0: 65 6e 64 41 72 67 73 20 41 73 73 65 6d 62 6c 79  endArgs Assembly
0fd0: 56 65 72 73 69 6f 6e 5c 5c 28 5c 22 20 5b 73 74  Version\\(\" [st
0fe0: 72 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e  ring map [list .
0ff0: 20 5c 5c 2e 5d 20 5c 0d 0a 20 20 20 20 20 20 20   \\.] \..       
1000: 20 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29 5d   $version(full)]
1010: 20 5c 22 5c 5c 29 5d 20 5c 0d 0a 20 20 20 20 5b   \"\\)] \..    [
1020: 61 70 70 65 6e 64 41 72 67 73 20 41 73 73 65 6d  appendArgs Assem
1030: 62 6c 79 46 69 6c 65 56 65 72 73 69 6f 6e 5c 5c  blyFileVersion\\
1040: 28 5c 22 20 5b 73 74 72 69 6e 67 20 6d 61 70 20  (\" [string map 
1050: 5b 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20 5c 0d 0a  [list . \\.] \..
1060: 20 20 20 20 20 20 20 20 24 76 65 72 73 69 6f 6e          $version
1070: 28 66 75 6c 6c 29 5d 20 5c 22 5c 5c 29 5d 20 5c  (full)] \"\\)] \
1080: 0d 0a 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67  ..    [appendArg
1090: 73 20 56 61 6c 75 65 3d 5c 22 20 5b 66 6f 72 6d  s Value=\" [form
10a0: 61 74 20 25 30 33 64 20 24 76 65 72 73 69 6f 6e  at %03d $version
10b0: 28 62 75 69 6c 64 29 5d 20 5c 22 5d 20 5c 0d 0a  (build)] \"] \..
10c0: 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73 20      [appendArgs 
10d0: 56 61 6c 75 65 3d 5c 22 20 5b 73 74 72 69 6e 67  Value=\" [string
10e0: 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20 5c 5c 2e   map [list . \\.
10f0: 5d 20 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29  ] $version(full)
1100: 5d 20 5c 22 5d 20 5c 0d 0a 20 20 20 20 5b 61 70  ] \"] \..    [ap
1110: 70 65 6e 64 41 72 67 73 20 56 61 6c 75 65 3d 5c  pendArgs Value=\
1120: 22 20 5b 73 74 72 69 6e 67 20 6d 61 70 20 5b 6c  " [string map [l
1130: 69 73 74 20 2e 20 2c 5d 20 24 76 65 72 73 69 6f  ist . ,] $versio
1140: 6e 28 66 75 6c 6c 29 5d 20 5c 22 5d 20 5c 0d 0a  n(full)] \"] \..
1150: 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73 20      [appendArgs 
1160: 3c 49 4e 54 45 52 4f 50 5f 42 55 49 4c 44 5f 4e  <INTEROP_BUILD_N
1170: 55 4d 42 45 52 3e 20 5b 66 6f 72 6d 61 74 20 25  UMBER> [format %
1180: 30 33 64 20 24 76 65 72 73 69 6f 6e 28 62 75 69  03d $version(bui
1190: 6c 64 29 5d 20 5c 0d 0a 20 20 20 20 20 20 20 20  ld)] \..        
11a0: 3c 2f 49 4e 54 45 52 4f 50 5f 42 55 49 4c 44 5f  </INTEROP_BUILD_
11b0: 4e 55 4d 42 45 52 3e 5d 20 5c 0d 0a 20 20 20 20  NUMBER>] \..    
11c0: 5b 61 70 70 65 6e 64 41 72 67 73 20 3c 49 4e 54  [appendArgs <INT
11d0: 45 52 4f 50 5f 4d 41 4e 49 46 45 53 54 5f 56 45  EROP_MANIFEST_VE
11e0: 52 53 49 4f 4e 3e 20 5b 73 74 72 69 6e 67 20 6d  RSION> [string m
11f0: 61 70 20 5b 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20  ap [list . \\.] 
1200: 5c 0d 0a 20 20 20 20 20 20 20 20 24 76 65 72 73  \..        $vers
1210: 69 6f 6e 28 66 75 6c 6c 29 5d 20 3c 2f 49 4e 54  ion(full)] </INT
1220: 45 52 4f 50 5f 4d 41 4e 49 46 45 53 54 5f 56 45  EROP_MANIFEST_VE
1230: 52 53 49 4f 4e 3e 5d 20 5c 0d 0a 20 20 20 20 5b  RSION>] \..    [
1240: 61 70 70 65 6e 64 41 72 67 73 20 3c 49 4e 54 45  appendArgs <INTE
1250: 52 4f 50 5f 52 43 5f 56 45 52 53 49 4f 4e 3e 20  ROP_RC_VERSION> 
1260: 5b 73 74 72 69 6e 67 20 6d 61 70 20 5b 6c 69 73  [string map [lis
1270: 74 20 2e 20 2c 5d 20 5c 0d 0a 20 20 20 20 20 20  t . ,] \..      
1280: 20 20 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29    $version(full)
1290: 5d 20 3c 2f 49 4e 54 45 52 4f 50 5f 52 43 5f 56  ] </INTEROP_RC_V
12a0: 45 52 53 49 4f 4e 3e 5d 20 5c 0d 0a 20 20 20 20  ERSION>] \..    
12b0: 5b 61 70 70 65 6e 64 41 72 67 73 20 5c 22 20 5b  [appendArgs \" [
12c0: 73 74 72 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74  string map [list
12d0: 20 2e 20 5c 5c 2e 5d 20 24 76 65 72 73 69 6f 6e   . \\.] $version
12e0: 28 66 75 6c 6c 29 5d 20 5c 22 5d 20 5c 0d 0a 20  (full)] \"] \.. 
12f0: 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73 20 41     [appendArgs A
1300: 73 73 65 6d 62 6c 79 56 65 72 73 69 6f 6e 5c 5c  ssemblyVersion\\
1310: 28 5c 22 20 5b 73 74 72 69 6e 67 20 6d 61 70 20  (\" [string map 
1320: 5b 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20 5c 0d 0a  [list . \\.] \..
1330: 20 20 20 20 20 20 20 20 24 76 65 72 73 69 6f 6e          $version
1340: 28 66 75 6c 6c 29 5d 20 5c 22 5c 5c 29 5d 20 5c  (full)] \"\\)] \
1350: 0d 0a 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67  ..    [appendArg
1360: 73 20 41 73 73 65 6d 62 6c 79 46 69 6c 65 56 65  s AssemblyFileVe
1370: 72 73 69 6f 6e 5c 5c 28 5c 22 20 5b 73 74 72 69  rsion\\(\" [stri
1380: 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20 5c  ng map [list . \
1390: 5c 2e 5d 20 5c 0d 0a 20 20 20 20 20 20 20 20 24  \.] \..        $
13a0: 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29 5d 20 5c  version(full)] \
13b0: 22 5c 5c 29 5d 20 5c 0d 0a 20 20 20 20 5b 61 70  "\\)] \..    [ap
13c0: 70 65 6e 64 41 72 67 73 20 5c 22 20 5b 73 74 72  pendArgs \" [str
13d0: 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20  ing map [list . 
13e0: 5c 5c 2e 5d 20 24 76 65 72 73 69 6f 6e 28 66 75  \\.] $version(fu
13f0: 6c 6c 29 5d 20 5c 22 5d 20 5c 0d 0a 20 20 20 20  ll)] \"] \..    
1400: 5b 61 70 70 65 6e 64 41 72 67 73 20 5c 22 53 51  [appendArgs \"SQ
1410: 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 20 5b 66  Lite.Interop. [f
1420: 6f 72 6d 61 74 20 25 30 33 64 20 24 76 65 72 73  ormat %03d $vers
1430: 69 6f 6e 28 62 75 69 6c 64 29 5d 20 2e 64 6c 6c  ion(build)] .dll
1440: 5c 22 5d 20 5c 0d 0a 20 20 20 20 5b 61 70 70 65  \"] \..    [appe
1450: 6e 64 41 72 67 73 20 41 73 73 65 6d 62 6c 79 56  ndArgs AssemblyV
1460: 65 72 73 69 6f 6e 5c 5c 28 5c 22 20 5b 73 74 72  ersion\\(\" [str
1470: 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20  ing map [list . 
1480: 5c 5c 2e 5d 20 5c 0d 0a 20 20 20 20 20 20 20 20  \\.] \..        
1490: 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c 29 5d 20  $version(full)] 
14a0: 5c 22 5c 5c 29 5d 20 5c 0d 0a 20 20 20 20 5b 61  \"\\)] \..    [a
14b0: 70 70 65 6e 64 41 72 67 73 20 41 73 73 65 6d 62  ppendArgs Assemb
14c0: 6c 79 46 69 6c 65 56 65 72 73 69 6f 6e 5c 5c 28  lyFileVersion\\(
14d0: 5c 22 20 5b 73 74 72 69 6e 67 20 6d 61 70 20 5b  \" [string map [
14e0: 6c 69 73 74 20 2e 20 5c 5c 2e 5d 20 5c 0d 0a 20  list . \\.] \.. 
14f0: 20 20 20 20 20 20 20 24 76 65 72 73 69 6f 6e 28         $version(
1500: 66 75 6c 6c 29 5d 20 5c 22 5c 5c 29 5d 20 5c 0d  full)] \"\\)] \.
1510: 0a 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73  .    [appendArgs
1520: 20 56 65 72 73 69 6f 6e 3d 20 5b 73 74 72 69 6e   Version= [strin
1530: 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20 5c 5c  g map [list . \\
1540: 2e 5d 20 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c  .] $version(full
1550: 29 5d 20 2c 5d 20 5c 0d 0a 20 20 20 20 5b 61 70  )] ,] \..    [ap
1560: 70 65 6e 64 41 72 67 73 20 56 65 72 73 69 6f 6e  pendArgs Version
1570: 3d 20 5b 73 74 72 69 6e 67 20 6d 61 70 20 5b 6c  = [string map [l
1580: 69 73 74 20 2e 20 5c 5c 2e 5d 20 24 76 65 72 73  ist . \\.] $vers
1590: 69 6f 6e 28 66 75 6c 6c 29 5d 20 2c 5d 20 5c 0d  ion(full)] ,] \.
15a0: 0a 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73  .    [appendArgs
15b0: 20 56 65 72 73 69 6f 6e 3d 20 5b 73 74 72 69 6e   Version= [strin
15c0: 67 20 6d 61 70 20 5b 6c 69 73 74 20 2e 20 5c 5c  g map [list . \\
15d0: 2e 5d 20 24 76 65 72 73 69 6f 6e 28 66 75 6c 6c  .] $version(full
15e0: 29 5d 20 2c 5d 5d 0d 0a 0d 0a 73 65 74 20 66 69  )] ,]]....set fi
15f0: 6c 65 4e 61 6d 65 73 20 5b 6c 69 73 74 20 5c 0d  leNames [list \.
1600: 0a 20 20 20 20 53 51 4c 69 74 65 2e 6e 75 73 70  .    SQLite.nusp
1610: 65 63 20 5c 0d 0a 20 20 20 20 53 51 4c 69 74 65  ec \..    SQLite
1620: 2e 4d 53 49 4c 2e 6e 75 73 70 65 63 20 5c 0d 0a  .MSIL.nuspec \..
1630: 20 20 20 20 53 51 4c 69 74 65 2e 78 36 34 2e 6e      SQLite.x64.n
1640: 75 73 70 65 63 20 5c 0d 0a 20 20 20 20 53 51 4c  uspec \..    SQL
1650: 69 74 65 2e 78 38 36 2e 6e 75 73 70 65 63 20 5c  ite.x86.nuspec \
1660: 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e  ..    [file join
1670: 20 44 6f 63 20 45 78 74 72 61 20 64 62 66 61 63   Doc Extra dbfac
1680: 74 6f 72 79 73 75 70 70 6f 72 74 2e 68 74 6d 6c  torysupport.html
1690: 5d 20 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a  ] \..    [file j
16a0: 6f 69 6e 20 44 6f 63 20 45 78 74 72 61 20 77 65  oin Doc Extra we
16b0: 6c 63 6f 6d 65 2e 68 74 6d 6c 5d 20 5c 0d 0a 20  lcome.html] \.. 
16c0: 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 53 51     [file join SQ
16d0: 4c 69 74 65 2e 44 65 73 69 67 6e 65 72 20 41 73  Lite.Designer As
16e0: 73 65 6d 62 6c 79 49 6e 66 6f 2e 63 73 5d 20 5c  semblyInfo.cs] \
16f0: 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e  ..    [file join
1700: 20 53 51 4c 69 74 65 2e 44 65 73 69 67 6e 65 72   SQLite.Designer
1710: 20 41 73 73 65 6d 62 6c 79 49 6e 66 6f 2e 63 73   AssemblyInfo.cs
1720: 5d 20 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a  ] \..    [file j
1730: 6f 69 6e 20 53 51 4c 69 74 65 2e 49 6e 74 65 72  oin SQLite.Inter
1740: 6f 70 20 70 72 6f 70 73 20 53 51 4c 69 74 65 2e  op props SQLite.
1750: 49 6e 74 65 72 6f 70 2e 76 73 70 72 6f 70 73 5d  Interop.vsprops]
1760: 20 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f   \..    [file jo
1770: 69 6e 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f  in SQLite.Intero
1780: 70 20 70 72 6f 70 73 20 53 51 4c 69 74 65 2e 49  p props SQLite.I
1790: 6e 74 65 72 6f 70 2e 76 73 70 72 6f 70 73 5d 20  nterop.vsprops] 
17a0: 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69  \..    [file joi
17b0: 6e 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70  n SQLite.Interop
17c0: 20 70 72 6f 70 73 20 53 51 4c 69 74 65 2e 49 6e   props SQLite.In
17d0: 74 65 72 6f 70 2e 76 73 70 72 6f 70 73 5d 20 5c  terop.vsprops] \
17e0: 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e  ..    [file join
17f0: 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 20   SQLite.Interop 
1800: 70 72 6f 70 73 20 53 51 4c 69 74 65 2e 49 6e 74  props SQLite.Int
1810: 65 72 6f 70 2e 70 72 6f 70 73 5d 20 5c 0d 0a 20  erop.props] \.. 
1820: 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 53 51     [file join SQ
1830: 4c 69 74 65 2e 49 6e 74 65 72 6f 70 20 70 72 6f  Lite.Interop pro
1840: 70 73 20 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f  ps SQLite.Intero
1850: 70 2e 70 72 6f 70 73 5d 20 5c 0d 0a 20 20 20 20  p.props] \..    
1860: 5b 66 69 6c 65 20 6a 6f 69 6e 20 53 51 4c 69 74  [file join SQLit
1870: 65 2e 49 6e 74 65 72 6f 70 20 70 72 6f 70 73 20  e.Interop props 
1880: 53 51 4c 69 74 65 2e 49 6e 74 65 72 6f 70 2e 70  SQLite.Interop.p
1890: 72 6f 70 73 5d 20 5c 0d 0a 20 20 20 20 5b 66 69  rops] \..    [fi
18a0: 6c 65 20 6a 6f 69 6e 20 53 51 4c 69 74 65 2e 49  le join SQLite.I
18b0: 6e 74 65 72 6f 70 20 73 72 63 20 77 69 6e 20 69  nterop src win i
18c0: 6e 74 65 72 6f 70 2e 68 5d 20 5c 0d 0a 20 20 20  nterop.h] \..   
18d0: 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 53 79 73 74   [file join Syst
18e0: 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 20 41  em.Data.SQLite A
18f0: 73 73 65 6d 62 6c 79 49 6e 66 6f 2e 63 73 5d 20  ssemblyInfo.cs] 
1900: 5c 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69  \..    [file joi
1910: 6e 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51  n System.Data.SQ
1920: 4c 69 74 65 20 41 73 73 65 6d 62 6c 79 49 6e 66  Lite AssemblyInf
1930: 6f 2e 63 73 5d 20 5c 0d 0a 20 20 20 20 5b 66 69  o.cs] \..    [fi
1940: 6c 65 20 6a 6f 69 6e 20 53 79 73 74 65 6d 2e 44  le join System.D
1950: 61 74 61 2e 53 51 4c 69 74 65 20 53 51 4c 69 74  ata.SQLite SQLit
1960: 65 33 2e 63 73 5d 20 5c 0d 0a 20 20 20 20 5b 66  e3.cs] \..    [f
1970: 69 6c 65 20 6a 6f 69 6e 20 53 79 73 74 65 6d 2e  ile join System.
1980: 44 61 74 61 2e 53 51 4c 69 74 65 20 55 6e 73 61  Data.SQLite Unsa
1990: 66 65 4e 61 74 69 76 65 4d 65 74 68 6f 64 73 2e  feNativeMethods.
19a0: 63 73 5d 20 5c 0d 0a 20 20 20 20 5b 66 69 6c 65  cs] \..    [file
19b0: 20 6a 6f 69 6e 20 53 79 73 74 65 6d 2e 44 61 74   join System.Dat
19c0: 61 2e 53 51 4c 69 74 65 2e 4c 69 6e 71 20 41 73  a.SQLite.Linq As
19d0: 73 65 6d 62 6c 79 49 6e 66 6f 2e 63 73 5d 20 5c  semblyInfo.cs] \
19e0: 0d 0a 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e  ..    [file join
19f0: 20 53 79 73 74 65 6d 2e 44 61 74 61 2e 53 51 4c   System.Data.SQL
1a00: 69 74 65 2e 4c 69 6e 71 20 41 73 73 65 6d 62 6c  ite.Linq Assembl
1a10: 79 49 6e 66 6f 2e 63 73 5d 20 5c 0d 0a 20 20 20  yInfo.cs] \..   
1a20: 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 74 65 73 74   [file join test
1a30: 20 61 70 70 2e 63 6f 6e 66 69 67 5d 20 5c 0d 0a   app.config] \..
1a40: 20 20 20 20 5b 66 69 6c 65 20 6a 6f 69 6e 20 74      [file join t
1a50: 65 73 74 6c 69 6e 71 20 32 30 30 38 20 41 70 70  estlinq 2008 App
1a60: 2e 63 6f 6e 66 69 67 5d 20 5c 0d 0a 20 20 20 20  .config] \..    
1a70: 5b 66 69 6c 65 20 6a 6f 69 6e 20 74 65 73 74 6c  [file join testl
1a80: 69 6e 71 20 32 30 31 30 20 41 70 70 2e 63 6f 6e  inq 2010 App.con
1a90: 66 69 67 5d 5d 0d 0a 0d 0a 66 6f 72 20 7b 73 65  fig]]....for {se
1aa0: 74 20 69 20 31 7d 20 7b 24 69 20 3c 3d 20 5b 6c  t i 1} {$i <= [l
1ab0: 6c 65 6e 67 74 68 20 24 66 69 6c 65 4e 61 6d 65  length $fileName
1ac0: 73 5d 7d 20 7b 69 6e 63 72 20 69 7d 20 7b 0d 0a  s]} {incr i} {..
1ad0: 20 20 73 65 74 20 70 61 74 74 65 72 6e 20 5b 6c    set pattern [l
1ae0: 69 6e 64 65 78 20 24 70 61 74 74 65 72 6e 73 20  index $patterns 
1af0: 5b 65 78 70 72 20 7b 24 69 20 2d 20 31 7d 5d 5d  [expr {$i - 1}]]
1b00: 0d 0a 20 20 73 65 74 20 66 69 6c 65 4e 61 6d 65  ..  set fileName
1b10: 20 5b 6c 69 6e 64 65 78 20 24 66 69 6c 65 4e 61   [lindex $fileNa
1b20: 6d 65 73 20 5b 65 78 70 72 20 7b 24 69 20 2d 20  mes [expr {$i - 
1b30: 31 7d 5d 5d 0d 0a 20 20 73 65 74 20 63 6f 6e 73  1}]]..  set cons
1b40: 74 72 61 69 6e 74 20 5b 73 74 72 69 6e 67 20 6d  traint [string m
1b50: 61 70 20 5b 6c 69 73 74 20 2f 20 5f 20 5c 5c 20  ap [list / _ \\ 
1b60: 5f 5d 20 24 66 69 6c 65 4e 61 6d 65 5d 0d 0a 20  _] $fileName].. 
1b70: 20 73 65 74 20 66 69 6c 65 4e 61 6d 65 20 5b 66   set fileName [f
1b80: 69 6c 65 20 6a 6f 69 6e 20 24 72 6f 6f 74 5f 70  ile join $root_p
1b90: 61 74 68 20 24 66 69 6c 65 4e 61 6d 65 5d 0d 0a  ath $fileName]..
1ba0: 0d 0a 20 20 69 66 20 7b 21 5b 68 61 76 65 43 6f  ..  if {![haveCo
1bb0: 6e 73 74 72 61 69 6e 74 20 5b 61 70 70 65 6e 64  nstraint [append
1bc0: 41 72 67 73 20 66 69 6c 65 5f 20 24 63 6f 6e 73  Args file_ $cons
1bd0: 74 72 61 69 6e 74 5d 5d 7d 20 74 68 65 6e 20 7b  traint]]} then {
1be0: 0d 0a 20 20 20 20 63 68 65 63 6b 46 6f 72 46 69  ..    checkForFi
1bf0: 6c 65 20 24 74 65 73 74 5f 63 68 61 6e 6e 65 6c  le $test_channel
1c00: 20 24 66 69 6c 65 4e 61 6d 65 20 24 63 6f 6e 73   $fileName $cons
1c10: 74 72 61 69 6e 74 0d 0a 20 20 7d 0d 0a 0d 0a 20  traint..  }.... 
1c20: 20 72 75 6e 54 65 73 74 20 7b 74 65 73 74 20 5b   runTest {test [
1c30: 61 70 70 65 6e 64 41 72 67 73 20 76 65 72 73 69  appendArgs versi
1c40: 6f 6e 2d 31 2e 35 2e 20 24 69 5d 20 5c 0d 0a 20  on-1.5. $i] \.. 
1c50: 20 20 20 20 20 5b 61 70 70 65 6e 64 41 72 67 73       [appendArgs
1c60: 20 22 70 61 74 74 65 72 6e 20 7b 22 20 24 70 61   "pattern {" $pa
1c70: 74 74 65 72 6e 20 22 7d 20 69 6e 20 66 69 6c 65  ttern "} in file
1c80: 20 5c 22 22 20 24 66 69 6c 65 4e 61 6d 65 20 5c   \"" $fileName \
1c90: 22 5d 20 2d 62 6f 64 79 20 7b 0d 0a 20 20 20 20  "] -body {..    
1ca0: 72 65 67 65 78 70 20 2d 2d 20 24 70 61 74 74 65  regexp -- $patte
1cb0: 72 6e 20 5b 72 65 61 64 46 69 6c 65 20 24 66 69  rn [readFile $fi
1cc0: 6c 65 4e 61 6d 65 5d 0d 0a 20 20 7d 20 2d 63 6f  leName]..  } -co
1cd0: 6e 73 74 72 61 69 6e 74 73 20 5b 6c 69 73 74 20  nstraints [list 
1ce0: 65 61 67 6c 65 20 5b 61 70 70 65 6e 64 41 72 67  eagle [appendArg
1cf0: 73 20 66 69 6c 65 5f 20 24 63 6f 6e 73 74 72 61  s file_ $constra
1d00: 69 6e 74 5d 5d 20 2d 72 65 73 75 6c 74 20 7b 31  int]] -result {1
1d10: 7d 7d 0d 0a 7d 0d 0a 0d 0a 75 6e 73 65 74 20 2d  }}..}....unset -
1d20: 6e 6f 63 6f 6d 70 6c 61 69 6e 20 63 6f 6e 73 74  nocomplain const
1d30: 72 61 69 6e 74 20 66 69 6c 65 4e 61 6d 65 20 70  raint fileName p
1d40: 61 74 74 65 72 6e 20 66 69 6c 65 4e 61 6d 65 73  attern fileNames
1d50: 20 70 61 74 74 65 72 6e 73 20 69 0d 0a 0d 0a 23   patterns i....#
1d60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1d70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1d80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1d90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1da0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0d 0a  ##############..
1db0: 0d 0a 75 6e 73 65 74 20 2d 6e 6f 63 6f 6d 70 6c  ..unset -nocompl
1dc0: 61 69 6e 20 74 65 73 74 4c 69 6e 71 45 78 65 46  ain testLinqExeF
1dd0: 69 6c 65 20 74 65 73 74 45 78 65 46 69 6c 65 20  ile testExeFile 
1de0: 73 79 73 74 65 6d 44 61 74 61 53 51 4c 69 74 65  systemDataSQLite
1df0: 4c 69 6e 71 44 6c 6c 46 69 6c 65 20 5c 0d 0a 20  LinqDllFile \.. 
1e00: 20 20 20 73 79 73 74 65 6d 44 61 74 61 53 51 4c     systemDataSQL
1e10: 69 74 65 44 6c 6c 46 69 6c 65 0d 0a 0d 0a 23 23  iteDllFile....##
1e20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1e30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1e40: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1e50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
1e60: 23 23 23 23 23 23 23 23 23 23 23 23 23 0d 0a 0d  #############...
1e70: 0a 72 75 6e 53 51 4c 69 74 65 54 65 73 74 45 70  .runSQLiteTestEp
1e80: 69 6c 6f 67 75 65 0d 0a 72 75 6e 54 65 73 74 45  ilogue..runTestE
1e90: 70 69 6c 6f 67 75 65 0d 0a                       pilogue..