AryaWu/sqlite
0
1# 2001 September 152#3# The author disclaims copyright to this source code. In place of4# a legal notice, here is a blessing:5#6# May you do good and not evil.7# May you find forgiveness for yourself and forgive others.8# May you share freely, never taking more than you give.9#10#***********************************************************************11# This file implements regression tests for SQLite library. The12# focus of this file is testing the sqlite_*_printf() interface.13#14# $Id: printf.test,v 1.31 2009/02/01 00:21:10 drh Exp $15 16set testdir [file dirname $argv0]17source $testdir/tester.tcl18 19do_test printf-1.1.1 {20 sqlite3_mprintf_int {abc: %d %x %o :xyz}\21 1 1 122} {abc: 1 1 1 :xyz}23do_test printf-1.1.2 {24 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\25 1 1 126} {abc: ( 1) ( 1) ( 1) :xyz}27do_test printf-1.1.3 {28 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\29 1 1 130} {abc: (1 ) (1 ) (1 ) :xyz}31do_test printf-1.1.4 {32 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\33 1 1 134} {abc: ( +1) ( 1) ( 1) :xyz}35do_test printf-1.1.5 {36 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\37 1 1 138} {abc: (000001) (000001) (000001) :xyz}39do_test printf-1.1.6 {40 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\41 1 1 142} {abc: ( 1) ( 1) ( 1) :xyz}43do_test printf-1.1.7 {44 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\45 1 1 146} {abc: ( 1) ( 0x1) ( 01) :xyz}47do_test printf-1.2.1 {48 sqlite3_mprintf_int {abc: %d %x %o :xyz}\49 2 2 250} {abc: 2 2 2 :xyz}51do_test printf-1.2.2 {52 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\53 2 2 254} {abc: ( 2) ( 2) ( 2) :xyz}55do_test printf-1.2.3 {56 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\57 2 2 258} {abc: (2 ) (2 ) (2 ) :xyz}59do_test printf-1.2.4 {60 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\61 2 2 262} {abc: ( +2) ( 2) ( 2) :xyz}63do_test printf-1.2.5 {64 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\65 2 2 266} {abc: (000002) (000002) (000002) :xyz}67do_test printf-1.2.6 {68 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\69 2 2 270} {abc: ( 2) ( 2) ( 2) :xyz}71do_test printf-1.2.7 {72 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\73 2 2 274} {abc: ( 2) ( 0x2) ( 02) :xyz}75do_test printf-1.3.1 {76 sqlite3_mprintf_int {abc: %d %x %o :xyz}\77 5 5 578} {abc: 5 5 5 :xyz}79do_test printf-1.3.2 {80 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\81 5 5 582} {abc: ( 5) ( 5) ( 5) :xyz}83do_test printf-1.3.3 {84 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\85 5 5 586} {abc: (5 ) (5 ) (5 ) :xyz}87do_test printf-1.3.4 {88 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\89 5 5 590} {abc: ( +5) ( 5) ( 5) :xyz}91do_test printf-1.3.5 {92 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\93 5 5 594} {abc: (000005) (000005) (000005) :xyz}95do_test printf-1.3.6 {96 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\97 5 5 598} {abc: ( 5) ( 5) ( 5) :xyz}99do_test printf-1.3.7 {100 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\101 5 5 5102} {abc: ( 5) ( 0x5) ( 05) :xyz}103do_test printf-1.4.1 {104 sqlite3_mprintf_int {abc: %d %x %o :xyz}\105 10 10 10106} {abc: 10 a 12 :xyz}107do_test printf-1.4.2 {108 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\109 10 10 10110} {abc: ( 10) ( a) ( 12) :xyz}111do_test printf-1.4.3 {112 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\113 10 10 10114} {abc: (10 ) (a ) (12 ) :xyz}115do_test printf-1.4.4 {116 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\117 10 10 10118} {abc: ( +10) ( a) ( 12) :xyz}119do_test printf-1.4.5 {120 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\121 10 10 10122} {abc: (000010) (00000a) (000012) :xyz}123do_test printf-1.4.6 {124 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\125 10 10 10126} {abc: ( 10) ( a) ( 12) :xyz}127do_test printf-1.4.7 {128 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\129 10 10 10130} {abc: ( 10) ( 0xa) ( 012) :xyz}131do_test printf-1.5.1 {132 sqlite3_mprintf_int {abc: %d %x %o :xyz}\133 99 99 99134} {abc: 99 63 143 :xyz}135do_test printf-1.5.2 {136 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\137 99 99 99138} {abc: ( 99) ( 63) ( 143) :xyz}139do_test printf-1.5.3 {140 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\141 99 99 99142} {abc: (99 ) (63 ) (143 ) :xyz}143do_test printf-1.5.4 {144 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\145 99 99 99146} {abc: ( +99) ( 63) ( 143) :xyz}147do_test printf-1.5.5 {148 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\149 99 99 99150} {abc: (000099) (000063) (000143) :xyz}151do_test printf-1.5.6 {152 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\153 99 99 99154} {abc: ( 99) ( 63) ( 143) :xyz}155do_test printf-1.5.7 {156 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\157 99 99 99158} {abc: ( 99) ( 0x63) ( 0143) :xyz}159do_test printf-1.6.1 {160 sqlite3_mprintf_int {abc: %d %x %o :xyz}\161 100 100 100162} {abc: 100 64 144 :xyz}163do_test printf-1.6.2 {164 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\165 100 100 100166} {abc: ( 100) ( 64) ( 144) :xyz}167do_test printf-1.6.3 {168 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\169 100 100 100170} {abc: (100 ) (64 ) (144 ) :xyz}171do_test printf-1.6.4 {172 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\173 100 100 100174} {abc: ( +100) ( 64) ( 144) :xyz}175do_test printf-1.6.5 {176 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\177 100 100 100178} {abc: (000100) (000064) (000144) :xyz}179do_test printf-1.6.6 {180 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\181 100 100 100182} {abc: ( 100) ( 64) ( 144) :xyz}183do_test printf-1.6.7 {184 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\185 100 100 100186} {abc: ( 100) ( 0x64) ( 0144) :xyz}187do_test printf-1.7.1 {188 sqlite3_mprintf_int {abc: %d %x %o :xyz}\189 1000000 1000000 1000000190} {abc: 1000000 f4240 3641100 :xyz}191do_test printf-1.7.2 {192 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\193 1000000 1000000 1000000194} {abc: (1000000) ( f4240) (3641100) :xyz}195do_test printf-1.7.3 {196 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\197 1000000 1000000 1000000198} {abc: (1000000) (f4240 ) (3641100) :xyz}199do_test printf-1.7.4 {200 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\201 1000000 1000000 1000000202} {abc: (+1000000) ( f4240) (3641100) :xyz}203do_test printf-1.7.5 {204 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\205 1000000 1000000 1000000206} {abc: (1000000) (0f4240) (3641100) :xyz}207do_test printf-1.7.6 {208 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\209 1000000 1000000 1000000210} {abc: ( 1000000) ( f4240) (3641100) :xyz}211do_test printf-1.7.7 {212 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\213 1000000 1000000 1000000214} {abc: (1000000) (0xf4240) (03641100) :xyz}215do_test printf-1.8.1 {216 sqlite3_mprintf_int {abc: %d %x %o :xyz}\217 999999999 999999999 999999999218} {abc: 999999999 3b9ac9ff 7346544777 :xyz}219do_test printf-1.8.2 {220 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\221 999999999 999999999 999999999222} {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}223do_test printf-1.8.3 {224 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\225 999999999 999999999 999999999226} {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}227do_test printf-1.8.4 {228 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\229 999999999 999999999 999999999230} {abc: (+999999999) (3b9ac9ff) (7346544777) :xyz}231do_test printf-1.8.5 {232 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\233 999999999 999999999 999999999234} {abc: (999999999) (3b9ac9ff) (7346544777) :xyz}235do_test printf-1.8.6 {236 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\237 999999999 999999999 999999999238} {abc: ( 999999999) (3b9ac9ff) (7346544777) :xyz}239do_test printf-1.8.7 {240 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\241 999999999 999999999 999999999242} {abc: (999999999) (0x3b9ac9ff) (07346544777) :xyz}243do_test printf-1.9.1 {244 sqlite3_mprintf_int {abc: %d %x %o :xyz}\245 0 0 0246} {abc: 0 0 0 :xyz}247do_test printf-1.9.2 {248 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\249 0 0 0250} {abc: ( 0) ( 0) ( 0) :xyz}251do_test printf-1.9.3 {252 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\253 0 0 0254} {abc: (0 ) (0 ) (0 ) :xyz}255do_test printf-1.9.4 {256 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\257 0 0 0258} {abc: ( +0) ( 0) ( 0) :xyz}259do_test printf-1.9.5 {260 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\261 0 0 0262} {abc: (000000) (000000) (000000) :xyz}263do_test printf-1.9.6 {264 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\265 0 0 0266} {abc: ( 0) ( 0) ( 0) :xyz}267do_test printf-1.9.7 {268 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\269 0 0 0270} {abc: ( 0) ( 0) ( 0) :xyz}271# 0xffffffff == -1272do_test printf-1.10.1 {273 sqlite3_mprintf_int {abc: %d %x %o :xyz}\274 0xffffffff 0xffffffff 0xffffffff275} {abc: -1 ffffffff 37777777777 :xyz}276do_test printf-1.10.2 {277 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\278 0xffffffff 0xffffffff 0xffffffff279} {abc: ( -1) (ffffffff) (37777777777) :xyz}280do_test printf-1.10.3 {281 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\282 0xffffffff 0xffffffff 0xffffffff283} {abc: (-1 ) (ffffffff) (37777777777) :xyz}284do_test printf-1.10.4 {285 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\286 0xffffffff 0xffffffff 0xffffffff287} {abc: ( -1) (ffffffff) (37777777777) :xyz}288do_test printf-1.10.5 {289 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\290 0xffffffff 0xffffffff 0xffffffff291} {abc: (-00001) (ffffffff) (37777777777) :xyz}292do_test printf-1.10.6 {293 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\294 0xffffffff 0xffffffff 0xffffffff295} {abc: ( -1) (ffffffff) (37777777777) :xyz}296do_test printf-1.10.7 {297 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\298 0xffffffff 0xffffffff 0xffffffff299} {abc: ( -1) (0xffffffff) (037777777777) :xyz}300# 0xfffffffe == -2301do_test printf-1.11.1 {302 sqlite3_mprintf_int {abc: %d %x %o :xyz}\303 0xfffffffe 0xfffffffe 0xfffffffe304} {abc: -2 fffffffe 37777777776 :xyz}305do_test printf-1.11.2 {306 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\307 0xfffffffe 0xfffffffe 0xfffffffe308} {abc: ( -2) (fffffffe) (37777777776) :xyz}309do_test printf-1.11.3 {310 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\311 0xfffffffe 0xfffffffe 0xfffffffe312} {abc: (-2 ) (fffffffe) (37777777776) :xyz}313do_test printf-1.11.4 {314 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\315 0xfffffffe 0xfffffffe 0xfffffffe316} {abc: ( -2) (fffffffe) (37777777776) :xyz}317do_test printf-1.11.5 {318 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\319 0xfffffffe 0xfffffffe 0xfffffffe320} {abc: (-00002) (fffffffe) (37777777776) :xyz}321do_test printf-1.11.6 {322 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\323 0xfffffffe 0xfffffffe 0xfffffffe324} {abc: ( -2) (fffffffe) (37777777776) :xyz}325do_test printf-1.11.7 {326 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\327 0xfffffffe 0xfffffffe 0xfffffffe328} {abc: ( -2) (0xfffffffe) (037777777776) :xyz}329# 0xfffffffb == -5330do_test printf-1.12.1 {331 sqlite3_mprintf_int {abc: %d %x %o :xyz}\332 0xfffffffb 0xfffffffb 0xfffffffb333} {abc: -5 fffffffb 37777777773 :xyz}334do_test printf-1.12.2 {335 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\336 0xfffffffb 0xfffffffb 0xfffffffb337} {abc: ( -5) (fffffffb) (37777777773) :xyz}338do_test printf-1.12.3 {339 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\340 0xfffffffb 0xfffffffb 0xfffffffb341} {abc: (-5 ) (fffffffb) (37777777773) :xyz}342do_test printf-1.12.4 {343 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\344 0xfffffffb 0xfffffffb 0xfffffffb345} {abc: ( -5) (fffffffb) (37777777773) :xyz}346do_test printf-1.12.5 {347 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\348 0xfffffffb 0xfffffffb 0xfffffffb349} {abc: (-00005) (fffffffb) (37777777773) :xyz}350do_test printf-1.12.6 {351 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\352 0xfffffffb 0xfffffffb 0xfffffffb353} {abc: ( -5) (fffffffb) (37777777773) :xyz}354do_test printf-1.12.7 {355 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\356 0xfffffffb 0xfffffffb 0xfffffffb357} {abc: ( -5) (0xfffffffb) (037777777773) :xyz}358# 0xfffffff6 == -10359do_test printf-1.13.1 {360 sqlite3_mprintf_int {abc: %d %x %o :xyz}\361 0xfffffff6 0xfffffff6 0xfffffff6362} {abc: -10 fffffff6 37777777766 :xyz}363do_test printf-1.13.2 {364 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\365 0xfffffff6 0xfffffff6 0xfffffff6366} {abc: ( -10) (fffffff6) (37777777766) :xyz}367do_test printf-1.13.3 {368 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\369 0xfffffff6 0xfffffff6 0xfffffff6370} {abc: (-10 ) (fffffff6) (37777777766) :xyz}371do_test printf-1.13.4 {372 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\373 0xfffffff6 0xfffffff6 0xfffffff6374} {abc: ( -10) (fffffff6) (37777777766) :xyz}375do_test printf-1.13.5 {376 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\377 0xfffffff6 0xfffffff6 0xfffffff6378} {abc: (-00010) (fffffff6) (37777777766) :xyz}379do_test printf-1.13.6 {380 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\381 0xfffffff6 0xfffffff6 0xfffffff6382} {abc: ( -10) (fffffff6) (37777777766) :xyz}383do_test printf-1.13.7 {384 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\385 0xfffffff6 0xfffffff6 0xfffffff6386} {abc: ( -10) (0xfffffff6) (037777777766) :xyz}387# 0xffffff9d == -99388do_test printf-1.14.1 {389 sqlite3_mprintf_int {abc: %d %x %o :xyz}\390 0xffffff9d 0xffffff9d 0xffffff9d391} {abc: -99 ffffff9d 37777777635 :xyz}392do_test printf-1.14.2 {393 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\394 0xffffff9d 0xffffff9d 0xffffff9d395} {abc: ( -99) (ffffff9d) (37777777635) :xyz}396do_test printf-1.14.3 {397 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\398 0xffffff9d 0xffffff9d 0xffffff9d399} {abc: (-99 ) (ffffff9d) (37777777635) :xyz}400do_test printf-1.14.4 {401 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\402 0xffffff9d 0xffffff9d 0xffffff9d403} {abc: ( -99) (ffffff9d) (37777777635) :xyz}404do_test printf-1.14.5 {405 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\406 0xffffff9d 0xffffff9d 0xffffff9d407} {abc: (-00099) (ffffff9d) (37777777635) :xyz}408do_test printf-1.14.6 {409 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\410 0xffffff9d 0xffffff9d 0xffffff9d411} {abc: ( -99) (ffffff9d) (37777777635) :xyz}412do_test printf-1.14.7 {413 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\414 0xffffff9d 0xffffff9d 0xffffff9d415} {abc: ( -99) (0xffffff9d) (037777777635) :xyz}416# 0xffffff9c == -100417do_test printf-1.15.1 {418 sqlite3_mprintf_int {abc: %d %x %o :xyz}\419 0xffffff9c 0xffffff9c 0xffffff9c420} {abc: -100 ffffff9c 37777777634 :xyz}421do_test printf-1.15.2 {422 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\423 0xffffff9c 0xffffff9c 0xffffff9c424} {abc: ( -100) (ffffff9c) (37777777634) :xyz}425do_test printf-1.15.3 {426 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\427 0xffffff9c 0xffffff9c 0xffffff9c428} {abc: (-100 ) (ffffff9c) (37777777634) :xyz}429do_test printf-1.15.4 {430 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\431 0xffffff9c 0xffffff9c 0xffffff9c432} {abc: ( -100) (ffffff9c) (37777777634) :xyz}433do_test printf-1.15.5 {434 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\435 0xffffff9c 0xffffff9c 0xffffff9c436} {abc: (-00100) (ffffff9c) (37777777634) :xyz}437do_test printf-1.15.6 {438 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\439 0xffffff9c 0xffffff9c 0xffffff9c440} {abc: ( -100) (ffffff9c) (37777777634) :xyz}441do_test printf-1.15.7 {442 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\443 0xffffff9c 0xffffff9c 0xffffff9c444} {abc: ( -100) (0xffffff9c) (037777777634) :xyz}445# 0xff676981 == -9999999446do_test printf-1.16.1 {447 sqlite3_mprintf_int {abc: %d %x %o :xyz}\448 0xff676981 0xff676981 0xff676981449} {abc: -9999999 ff676981 37731664601 :xyz}450do_test printf-1.16.2 {451 sqlite3_mprintf_int {abc: (%6d) (%6x) (%6o) :xyz}\452 0xff676981 0xff676981 0xff676981453} {abc: (-9999999) (ff676981) (37731664601) :xyz}454do_test printf-1.16.3 {455 sqlite3_mprintf_int {abc: (%-6d) (%-6x) (%-6o) :xyz}\456 0xff676981 0xff676981 0xff676981457} {abc: (-9999999) (ff676981) (37731664601) :xyz}458do_test printf-1.16.4 {459 sqlite3_mprintf_int {abc: (%+6d) (%+6x) (%+6o) :xyz}\460 0xff676981 0xff676981 0xff676981461} {abc: (-9999999) (ff676981) (37731664601) :xyz}462do_test printf-1.16.5 {463 sqlite3_mprintf_int {abc: (%06d) (%06x) (%06o) :xyz}\464 0xff676981 0xff676981 0xff676981465} {abc: (-9999999) (ff676981) (37731664601) :xyz}466do_test printf-1.16.6 {467 sqlite3_mprintf_int {abc: (% 6d) (% 6x) (% 6o) :xyz}\468 0xff676981 0xff676981 0xff676981469} {abc: (-9999999) (ff676981) (37731664601) :xyz}470do_test printf-1.16.7 {471 sqlite3_mprintf_int {abc: (%#6d) (%#6x) (%#6o) :xyz}\472 0xff676981 0xff676981 0xff676981473} {abc: (-9999999) (0xff676981) (037731664601) :xyz}474do_test printf-1.17.1 {475 sqlite3_mprintf_int {abd: %2147483647d %2147483647x %2147483647o} 1 1 1476} {}477do_test printf-1.17.2 {478 sqlite3_mprintf_int {abd: %*d %x} 2147483647 1 1479} {}480do_test printf-1.17.3 {481 sqlite3_mprintf_int {abd: %*d %x} -2147483648 1 1482} {abd: 1 1}483do_test printf-1.17.4 {484 sqlite3_mprintf_int {abd: %.2147483648d %x %x} 1 1 1485} {/.*/}486do_test printf-2.1.1.1 {487 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 0.001488} {abc: (0.0) :xyz}489do_test printf-2.1.1.2 {490 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 0.001491} {abc: (1.0e-03) :xyz}492do_test printf-2.1.1.3 {493 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 0.001494} {abc: (0.001) :xyz}495do_test printf-2.1.1.4 {496 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 0.001497} {abc: 1 1 (0.001) :xyz}498do_test printf-2.1.1.5 {499 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 0.001500} {abc: 1 1 (0.00100000) :xyz}501do_test printf-2.1.1.6 {502 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 0.001503} {abc: 1 1 (000000.001) :xyz}504do_test printf-2.1.1.7 {505 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 0.001506} {abc: 1 1 (0.0) :xyz}507do_test printf-2.1.1.8 {508 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 0.001509} {abc: 1 1 (1.0e-03) :xyz}510do_test printf-2.1.1.9 {511 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 0.001512} {abc: 1 1 (0.001) :xyz}513do_test printf-2.1.2.1 {514 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 1.0e-20515} {abc: (0.0) :xyz}516do_test printf-2.1.2.2 {517 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 1.0e-20518} {abc: (1.0e-20) :xyz}519do_test printf-2.1.2.3 {520 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 1.0e-20521} {abc: (1e-20) :xyz}522do_test printf-2.1.2.4 {523 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 1.0e-20524} {abc: 1 1 (1e-20) :xyz}525do_test printf-2.1.2.5 {526 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 1.0e-20527} {abc: 1 1 (1.00000e-20) :xyz}528do_test printf-2.1.2.6 {529 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 1.0e-20530} {abc: 1 1 (000001e-20) :xyz}531do_test printf-2.1.2.7 {532 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 1.0e-20533} {abc: 1 1 (0.0) :xyz}534do_test printf-2.1.2.8 {535 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 1.0e-20536} {abc: 1 1 (1.0e-20) :xyz}537do_test printf-2.1.2.9 {538 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 1.0e-20539} {abc: 1 1 (1e-20) :xyz}540if {$SQLITE_MAX_LENGTH<=[expr 1000*1000*1000]} {541 do_test printf-2.1.2.10 {542 sqlite3_mprintf_double {abc: %*.*f} 2000000000 1000000000 1.0e-20543 } {}544}545do_test printf-2.1.3.1 {546 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 1.0547} {abc: (1.0) :xyz}548do_test printf-2.1.3.2 {549 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 1.0550} {abc: (1.0e+00) :xyz}551do_test printf-2.1.3.3 {552 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 1.0553} {abc: (1) :xyz}554do_test printf-2.1.3.4 {555 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 1.0556} {abc: 1 1 (1) :xyz}557do_test printf-2.1.3.5 {558 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 1.0559} {abc: 1 1 (1.00000) :xyz}560do_test printf-2.1.3.6 {561 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 1.0562} {abc: 1 1 (0000000001) :xyz}563do_test printf-2.1.3.7 {564 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 1.0565} {abc: 1 1 (1.0) :xyz}566do_test printf-2.1.3.8 {567 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 1.0568} {abc: 1 1 (1.0e+00) :xyz}569do_test printf-2.1.3.9 {570 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 1.0571} {abc: 1 1 (1) :xyz}572do_test printf-2.1.4.1 {573 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 0.0574} {abc: (0.0) :xyz}575do_test printf-2.1.4.2 {576 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 0.0577} {abc: (0.0e+00) :xyz}578do_test printf-2.1.4.3 {579 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 0.0580} {abc: (0) :xyz}581do_test printf-2.1.4.4 {582 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 0.0583} {abc: 1 1 (0) :xyz}584do_test printf-2.1.4.5 {585 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 0.0586} {abc: 1 1 (0.00000) :xyz}587do_test printf-2.1.4.6 {588 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 0.0589} {abc: 1 1 (0000000000) :xyz}590do_test printf-2.1.4.7 {591 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 0.0592} {abc: 1 1 (0.0) :xyz}593do_test printf-2.1.4.8 {594 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 0.0595} {abc: 1 1 (0.0e+00) :xyz}596do_test printf-2.1.4.9 {597 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 0.0598} {abc: 1 1 (0) :xyz}599do_test printf-2.1.5.1 {600 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 100.0601} {abc: (100.0) :xyz}602do_test printf-2.1.5.2 {603 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 100.0604} {abc: (1.0e+02) :xyz}605do_test printf-2.1.5.3 {606 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 100.0607} {abc: (1e+02) :xyz}608do_test printf-2.1.5.4 {609 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 100.0610} {abc: 1 1 (100) :xyz}611do_test printf-2.1.5.5 {612 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 100.0613} {abc: 1 1 (100.000) :xyz}614do_test printf-2.1.5.6 {615 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 100.0616} {abc: 1 1 (0000000100) :xyz}617do_test printf-2.1.5.7 {618 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 100.0619} {abc: 1 1 (100.0) :xyz}620do_test printf-2.1.5.8 {621 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 100.0622} {abc: 1 1 (1.0e+02) :xyz}623do_test printf-2.1.5.9 {624 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 100.0625} {abc: 1 1 (1e+02) :xyz}626do_test printf-2.1.6.1 {627 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 9.99999628} {abc: (10.0) :xyz}629do_test printf-2.1.6.2 {630 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 9.99999631} {abc: (1.0e+01) :xyz}632do_test printf-2.1.6.3 {633 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 9.99999634} {abc: (1e+01) :xyz}635do_test printf-2.1.6.4 {636 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 9.99999637} {abc: 1 1 (9.99999) :xyz}638do_test printf-2.1.6.5 {639 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 9.99999640} {abc: 1 1 (9.99999) :xyz}641do_test printf-2.1.6.6 {642 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 9.99999643} {abc: 1 1 (0009.99999) :xyz}644do_test printf-2.1.6.7 {645 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 9.99999646} {abc: 1 1 (10.0) :xyz}647do_test printf-2.1.6.8 {648 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 9.99999649} {abc: 1 1 (1.0e+01) :xyz}650do_test printf-2.1.6.9 {651 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 9.99999652} {abc: 1 1 (1e+01) :xyz}653do_test printf-2.1.7.1 {654 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -0.00543655} {abc: (-0.0) :xyz}656do_test printf-2.1.7.2 {657 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -0.00543658} {abc: (-5.4e-03) :xyz}659do_test printf-2.1.7.3 {660 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -0.00543661} {abc: (-0.005) :xyz}662do_test printf-2.1.7.4 {663 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -0.00543664} {abc: 1 1 (-0.00543) :xyz}665do_test printf-2.1.7.5 {666 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -0.00543667} {abc: 1 1 (-0.00543000) :xyz}668do_test printf-2.1.7.6 {669 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -0.00543670} {abc: 1 1 (-000.00543) :xyz}671do_test printf-2.1.7.7 {672 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -0.00543673} {abc: 1 1 (-0.0) :xyz}674do_test printf-2.1.7.8 {675 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -0.00543676} {abc: 1 1 (-5.4e-03) :xyz}677do_test printf-2.1.7.9 {678 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -0.00543679} {abc: 1 1 (-0.005) :xyz}680do_test printf-2.1.8.1 {681 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -1.0682} {abc: (-1.0) :xyz}683do_test printf-2.1.8.2 {684 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -1.0685} {abc: (-1.0e+00) :xyz}686do_test printf-2.1.8.3 {687 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -1.0688} {abc: (-1) :xyz}689do_test printf-2.1.8.4 {690 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -1.0691} {abc: 1 1 (-1) :xyz}692do_test printf-2.1.8.5 {693 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -1.0694} {abc: 1 1 (-1.00000) :xyz}695do_test printf-2.1.8.6 {696 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -1.0697} {abc: 1 1 (-000000001) :xyz}698do_test printf-2.1.8.7 {699 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -1.0700} {abc: 1 1 (-1.0) :xyz}701do_test printf-2.1.8.8 {702 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -1.0703} {abc: 1 1 (-1.0e+00) :xyz}704do_test printf-2.1.8.9 {705 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -1.0706} {abc: 1 1 (-1) :xyz}707do_test printf-2.1.9.1 {708 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -99.99999709} {abc: (-100.0) :xyz}710do_test printf-2.1.9.2 {711 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -99.99999712} {abc: (-1.0e+02) :xyz}713do_test printf-2.1.9.3 {714 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -99.99999715} {abc: (-1e+02) :xyz}716do_test printf-2.1.9.4 {717 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -99.99999718} {abc: 1 1 (-100) :xyz}719do_test printf-2.1.9.5 {720 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -99.99999721} {abc: 1 1 (-100.000) :xyz}722do_test printf-2.1.9.6 {723 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -99.99999724} {abc: 1 1 (-000000100) :xyz}725do_test printf-2.1.9.7 {726 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -99.99999727} {abc: 1 1 (-100.0) :xyz}728do_test printf-2.1.9.8 {729 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -99.99999730} {abc: 1 1 (-1.0e+02) :xyz}731do_test printf-2.1.9.9 {732 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -99.99999733} {abc: 1 1 (-1e+02) :xyz}734do_test printf-2.1.10.1 {735 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 3.14e+9736} {abc: (3140000000.0) :xyz}737do_test printf-2.1.10.2 {738 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 3.14e+9739} {abc: (3.1e+09) :xyz}740do_test printf-2.1.10.3 {741 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 3.14e+9742} {abc: (3e+09) :xyz}743do_test printf-2.1.10.4 {744 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 3.14e+9745} {abc: 1 1 (3.14e+09) :xyz}746do_test printf-2.1.10.5 {747 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 3.14e+9748} {abc: 1 1 (3.14000e+09) :xyz}749do_test printf-2.1.10.6 {750 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 3.14e+9751} {abc: 1 1 (003.14e+09) :xyz}752do_test printf-2.1.10.7 {753 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 3.14e+9754} {abc: 1 1 (3140000000.0) :xyz}755do_test printf-2.1.10.8 {756 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 3.14e+9757} {abc: 1 1 (3.1e+09) :xyz}758do_test printf-2.1.10.9 {759 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 3.14e+9760} {abc: 1 1 (3e+09) :xyz}761do_test printf-2.1.11.2 {762 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -4.72732e+88763} {abc: (-4.7e+88) :xyz}764do_test printf-2.1.11.3 {765 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -4.72732e+88766} {abc: (-5e+88) :xyz}767do_test printf-2.1.11.4 {768 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -4.72732e+88769} {abc: 1 1 (-4.72732e+88) :xyz}770do_test printf-2.1.11.5 {771 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -4.72732e+88772} {abc: 1 1 (-4.72732e+88) :xyz}773do_test printf-2.1.11.6 {774 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -4.72732e+88775} {abc: 1 1 (-4.72732e+88) :xyz}776do_test printf-2.1.11.8 {777 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -4.72732e+88778} {abc: 1 1 (-4.7e+88) :xyz}779do_test printf-2.1.11.9 {780 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -4.72732e+88781} {abc: 1 1 (-5e+88) :xyz}782do_test printf-2.1.12.2 {783 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 9.87991e+143784} {abc: (9.9e+143) :xyz}785do_test printf-2.1.12.3 {786 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 9.87991e+143787} {abc: (1e+144) :xyz}788do_test printf-2.1.12.4 {789 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 9.87991e+143790} {abc: 1 1 (9.87991e+143) :xyz}791do_test printf-2.1.12.5 {792 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 9.87991e+143793} {abc: 1 1 (9.87991e+143) :xyz}794do_test printf-2.1.12.6 {795 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 9.87991e+143796} {abc: 1 1 (9.87991e+143) :xyz}797do_test printf-2.1.12.8 {798 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 9.87991e+143799} {abc: 1 1 (9.9e+143) :xyz}800do_test printf-2.1.12.9 {801 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 9.87991e+143802} {abc: 1 1 (1e+144) :xyz}803do_test printf-2.1.13.1 {804 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 -6.287291e-9805} {abc: (-0.0) :xyz}806do_test printf-2.1.13.2 {807 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 -6.287291e-9808} {abc: (-6.3e-09) :xyz}809do_test printf-2.1.13.3 {810 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 -6.287291e-9811} {abc: (-6e-09) :xyz}812do_test printf-2.1.13.4 {813 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 -6.287291e-9814} {abc: 1 1 (-6.28729e-09) :xyz}815do_test printf-2.1.13.5 {816 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 -6.287291e-9817} {abc: 1 1 (-6.28729e-09) :xyz}818do_test printf-2.1.13.6 {819 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 -6.287291e-9820} {abc: 1 1 (-6.28729e-09) :xyz}821do_test printf-2.1.13.7 {822 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 -6.287291e-9823} {abc: 1 1 (-0.0) :xyz}824do_test printf-2.1.13.8 {825 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 -6.287291e-9826} {abc: 1 1 (-6.3e-09) :xyz}827do_test printf-2.1.13.9 {828 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 -6.287291e-9829} {abc: 1 1 (-6e-09) :xyz}830do_test printf-2.1.14.1 {831 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 1 1 3.38826392e-110832} {abc: (0.0) :xyz}833do_test printf-2.1.14.2 {834 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 1 1 3.38826392e-110835} {abc: (3.4e-110) :xyz}836do_test printf-2.1.14.3 {837 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 1 1 3.38826392e-110838} {abc: (3e-110) :xyz}839do_test printf-2.1.14.4 {840 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 1 1 3.38826392e-110841} {abc: 1 1 (3.38826e-110) :xyz}842do_test printf-2.1.14.5 {843 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 1 1 3.38826392e-110844} {abc: 1 1 (3.38826e-110) :xyz}845do_test printf-2.1.14.6 {846 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 1 1 3.38826392e-110847} {abc: 1 1 (3.38826e-110) :xyz}848do_test printf-2.1.14.7 {849 sqlite3_mprintf_double {abc: %d %d (%1.1f) :xyz} 1 1 3.38826392e-110850} {abc: 1 1 (0.0) :xyz}851do_test printf-2.1.14.8 {852 sqlite3_mprintf_double {abc: %d %d (%1.1e) :xyz} 1 1 3.38826392e-110853} {abc: 1 1 (3.4e-110) :xyz}854do_test printf-2.1.14.9 {855 sqlite3_mprintf_double {abc: %d %d (%1.1g) :xyz} 1 1 3.38826392e-110856} {abc: 1 1 (3e-110) :xyz}857do_test printf-2.2.1.1 {858 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 0.001859} {abc: (0.00100) :xyz}860do_test printf-2.2.1.2 {861 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 0.001862} {abc: (1.00000e-03) :xyz}863do_test printf-2.2.1.3 {864 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 0.001865} {abc: (0.001) :xyz}866do_test printf-2.2.1.4 {867 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 0.001868} {abc: 5 5 (0.001) :xyz}869do_test printf-2.2.1.5 {870 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 0.001871} {abc: 5 5 (0.00100000) :xyz}872do_test printf-2.2.1.6 {873 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 0.001874} {abc: 5 5 (000000.001) :xyz}875do_test printf-2.2.1.7 {876 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 0.001877} {abc: 5 5 (0.00100) :xyz}878do_test printf-2.2.1.8 {879 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 0.001880} {abc: 5 5 (1.00000e-03) :xyz}881do_test printf-2.2.1.9 {882 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 0.001883} {abc: 5 5 (0.001) :xyz}884do_test printf-2.2.2.1 {885 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 1.0e-20886} {abc: (0.00000) :xyz}887do_test printf-2.2.2.2 {888 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 1.0e-20889} {abc: (1.00000e-20) :xyz}890do_test printf-2.2.2.3 {891 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 1.0e-20892} {abc: (1e-20) :xyz}893do_test printf-2.2.2.4 {894 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 1.0e-20895} {abc: 5 5 (1e-20) :xyz}896do_test printf-2.2.2.5 {897 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 1.0e-20898} {abc: 5 5 (1.00000e-20) :xyz}899do_test printf-2.2.2.6 {900 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 1.0e-20901} {abc: 5 5 (000001e-20) :xyz}902do_test printf-2.2.2.7 {903 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 1.0e-20904} {abc: 5 5 (0.00000) :xyz}905do_test printf-2.2.2.8 {906 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 1.0e-20907} {abc: 5 5 (1.00000e-20) :xyz}908do_test printf-2.2.2.9 {909 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 1.0e-20910} {abc: 5 5 (1e-20) :xyz}911do_test printf-2.2.3.1 {912 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 1.0913} {abc: (1.00000) :xyz}914do_test printf-2.2.3.2 {915 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 1.0916} {abc: (1.00000e+00) :xyz}917do_test printf-2.2.3.3 {918 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 1.0919} {abc: ( 1) :xyz}920do_test printf-2.2.3.4 {921 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 1.0922} {abc: 5 5 (1) :xyz}923do_test printf-2.2.3.5 {924 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 1.0925} {abc: 5 5 (1.00000) :xyz}926do_test printf-2.2.3.6 {927 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 1.0928} {abc: 5 5 (0000000001) :xyz}929do_test printf-2.2.3.7 {930 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 1.0931} {abc: 5 5 (1.00000) :xyz}932do_test printf-2.2.3.8 {933 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 1.0934} {abc: 5 5 (1.00000e+00) :xyz}935do_test printf-2.2.3.9 {936 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 1.0937} {abc: 5 5 ( 1) :xyz}938do_test printf-2.2.4.1 {939 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 0.0940} {abc: (0.00000) :xyz}941do_test printf-2.2.4.2 {942 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 0.0943} {abc: (0.00000e+00) :xyz}944do_test printf-2.2.4.3 {945 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 0.0946} {abc: ( 0) :xyz}947do_test printf-2.2.4.4 {948 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 0.0949} {abc: 5 5 (0) :xyz}950do_test printf-2.2.4.5 {951 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 0.0952} {abc: 5 5 (0.00000) :xyz}953do_test printf-2.2.4.6 {954 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 0.0955} {abc: 5 5 (0000000000) :xyz}956do_test printf-2.2.4.7 {957 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 0.0958} {abc: 5 5 (0.00000) :xyz}959do_test printf-2.2.4.8 {960 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 0.0961} {abc: 5 5 (0.00000e+00) :xyz}962do_test printf-2.2.4.9 {963 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 0.0964} {abc: 5 5 ( 0) :xyz}965do_test printf-2.2.5.1 {966 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 100.0967} {abc: (100.00000) :xyz}968do_test printf-2.2.5.2 {969 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 100.0970} {abc: (1.00000e+02) :xyz}971do_test printf-2.2.5.3 {972 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 100.0973} {abc: ( 100) :xyz}974do_test printf-2.2.5.4 {975 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 100.0976} {abc: 5 5 (100) :xyz}977do_test printf-2.2.5.5 {978 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 100.0979} {abc: 5 5 (100.000) :xyz}980do_test printf-2.2.5.6 {981 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 100.0982} {abc: 5 5 (0000000100) :xyz}983do_test printf-2.2.5.7 {984 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 100.0985} {abc: 5 5 (100.00000) :xyz}986do_test printf-2.2.5.8 {987 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 100.0988} {abc: 5 5 (1.00000e+02) :xyz}989do_test printf-2.2.5.9 {990 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 100.0991} {abc: 5 5 ( 100) :xyz}992do_test printf-2.2.6.1 {993 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 9.99999994} {abc: (9.99999) :xyz}995do_test printf-2.2.6.2 {996 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 9.99999997} {abc: (9.99999e+00) :xyz}998do_test printf-2.2.6.3 {999 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 9.999991000} {abc: ( 10) :xyz}1001do_test printf-2.2.6.4 {1002 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 9.999991003} {abc: 5 5 (9.99999) :xyz}1004do_test printf-2.2.6.5 {1005 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 9.999991006} {abc: 5 5 (9.99999) :xyz}1007do_test printf-2.2.6.6 {1008 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 9.999991009} {abc: 5 5 (0009.99999) :xyz}1010do_test printf-2.2.6.7 {1011 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 9.999991012} {abc: 5 5 (9.99999) :xyz}1013do_test printf-2.2.6.8 {1014 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 9.999991015} {abc: 5 5 (9.99999e+00) :xyz}1016do_test printf-2.2.6.9 {1017 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 9.999991018} {abc: 5 5 ( 10) :xyz}1019do_test printf-2.2.7.1 {1020 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -0.005431021} {abc: (-0.00543) :xyz}1022do_test printf-2.2.7.2 {1023 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -0.005431024} {abc: (-5.43000e-03) :xyz}1025do_test printf-2.2.7.3 {1026 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -0.005431027} {abc: (-0.00543) :xyz}1028do_test printf-2.2.7.4 {1029 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -0.005431030} {abc: 5 5 (-0.00543) :xyz}1031do_test printf-2.2.7.5 {1032 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -0.005431033} {abc: 5 5 (-0.00543000) :xyz}1034do_test printf-2.2.7.6 {1035 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -0.005431036} {abc: 5 5 (-000.00543) :xyz}1037do_test printf-2.2.7.7 {1038 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -0.005431039} {abc: 5 5 (-0.00543) :xyz}1040do_test printf-2.2.7.8 {1041 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -0.005431042} {abc: 5 5 (-5.43000e-03) :xyz}1043do_test printf-2.2.7.9 {1044 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -0.005431045} {abc: 5 5 (-0.00543) :xyz}1046do_test printf-2.2.8.1 {1047 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -1.01048} {abc: (-1.00000) :xyz}1049do_test printf-2.2.8.2 {1050 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -1.01051} {abc: (-1.00000e+00) :xyz}1052do_test printf-2.2.8.3 {1053 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -1.01054} {abc: ( -1) :xyz}1055do_test printf-2.2.8.4 {1056 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -1.01057} {abc: 5 5 (-1) :xyz}1058do_test printf-2.2.8.5 {1059 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -1.01060} {abc: 5 5 (-1.00000) :xyz}1061do_test printf-2.2.8.6 {1062 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -1.01063} {abc: 5 5 (-000000001) :xyz}1064do_test printf-2.2.8.7 {1065 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -1.01066} {abc: 5 5 (-1.00000) :xyz}1067do_test printf-2.2.8.8 {1068 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -1.01069} {abc: 5 5 (-1.00000e+00) :xyz}1070do_test printf-2.2.8.9 {1071 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -1.01072} {abc: 5 5 ( -1) :xyz}1073do_test printf-2.2.9.1 {1074 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -99.999991075} {abc: (-99.99999) :xyz}1076do_test printf-2.2.9.2 {1077 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -99.999991078} {abc: (-1.00000e+02) :xyz}1079do_test printf-2.2.9.3 {1080 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -99.999991081} {abc: ( -100) :xyz}1082do_test printf-2.2.9.4 {1083 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -99.999991084} {abc: 5 5 (-100) :xyz}1085do_test printf-2.2.9.5 {1086 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -99.999991087} {abc: 5 5 (-100.000) :xyz}1088do_test printf-2.2.9.6 {1089 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -99.999991090} {abc: 5 5 (-000000100) :xyz}1091do_test printf-2.2.9.7 {1092 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -99.999991093} {abc: 5 5 (-99.99999) :xyz}1094do_test printf-2.2.9.8 {1095 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -99.999991096} {abc: 5 5 (-1.00000e+02) :xyz}1097do_test printf-2.2.9.9 {1098 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -99.999991099} {abc: 5 5 ( -100) :xyz}1100do_test printf-2.2.10.1 {1101 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 3.14e+91102} {abc: (3140000000.00000) :xyz}1103do_test printf-2.2.10.2 {1104 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 3.14e+91105} {abc: (3.14000e+09) :xyz}1106do_test printf-2.2.10.3 {1107 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 3.14e+91108} {abc: (3.14e+09) :xyz}1109do_test printf-2.2.10.4 {1110 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 3.14e+91111} {abc: 5 5 (3.14e+09) :xyz}1112do_test printf-2.2.10.5 {1113 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 3.14e+91114} {abc: 5 5 (3.14000e+09) :xyz}1115do_test printf-2.2.10.6 {1116 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 3.14e+91117} {abc: 5 5 (003.14e+09) :xyz}1118do_test printf-2.2.10.7 {1119 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 3.14e+91120} {abc: 5 5 (3140000000.00000) :xyz}1121do_test printf-2.2.10.8 {1122 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 3.14e+91123} {abc: 5 5 (3.14000e+09) :xyz}1124do_test printf-2.2.10.9 {1125 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 3.14e+91126} {abc: 5 5 (3.14e+09) :xyz}1127do_test printf-2.2.11.2 {1128 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -4.72732e+881129} {abc: (-4.72732e+88) :xyz}1130do_test printf-2.2.11.3 {1131 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -4.72732e+881132} {abc: (-4.7273e+88) :xyz}1133do_test printf-2.2.11.4 {1134 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -4.72732e+881135} {abc: 5 5 (-4.72732e+88) :xyz}1136do_test printf-2.2.11.5 {1137 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -4.72732e+881138} {abc: 5 5 (-4.72732e+88) :xyz}1139do_test printf-2.2.11.6 {1140 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -4.72732e+881141} {abc: 5 5 (-4.72732e+88) :xyz}1142do_test printf-2.2.11.8 {1143 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -4.72732e+881144} {abc: 5 5 (-4.72732e+88) :xyz}1145do_test printf-2.2.11.9 {1146 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -4.72732e+881147} {abc: 5 5 (-4.7273e+88) :xyz}1148do_test printf-2.2.12.2 {1149 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 9.87991e+1431150} {abc: (9.87991e+143) :xyz}1151do_test printf-2.2.12.3 {1152 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 9.87991e+1431153} {abc: (9.8799e+143) :xyz}1154do_test printf-2.2.12.4 {1155 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 9.87991e+1431156} {abc: 5 5 (9.87991e+143) :xyz}1157do_test printf-2.2.12.5 {1158 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 9.87991e+1431159} {abc: 5 5 (9.87991e+143) :xyz}1160do_test printf-2.2.12.6 {1161 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 9.87991e+1431162} {abc: 5 5 (9.87991e+143) :xyz}1163do_test printf-2.2.12.8 {1164 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 9.87991e+1431165} {abc: 5 5 (9.87991e+143) :xyz}1166do_test printf-2.2.12.9 {1167 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 9.87991e+1431168} {abc: 5 5 (9.8799e+143) :xyz}1169do_test printf-2.2.13.1 {1170 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 -6.287291e-91171} {abc: (-0.00000) :xyz}1172do_test printf-2.2.13.2 {1173 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 -6.287291e-91174} {abc: (-6.28729e-09) :xyz}1175do_test printf-2.2.13.3 {1176 sqlite3_mprintf_double {abc: (%*.*g) :xyz} 5 5 -6.287291e-91177} {abc: (-6.2873e-09) :xyz}1178do_test printf-2.2.13.4 {1179 sqlite3_mprintf_double {abc: %d %d (%g) :xyz} 5 5 -6.287291e-91180} {abc: 5 5 (-6.28729e-09) :xyz}1181do_test printf-2.2.13.5 {1182 sqlite3_mprintf_double {abc: %d %d (%#g) :xyz} 5 5 -6.287291e-91183} {abc: 5 5 (-6.28729e-09) :xyz}1184do_test printf-2.2.13.6 {1185 sqlite3_mprintf_double {abc: %d %d (%010g) :xyz} 5 5 -6.287291e-91186} {abc: 5 5 (-6.28729e-09) :xyz}1187do_test printf-2.2.13.7 {1188 sqlite3_mprintf_double {abc: %d %d (%5.5f) :xyz} 5 5 -6.287291e-91189} {abc: 5 5 (-0.00000) :xyz}1190do_test printf-2.2.13.8 {1191 sqlite3_mprintf_double {abc: %d %d (%5.5e) :xyz} 5 5 -6.287291e-91192} {abc: 5 5 (-6.28729e-09) :xyz}1193do_test printf-2.2.13.9 {1194 sqlite3_mprintf_double {abc: %d %d (%5.5g) :xyz} 5 5 -6.287291e-91195} {abc: 5 5 (-6.2873e-09) :xyz}1196do_test printf-2.2.14.1 {1197 sqlite3_mprintf_double {abc: (%*.*f) :xyz} 5 5 3.38826392e-1101198} {abc: (0.00000) :xyz}1199do_test printf-2.2.14.2 {1200 sqlite3_mprintf_double {abc: (%*.*e) :xyz} 5 5 3.38826392e-110