System.Data.SQLite
Hex Artifact Content
Not logged in

Artifact df12904beff4f59b6bc774a373fae99774885356:


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 74 6b 74 2d 37 31 62 65 64 61  .#..# tkt-71beda
0060: 63 61 31 39 2e 65 61 67 6c 65 20 2d 2d 0d 0a 23  ca19.eagle --..#
0070: 0d 0a 23 20 57 72 69 74 74 65 6e 20 62 79 20 4a  ..# Written by J
0080: 6f 65 20 4d 69 73 74 61 63 68 6b 69 6e 2e 0d 0a  oe Mistachkin...
0090: 23 20 52 65 6c 65 61 73 65 64 20 74 6f 20 74 68  # Released to th
00a0: 65 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 2c  e public domain,
00b0: 20 75 73 65 20 61 74 20 79 6f 75 72 20 6f 77 6e   use at your own
00c0: 20 72 69 73 6b 21 0d 0a 23 0d 0a 23 23 23 23 23   risk!..#..#####
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 23 23 23 23 23 23 23 0d 0a 0d 0a 70 61  ##########....pa
0120: 63 6b 61 67 65 20 72 65 71 75 69 72 65 20 45 61  ckage require Ea
0130: 67 6c 65 0d 0a 70 61 63 6b 61 67 65 20 72 65 71  gle..package req
0140: 75 69 72 65 20 45 61 67 6c 65 2e 4c 69 62 72 61  uire Eagle.Libra
0150: 72 79 0d 0a 70 61 63 6b 61 67 65 20 72 65 71 75  ry..package requ
0160: 69 72 65 20 45 61 67 6c 65 2e 54 65 73 74 0d 0a  ire Eagle.Test..
0170: 0d 0a 72 75 6e 54 65 73 74 50 72 6f 6c 6f 67 75  ..runTestPrologu
0180: 65 0d 0a 0d 0a 23 23 23 23 23 23 23 23 23 23 23  e....###########
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 23 23 23 23 23  ################
01d0: 23 23 23 23 0d 0a 0d 0a 70 61 63 6b 61 67 65 20  ####....package 
01e0: 72 65 71 75 69 72 65 20 53 79 73 74 65 6d 2e 44  require System.D
01f0: 61 74 61 2e 53 51 4c 69 74 65 2e 54 65 73 74 0d  ata.SQLite.Test.
0200: 0a 72 75 6e 53 51 4c 69 74 65 54 65 73 74 50 72  .runSQLiteTestPr
0210: 6f 6c 6f 67 75 65 0d 0a 0d 0a 23 23 23 23 23 23  ologue....######
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: 23 23 23 23 23 23 23 23 23 0d 0a 0d 0a 72 75 6e  #########....run
0270: 54 65 73 74 20 7b 74 65 73 74 20 74 6b 74 2d 37  Test {test tkt-7
0280: 31 62 65 64 61 63 61 31 39 2d 31 2e 31 20 7b 53  1bedaca19-1.1 {S
0290: 51 4c 69 74 65 45 72 72 6f 72 43 6f 64 65 20 6e  QLiteErrorCode n
02a0: 61 6d 65 73 20 61 6e 64 20 76 61 6c 75 65 73 7d  ames and values}
02b0: 20 2d 73 65 74 75 70 20 7b 0d 0a 20 20 6f 62 6a   -setup {..  obj
02c0: 65 63 74 20 69 6d 70 6f 72 74 20 53 79 73 74 65  ect import Syste
02d0: 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 0d 0a 7d  m.Data.SQLite..}
02e0: 20 2d 62 6f 64 79 20 7b 0d 0a 20 20 73 65 74 20   -body {..  set 
02f0: 72 65 73 75 6c 74 20 5b 6c 69 73 74 5d 0d 0a 0d  result [list]...
0300: 0a 20 20 66 6f 72 65 61 63 68 20 6e 61 6d 65 20  .  foreach name 
0310: 5b 6c 73 6f 72 74 20 5b 6f 62 6a 65 63 74 20 69  [lsort [object i
0320: 6e 76 6f 6b 65 20 45 6e 75 6d 20 47 65 74 4e 61  nvoke Enum GetNa
0330: 6d 65 73 20 53 51 4c 69 74 65 45 72 72 6f 72 43  mes SQLiteErrorC
0340: 6f 64 65 5d 5d 20 7b 0d 0a 20 20 20 20 69 66 20  ode]] {..    if 
0350: 7b 24 6e 61 6d 65 20 6e 69 20 5b 6c 69 73 74 20  {$name ni [list 
0360: 4e 6f 6e 45 78 74 65 6e 64 65 64 4d 61 73 6b 20  NonExtendedMask 
0370: 55 6e 6b 6e 6f 77 6e 5d 7d 20 74 68 65 6e 20 7b  Unknown]} then {
0380: 0d 0a 20 20 20 20 20 20 73 65 74 20 63 6f 6e 76  ..      set conv
0390: 65 72 74 69 62 6c 65 20 5b 6f 62 6a 65 63 74 20  ertible [object 
03a0: 69 6e 76 6f 6b 65 20 2d 63 72 65 61 74 65 20 2d  invoke -create -
03b0: 61 6c 69 61 73 20 5c 0d 0a 20 20 20 20 20 20 20  alias \..       
03c0: 20 20 20 2d 66 6c 61 67 73 20 7b 3a 53 74 61 74     -flags {:Stat
03d0: 69 63 20 50 75 62 6c 69 63 20 47 65 74 46 69 65  ic Public GetFie
03e0: 6c 64 7d 20 2d 72 65 74 75 72 6e 74 79 70 65 20  ld} -returntype 
03f0: 49 43 6f 6e 76 65 72 74 69 62 6c 65 20 5c 0d 0a  IConvertible \..
0400: 20 20 20 20 20 20 20 20 20 20 53 51 4c 69 74 65            SQLite
0410: 45 72 72 6f 72 43 6f 64 65 20 24 6e 61 6d 65 5d  ErrorCode $name]
0420: 0d 0a 0d 0a 20 20 20 20 20 20 6c 61 70 70 65 6e  ....      lappen
0430: 64 20 72 65 73 75 6c 74 20 5b 6c 69 73 74 20 24  d result [list $
0440: 6e 61 6d 65 20 5b 24 63 6f 6e 76 65 72 74 69 62  name [$convertib
0450: 6c 65 20 54 6f 55 49 6e 74 36 34 20 6e 75 6c 6c  le ToUInt64 null
0460: 5d 5d 0d 0a 20 20 20 20 7d 0d 0a 20 20 7d 0d 0a  ]]..    }..  }..
0470: 0d 0a 20 20 6a 6f 69 6e 20 24 72 65 73 75 6c 74  ..  join $result
0480: 20 5c 6e 0d 0a 7d 20 2d 63 6c 65 61 6e 75 70 20   \n..} -cleanup 
0490: 7b 0d 0a 20 20 6f 62 6a 65 63 74 20 75 6e 69 6d  {..  object unim
04a0: 70 6f 72 74 20 2d 69 6d 70 6f 72 74 70 61 74 74  port -importpatt
04b0: 65 72 6e 20 53 79 73 74 65 6d 2e 44 61 74 61 2e  ern System.Data.
04c0: 53 51 4c 69 74 65 0d 0a 0d 0a 20 20 75 6e 73 65  SQLite....  unse
04d0: 74 20 2d 6e 6f 63 6f 6d 70 6c 61 69 6e 20 72 65  t -nocomplain re
04e0: 73 75 6c 74 20 63 6f 6e 76 65 72 74 69 62 6c 65  sult convertible
04f0: 20 6e 61 6d 65 0d 0a 7d 20 2d 63 6f 6e 73 74 72   name..} -constr
0500: 61 69 6e 74 73 20 7b 65 61 67 6c 65 20 63 6f 6d  aints {eagle com
0510: 6d 61 6e 64 2e 6f 62 6a 65 63 74 20 53 79 73 74  mand.object Syst
0520: 65 6d 2e 44 61 74 61 2e 53 51 4c 69 74 65 7d 20  em.Data.SQLite} 
0530: 2d 72 65 73 75 6c 74 20 7b 41 62 6f 72 74 20 34  -result {Abort 4
0540: 0d 0a 41 62 6f 72 74 5f 52 6f 6c 6c 62 61 63 6b  ..Abort_Rollback
0550: 20 35 31 36 0d 0a 41 75 74 68 20 32 33 0d 0a 41   516..Auth 23..A
0560: 75 74 68 5f 55 73 65 72 20 32 37 39 0d 0a 42 75  uth_User 279..Bu
0570: 73 79 20 35 0d 0a 42 75 73 79 5f 52 65 63 6f 76  sy 5..Busy_Recov
0580: 65 72 79 20 32 36 31 0d 0a 42 75 73 79 5f 53 6e  ery 261..Busy_Sn
0590: 61 70 73 68 6f 74 20 35 31 37 0d 0a 43 61 6e 74  apshot 517..Cant
05a0: 4f 70 65 6e 20 31 34 0d 0a 43 61 6e 74 4f 70 65  Open 14..CantOpe
05b0: 6e 5f 43 6f 6e 76 50 61 74 68 20 31 30 33 38 0d  n_ConvPath 1038.
05c0: 0a 43 61 6e 74 4f 70 65 6e 5f 46 75 6c 6c 50 61  .CantOpen_FullPa
05d0: 74 68 20 37 38 32 0d 0a 43 61 6e 74 4f 70 65 6e  th 782..CantOpen
05e0: 5f 49 73 44 69 72 20 35 32 36 0d 0a 43 61 6e 74  _IsDir 526..Cant
05f0: 4f 70 65 6e 5f 4e 6f 54 65 6d 70 44 69 72 20 32  Open_NoTempDir 2
0600: 37 30 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 20 31  70..Constraint 1
0610: 39 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 5f 43 68  9..Constraint_Ch
0620: 65 63 6b 20 32 37 35 0d 0a 43 6f 6e 73 74 72 61  eck 275..Constra
0630: 69 6e 74 5f 43 6f 6d 6d 69 74 48 6f 6f 6b 20 35  int_CommitHook 5
0640: 33 31 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 5f 46  31..Constraint_F
0650: 6f 72 65 69 67 6e 4b 65 79 20 37 38 37 0d 0a 43  oreignKey 787..C
0660: 6f 6e 73 74 72 61 69 6e 74 5f 46 75 6e 63 74 69  onstraint_Functi
0670: 6f 6e 20 31 30 34 33 0d 0a 43 6f 6e 73 74 72 61  on 1043..Constra
0680: 69 6e 74 5f 4e 6f 74 4e 75 6c 6c 20 31 32 39 39  int_NotNull 1299
0690: 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 5f 50 72 69  ..Constraint_Pri
06a0: 6d 61 72 79 4b 65 79 20 31 35 35 35 0d 0a 43 6f  maryKey 1555..Co
06b0: 6e 73 74 72 61 69 6e 74 5f 52 6f 77 49 64 20 32  nstraint_RowId 2
06c0: 35 37 39 0d 0a 43 6f 6e 73 74 72 61 69 6e 74 5f  579..Constraint_
06d0: 54 72 69 67 67 65 72 20 31 38 31 31 0d 0a 43 6f  Trigger 1811..Co
06e0: 6e 73 74 72 61 69 6e 74 5f 55 6e 69 71 75 65 20  nstraint_Unique 
06f0: 32 30 36 37 0d 0a 43 6f 6e 73 74 72 61 69 6e 74  2067..Constraint
0700: 5f 56 74 61 62 20 32 33 32 33 0d 0a 43 6f 72 72  _Vtab 2323..Corr
0710: 75 70 74 20 31 31 0d 0a 43 6f 72 72 75 70 74 5f  upt 11..Corrupt_
0720: 56 74 61 62 20 32 36 37 0d 0a 44 6f 6e 65 20 31  Vtab 267..Done 1
0730: 30 31 0d 0a 45 6d 70 74 79 20 31 36 0d 0a 45 72  01..Empty 16..Er
0740: 72 6f 72 20 31 0d 0a 45 72 72 6f 72 5f 4d 69 73  ror 1..Error_Mis
0750: 73 69 6e 67 5f 43 6f 6c 6c 53 65 71 20 32 35 37  sing_CollSeq 257
0760: 0d 0a 45 72 72 6f 72 5f 52 65 74 72 79 20 35 31  ..Error_Retry 51
0770: 33 0d 0a 46 6f 72 6d 61 74 20 32 34 0d 0a 46 75  3..Format 24..Fu
0780: 6c 6c 20 31 33 0d 0a 49 6e 74 65 72 6e 61 6c 20  ll 13..Internal 
0790: 32 0d 0a 49 6e 74 65 72 72 75 70 74 20 39 0d 0a  2..Interrupt 9..
07a0: 49 6f 45 72 72 20 31 30 0d 0a 49 6f 45 72 72 5f  IoErr 10..IoErr_
07b0: 41 63 63 65 73 73 20 33 33 33 38 0d 0a 49 6f 45  Access 3338..IoE
07c0: 72 72 5f 41 75 74 68 20 37 31 37 38 0d 0a 49 6f  rr_Auth 7178..Io
07d0: 45 72 72 5f 42 65 67 69 6e 5f 41 74 6f 6d 69 63  Err_Begin_Atomic
07e0: 20 37 34 33 34 0d 0a 49 6f 45 72 72 5f 42 6c 6f   7434..IoErr_Blo
07f0: 63 6b 65 64 20 32 38 32 36 0d 0a 49 6f 45 72 72  cked 2826..IoErr
0800: 5f 43 68 65 63 6b 52 65 73 65 72 76 65 64 4c 6f  _CheckReservedLo
0810: 63 6b 20 33 35 39 34 0d 0a 49 6f 45 72 72 5f 43  ck 3594..IoErr_C
0820: 6c 6f 73 65 20 34 31 30 36 0d 0a 49 6f 45 72 72  lose 4106..IoErr
0830: 5f 43 6f 6d 6d 69 74 5f 41 74 6f 6d 69 63 20 37  _Commit_Atomic 7
0840: 36 39 30 0d 0a 49 6f 45 72 72 5f 43 6f 6e 76 50  690..IoErr_ConvP
0850: 61 74 68 20 36 36 36 36 0d 0a 49 6f 45 72 72 5f  ath 6666..IoErr_
0860: 44 65 6c 65 74 65 20 32 35 37 30 0d 0a 49 6f 45  Delete 2570..IoE
0870: 72 72 5f 44 65 6c 65 74 65 5f 4e 6f 45 6e 74 20  rr_Delete_NoEnt 
0880: 35 38 39 38 0d 0a 49 6f 45 72 72 5f 44 69 72 5f  5898..IoErr_Dir_
0890: 43 6c 6f 73 65 20 34 33 36 32 0d 0a 49 6f 45 72  Close 4362..IoEr
08a0: 72 5f 44 69 72 5f 46 73 79 6e 63 20 31 32 39 30  r_Dir_Fsync 1290
08b0: 0d 0a 49 6f 45 72 72 5f 46 73 74 61 74 20 31 38  ..IoErr_Fstat 18
08c0: 30 32 0d 0a 49 6f 45 72 72 5f 46 73 79 6e 63 20  02..IoErr_Fsync 
08d0: 31 30 33 34 0d 0a 49 6f 45 72 72 5f 47 65 74 54  1034..IoErr_GetT
08e0: 65 6d 70 50 61 74 68 20 36 34 31 30 0d 0a 49 6f  empPath 6410..Io
08f0: 45 72 72 5f 4c 6f 63 6b 20 33 38 35 30 0d 0a 49  Err_Lock 3850..I
0900: 6f 45 72 72 5f 4d 6d 61 70 20 36 31 35 34 0d 0a  oErr_Mmap 6154..
0910: 49 6f 45 72 72 5f 4e 6f 4d 65 6d 20 33 30 38 32  IoErr_NoMem 3082
0920: 0d 0a 49 6f 45 72 72 5f 52 64 4c 6f 63 6b 20 32  ..IoErr_RdLock 2
0930: 33 31 34 0d 0a 49 6f 45 72 72 5f 52 65 61 64 20  314..IoErr_Read 
0940: 32 36 36 0d 0a 49 6f 45 72 72 5f 52 6f 6c 6c 62  266..IoErr_Rollb
0950: 61 63 6b 5f 41 74 6f 6d 69 63 20 37 39 34 36 0d  ack_Atomic 7946.
0960: 0a 49 6f 45 72 72 5f 53 65 65 6b 20 35 36 34 32  .IoErr_Seek 5642
0970: 0d 0a 49 6f 45 72 72 5f 53 68 6d 4c 6f 63 6b 20  ..IoErr_ShmLock 
0980: 35 31 33 30 0d 0a 49 6f 45 72 72 5f 53 68 6d 4d  5130..IoErr_ShmM
0990: 61 70 20 35 33 38 36 0d 0a 49 6f 45 72 72 5f 53  ap 5386..IoErr_S
09a0: 68 6d 4f 70 65 6e 20 34 36 31 38 0d 0a 49 6f 45  hmOpen 4618..IoE
09b0: 72 72 5f 53 68 6d 53 69 7a 65 20 34 38 37 34 0d  rr_ShmSize 4874.
09c0: 0a 49 6f 45 72 72 5f 53 68 6f 72 74 5f 52 65 61  .IoErr_Short_Rea
09d0: 64 20 35 32 32 0d 0a 49 6f 45 72 72 5f 54 72 75  d 522..IoErr_Tru
09e0: 6e 63 61 74 65 20 31 35 34 36 0d 0a 49 6f 45 72  ncate 1546..IoEr
09f0: 72 5f 55 6e 6c 6f 63 6b 20 32 30 35 38 0d 0a 49  r_Unlock 2058..I
0a00: 6f 45 72 72 5f 56 4e 6f 64 65 20 36 39 32 32 0d  oErr_VNode 6922.
0a10: 0a 49 6f 45 72 72 5f 57 72 69 74 65 20 37 37 38  .IoErr_Write 778
0a20: 0d 0a 4c 6f 63 6b 65 64 20 36 0d 0a 4c 6f 63 6b  ..Locked 6..Lock
0a30: 65 64 5f 53 68 61 72 65 64 43 61 63 68 65 20 32  ed_SharedCache 2
0a40: 36 32 0d 0a 4d 69 73 6d 61 74 63 68 20 32 30 0d  62..Mismatch 20.
0a50: 0a 4d 69 73 75 73 65 20 32 31 0d 0a 4e 6f 4c 66  .Misuse 21..NoLf
0a60: 73 20 32 32 0d 0a 4e 6f 4d 65 6d 20 37 0d 0a 4e  s 22..NoMem 7..N
0a70: 6f 74 41 44 62 20 32 36 0d 0a 4e 6f 74 46 6f 75  otADb 26..NotFou
0a80: 6e 64 20 31 32 0d 0a 4e 6f 74 69 63 65 20 32 37  nd 12..Notice 27
0a90: 0d 0a 4e 6f 74 69 63 65 5f 52 65 63 6f 76 65 72  ..Notice_Recover
0aa0: 5f 52 6f 6c 6c 62 61 63 6b 20 35 33 39 0d 0a 4e  _Rollback 539..N
0ab0: 6f 74 69 63 65 5f 52 65 63 6f 76 65 72 5f 57 61  otice_Recover_Wa
0ac0: 6c 20 32 38 33 0d 0a 4f 6b 20 30 0d 0a 4f 6b 5f  l 283..Ok 0..Ok_
0ad0: 4c 6f 61 64 5f 50 65 72 6d 61 6e 65 6e 74 6c 79  Load_Permanently
0ae0: 20 32 35 36 0d 0a 50 65 72 6d 20 33 0d 0a 50 72   256..Perm 3..Pr
0af0: 6f 74 6f 63 6f 6c 20 31 35 0d 0a 52 61 6e 67 65  otocol 15..Range
0b00: 20 32 35 0d 0a 52 65 61 64 4f 6e 6c 79 20 38 0d   25..ReadOnly 8.
0b10: 0a 52 65 61 64 4f 6e 6c 79 5f 43 61 6e 74 49 6e  .ReadOnly_CantIn
0b20: 69 74 20 31 32 38 38 0d 0a 52 65 61 64 4f 6e 6c  it 1288..ReadOnl
0b30: 79 5f 43 61 6e 74 4c 6f 63 6b 20 35 32 30 0d 0a  y_CantLock 520..
0b40: 52 65 61 64 4f 6e 6c 79 5f 44 62 4d 6f 76 65 64  ReadOnly_DbMoved
0b50: 20 31 30 33 32 0d 0a 52 65 61 64 4f 6e 6c 79 5f   1032..ReadOnly_
0b60: 44 69 72 65 63 74 6f 72 79 20 31 35 34 34 0d 0a  Directory 1544..
0b70: 52 65 61 64 4f 6e 6c 79 5f 52 65 63 6f 76 65 72  ReadOnly_Recover
0b80: 79 20 32 36 34 0d 0a 52 65 61 64 4f 6e 6c 79 5f  y 264..ReadOnly_
0b90: 52 6f 6c 6c 62 61 63 6b 20 37 37 36 0d 0a 52 6f  Rollback 776..Ro
0ba0: 77 20 31 30 30 0d 0a 53 63 68 65 6d 61 20 31 37  w 100..Schema 17
0bb0: 0d 0a 54 6f 6f 42 69 67 20 31 38 0d 0a 57 61 72  ..TooBig 18..War
0bc0: 6e 69 6e 67 20 32 38 0d 0a 57 61 72 6e 69 6e 67  ning 28..Warning
0bd0: 5f 41 75 74 6f 49 6e 64 65 78 20 32 38 34 7d 7d  _AutoIndex 284}}
0be0: 0d 0a 0d 0a 23 23 23 23 23 23 23 23 23 23 23 23  ....############
0bf0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c00: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c10: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0c30: 23 23 23 0d 0a 0d 0a 72 75 6e 53 51 4c 69 74 65  ###....runSQLite
0c40: 54 65 73 74 45 70 69 6c 6f 67 75 65 0d 0a 72 75  TestEpilogue..ru
0c50: 6e 54 65 73 74 45 70 69 6c 6f 67 75 65 0d 0a     nTestEpilogue..