CoolFace
Modelpublic

AryaWu/sqlite

sourceHugging Faceupdated 9mo agoView on Hugging Face
0likes
tkt2927.test675 linesDownload Raw Back to test
1# 2008 Feb 62#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#12# This file is to test that ticket #2927 is fixed.13#14# $Id: tkt2927.test,v 1.4 2008/08/04 03:51:24 danielk1977 Exp $15#16 17set testdir [file dirname $argv0]18source $testdir/tester.tcl19 20ifcapable !compound {21  finish_test22  return23}24 25# Create a database.26#27do_test tkt2927-1.1 {28  db eval {29    CREATE TABLE t1(a, b);30    INSERT INTO t1 VALUES(1,11);31    INSERT INTO t1 VALUES(2,22);32    INSERT INTO t1 VALUES(3,33);33    INSERT INTO t1 VALUES(4,44);34    INSERT INTO t1 VALUES(5,55);35    SELECT * FROM t1;36  }37} {1 11 2 22 3 33 4 44 5 55}38 39 40do_test tkt2927-2.1 {41  db eval {42    SELECT a, b FROM t143    UNION ALL44    SELECT a, b FROM t145  }46} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}47do_test tkt2927-2.2 {48#set sqlite_addop_trace 149  db eval {50    SELECT a, b FROM t151    UNION ALL52    SELECT a, abs(b) FROM t153  }54} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}55do_test tkt2927-2.3 {56  db eval {57    SELECT a, b FROM t158    UNION ALL59    SELECT abs(a), b FROM t160  }61} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}62do_test tkt2927-2.4 {63  db eval {64    SELECT a, b FROM t165    UNION ALL66    SELECT abs(a), abs(b) FROM t167  }68} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}69do_test tkt2927-2.5 {70  db eval {71    SELECT a, abs(b) FROM t172    UNION ALL73    SELECT a, b FROM t174  }75} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}76do_test tkt2927-2.6 {77  db eval {78    SELECT a, abs(b) FROM t179    UNION ALL80    SELECT a, abs(b) FROM t181  }82} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}83do_test tkt2927-2.7 {84  db eval {85    SELECT a, abs(b) FROM t186    UNION ALL87    SELECT abs(a), b FROM t188  }89} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}90do_test tkt2927-2.8 {91  db eval {92    SELECT a, abs(b) FROM t193    UNION ALL94    SELECT abs(a), abs(b) FROM t195  }96} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}97do_test tkt2927-2.9 {98  db eval {99    SELECT abs(a), b FROM t1100    UNION ALL101    SELECT a, b FROM t1102  }103} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}104do_test tkt2927-2.10 {105  db eval {106    SELECT abs(a), b FROM t1107    UNION ALL108    SELECT a, abs(b) FROM t1109  }110} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}111do_test tkt2927-2.11 {112  db eval {113    SELECT abs(a), b FROM t1114    UNION ALL115    SELECT abs(a), b FROM t1116  }117} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}118do_test tkt2927-2.12 {119  db eval {120    SELECT abs(a), b FROM t1121    UNION ALL122    SELECT abs(a), abs(b) FROM t1123  }124} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}125do_test tkt2927-2.13 {126  db eval {127    SELECT abs(a), abs(b) FROM t1128    UNION ALL129    SELECT a, b FROM t1130  }131} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}132do_test tkt2927-2.14 {133  db eval {134    SELECT abs(a), abs(b) FROM t1135    UNION ALL136    SELECT a, abs(b) FROM t1137  }138} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}139do_test tkt2927-2.15 {140  db eval {141    SELECT abs(a), abs(b) FROM t1142    UNION ALL143    SELECT abs(a), b FROM t1144  }145} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}146do_test tkt2927-2.16 {147  db eval {148    SELECT abs(a), abs(b) FROM t1149    UNION ALL150    SELECT abs(a), abs(b) FROM t1151  }152} {1 11 2 22 3 33 4 44 5 55 1 11 2 22 3 33 4 44 5 55}153 154 155do_test tkt2927-3.1 {156  db eval {157    SELECT a, b FROM t1158    UNION 159    SELECT a, b FROM t1160    ORDER BY 1161  }162} {1 11 2 22 3 33 4 44 5 55}163do_test tkt2927-3.2 {164  db eval {165    SELECT a, b FROM t1166    UNION 167    SELECT a, abs(b) FROM t1168    ORDER BY 1169  }170} {1 11 2 22 3 33 4 44 5 55}171do_test tkt2927-3.3 {172  db eval {173    SELECT a, b FROM t1174    UNION 175    SELECT abs(a), b FROM t1176    ORDER BY 1177  }178} {1 11 2 22 3 33 4 44 5 55}179do_test tkt2927-3.4 {180  db eval {181    SELECT a, b FROM t1182    UNION 183    SELECT abs(a), abs(b) FROM t1184    ORDER BY 1185  }186} {1 11 2 22 3 33 4 44 5 55}187do_test tkt2927-3.5 {188  db eval {189    SELECT a, abs(b) FROM t1190    UNION 191    SELECT a, b FROM t1192    ORDER BY 1193  }194} {1 11 2 22 3 33 4 44 5 55}195do_test tkt2927-3.6 {196  db eval {197    SELECT a, abs(b) FROM t1198    UNION 199    SELECT a, abs(b) FROM t1200    ORDER BY 1201  }202} {1 11 2 22 3 33 4 44 5 55}203do_test tkt2927-3.7 {204  db eval {205    SELECT a, abs(b) FROM t1206    UNION 207    SELECT abs(a), b FROM t1208    ORDER BY 1209  }210} {1 11 2 22 3 33 4 44 5 55}211do_test tkt2927-3.8 {212  db eval {213    SELECT a, abs(b) FROM t1214    UNION 215    SELECT abs(a), abs(b) FROM t1216    ORDER BY 1217  }218} {1 11 2 22 3 33 4 44 5 55}219do_test tkt2927-3.9 {220  db eval {221    SELECT abs(a), b FROM t1222    UNION 223    SELECT a, b FROM t1224    ORDER BY 1225  }226} {1 11 2 22 3 33 4 44 5 55}227do_test tkt2927-3.10 {228  db eval {229    SELECT abs(a), b FROM t1230    UNION 231    SELECT a, abs(b) FROM t1232    ORDER BY 1233  }234} {1 11 2 22 3 33 4 44 5 55}235do_test tkt2927-3.11 {236  db eval {237    SELECT abs(a), b FROM t1238    UNION 239    SELECT abs(a), b FROM t1240    ORDER BY 1241  }242} {1 11 2 22 3 33 4 44 5 55}243do_test tkt2927-3.12 {244  db eval {245    SELECT abs(a), b FROM t1246    UNION 247    SELECT abs(a), abs(b) FROM t1248    ORDER BY 1249  }250} {1 11 2 22 3 33 4 44 5 55}251do_test tkt2927-3.13 {252  db eval {253    SELECT abs(a), abs(b) FROM t1254    UNION 255    SELECT a, b FROM t1256    ORDER BY 1257  }258} {1 11 2 22 3 33 4 44 5 55}259do_test tkt2927-3.14 {260  db eval {261    SELECT abs(a), abs(b) FROM t1262    UNION 263    SELECT a, abs(b) FROM t1264    ORDER BY 1265  }266} {1 11 2 22 3 33 4 44 5 55}267do_test tkt2927-3.15 {268  db eval {269    SELECT abs(a), abs(b) FROM t1270    UNION 271    SELECT abs(a), b FROM t1272    ORDER BY 1273  }274} {1 11 2 22 3 33 4 44 5 55}275do_test tkt2927-3.16 {276  db eval {277    SELECT abs(a), abs(b) FROM t1278    UNION 279    SELECT abs(a), abs(b) FROM t1280    ORDER BY 1281  }282} {1 11 2 22 3 33 4 44 5 55}283 284 285do_test tkt2927-4.1 {286  db eval {287    SELECT a+b, a-b, a, b FROM t1288    UNION ALL289    SELECT a+b, a-b, a, b FROM t1290  }291} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}292do_test tkt2927-4.2 {293  db eval {294    SELECT a+b, a-b, a, b FROM t1295    UNION ALL296    SELECT a+b, a-b, a, abs(b) FROM t1297  }298} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}299do_test tkt2927-4.3 {300  db eval {301    SELECT a+b, a-b, a, b FROM t1302    UNION ALL303    SELECT a+b, a-b, abs(a), b FROM t1304  }305} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}306do_test tkt2927-4.4 {307  db eval {308    SELECT a+b, a-b, a, b FROM t1309    UNION ALL310    SELECT a+b, a-b, abs(a), abs(b) FROM t1311  }312} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}313do_test tkt2927-4.5 {314  db eval {315    SELECT a+b, a-b, a, abs(b) FROM t1316    UNION ALL317    SELECT a+b, a-b, a, b FROM t1318  }319} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}320do_test tkt2927-4.6 {321  db eval {322    SELECT a+b, a-b, a, abs(b) FROM t1323    UNION ALL324    SELECT a+b, a-b, a, abs(b) FROM t1325  }326} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}327do_test tkt2927-4.7 {328  db eval {329    SELECT a+b, a-b, a, abs(b) FROM t1330    UNION ALL331    SELECT a+b, a-b, abs(a), b FROM t1332  }333} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}334do_test tkt2927-4.8 {335  db eval {336    SELECT a+b, a-b, a, abs(b) FROM t1337    UNION ALL338    SELECT a+b, a-b, abs(a), abs(b) FROM t1339  }340} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}341do_test tkt2927-4.9 {342  db eval {343    SELECT a+b, a-b, abs(a), b FROM t1344    UNION ALL345    SELECT a+b, a-b, a, b FROM t1346  }347} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}348do_test tkt2927-4.10 {349  db eval {350    SELECT a+b, a-b, abs(a), b FROM t1351    UNION ALL352    SELECT a+b, a-b, a, abs(b) FROM t1353  }354} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}355do_test tkt2927-4.11 {356  db eval {357    SELECT a+b, a-b, abs(a), b FROM t1358    UNION ALL359    SELECT a+b, a-b, abs(a), b FROM t1360  }361} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}362do_test tkt2927-4.12 {363  db eval {364    SELECT a+b, a-b, abs(a), b FROM t1365    UNION ALL366    SELECT a+b, a-b, abs(a), abs(b) FROM t1367  }368} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}369do_test tkt2927-4.13 {370  db eval {371    SELECT a+b, a-b, abs(a), abs(b) FROM t1372    UNION ALL373    SELECT a+b, a-b, a, b FROM t1374  }375} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}376do_test tkt2927-4.14 {377  db eval {378    SELECT a+b, a-b, abs(a), abs(b) FROM t1379    UNION ALL380    SELECT a+b, a-b, a, abs(b) FROM t1381  }382} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}383do_test tkt2927-4.15 {384  db eval {385    SELECT a+b, a-b, abs(a), abs(b) FROM t1386    UNION ALL387    SELECT a+b, a-b, abs(a), b FROM t1388  }389} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}390do_test tkt2927-4.16 {391  db eval {392    SELECT a+b, a-b, abs(a), abs(b) FROM t1393    UNION ALL394    SELECT a+b, a-b, abs(a), abs(b) FROM t1395  }396} {12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55 12 -10 1 11 24 -20 2 22 36 -30 3 33 48 -40 4 44 60 -50 5 55}397 398 399do_test tkt2927-5.1 {400  db eval {401    SELECT a, b FROM t1402    EXCEPT403    SELECT a, b FROM t1404  }405} {}406do_test tkt2927-5.2 {407  db eval {408    SELECT a, b FROM t1409    EXCEPT410    SELECT a, abs(b) FROM t1411  }412} {}413do_test tkt2927-5.3 {414  db eval {415    SELECT a, b FROM t1416    EXCEPT417    SELECT abs(a), b FROM t1418  }419} {}420do_test tkt2927-5.4 {421  db eval {422    SELECT a, b FROM t1423    EXCEPT424    SELECT abs(a), abs(b) FROM t1425  }426} {}427do_test tkt2927-5.5 {428  db eval {429    SELECT a, abs(b) FROM t1430    EXCEPT431    SELECT a, b FROM t1432  }433} {}434do_test tkt2927-5.6 {435  db eval {436    SELECT a, abs(b) FROM t1437    EXCEPT438    SELECT a, abs(b) FROM t1439  }440} {}441do_test tkt2927-5.7 {442  db eval {443    SELECT a, abs(b) FROM t1444    EXCEPT445    SELECT abs(a), b FROM t1446  }447} {}448do_test tkt2927-5.8 {449  db eval {450    SELECT a, abs(b) FROM t1451    EXCEPT452    SELECT abs(a), abs(b) FROM t1453  }454} {}455do_test tkt2927-5.9 {456  db eval {457    SELECT abs(a), b FROM t1458    EXCEPT459    SELECT a, b FROM t1460  }461} {}462do_test tkt2927-5.10 {463  db eval {464    SELECT abs(a), b FROM t1465    EXCEPT466    SELECT a, abs(b) FROM t1467  }468} {}469do_test tkt2927-5.11 {470  db eval {471    SELECT abs(a), b FROM t1472    EXCEPT473    SELECT abs(a), b FROM t1474  }475} {}476do_test tkt2927-5.12 {477  db eval {478    SELECT abs(a), b FROM t1479    EXCEPT480    SELECT abs(a), abs(b) FROM t1481  }482} {}483do_test tkt2927-5.13 {484  db eval {485    SELECT abs(a), abs(b) FROM t1486    EXCEPT487    SELECT a, b FROM t1488  }489} {}490do_test tkt2927-5.14 {491  db eval {492    SELECT abs(a), abs(b) FROM t1493    EXCEPT494    SELECT a, abs(b) FROM t1495  }496} {}497do_test tkt2927-5.15 {498  db eval {499    SELECT abs(a), abs(b) FROM t1500    EXCEPT501    SELECT abs(a), b FROM t1502  }503} {}504do_test tkt2927-5.16 {505  db eval {506    SELECT abs(a), abs(b) FROM t1507    EXCEPT508    SELECT abs(a), abs(b) FROM t1509  }510} {}511 512 513do_test tkt2927-6.1 {514  db eval {515    SELECT a, b FROM t1516    INTERSECT517    SELECT a, b FROM t1518    ORDER BY 1519  }520} {1 11 2 22 3 33 4 44 5 55}521do_test tkt2927-6.2 {522  db eval {523    SELECT a, b FROM t1524    INTERSECT525    SELECT a, abs(b) FROM t1526    ORDER BY 1527  }528} {1 11 2 22 3 33 4 44 5 55}529do_test tkt2927-6.3 {530  db eval {531    SELECT a, b FROM t1532    INTERSECT533    SELECT abs(a), b FROM t1534    ORDER BY 1535  }536} {1 11 2 22 3 33 4 44 5 55}537do_test tkt2927-6.4 {538  db eval {539    SELECT a, b FROM t1540    INTERSECT541    SELECT abs(a), abs(b) FROM t1542    ORDER BY 1543  }544} {1 11 2 22 3 33 4 44 5 55}545do_test tkt2927-6.5 {546  db eval {547    SELECT a, abs(b) FROM t1548    INTERSECT549    SELECT a, b FROM t1550    ORDER BY 1551  }552} {1 11 2 22 3 33 4 44 5 55}553do_test tkt2927-6.6 {554  db eval {555    SELECT a, abs(b) FROM t1556    INTERSECT557    SELECT a, abs(b) FROM t1558    ORDER BY 1559  }560} {1 11 2 22 3 33 4 44 5 55}561do_test tkt2927-6.7 {562  db eval {563    SELECT a, abs(b) FROM t1564    INTERSECT565    SELECT abs(a), b FROM t1566    ORDER BY 1567  }568} {1 11 2 22 3 33 4 44 5 55}569do_test tkt2927-6.8 {570  db eval {571    SELECT a, abs(b) FROM t1572    INTERSECT573    SELECT abs(a), abs(b) FROM t1574    ORDER BY 1575  }576} {1 11 2 22 3 33 4 44 5 55}577do_test tkt2927-6.9 {578  db eval {579    SELECT abs(a), b FROM t1580    INTERSECT581    SELECT a, b FROM t1582    ORDER BY 1583  }584} {1 11 2 22 3 33 4 44 5 55}585do_test tkt2927-6.10 {586  db eval {587    SELECT abs(a), b FROM t1588    INTERSECT589    SELECT a, abs(b) FROM t1590    ORDER BY 1591  }592} {1 11 2 22 3 33 4 44 5 55}593do_test tkt2927-6.11 {594  db eval {595    SELECT abs(a), b FROM t1596    INTERSECT597    SELECT abs(a), b FROM t1598    ORDER BY 1599  }600} {1 11 2 22 3 33 4 44 5 55}601do_test tkt2927-6.12 {602  db eval {603    SELECT abs(a), b FROM t1604    INTERSECT605    SELECT abs(a), abs(b) FROM t1606    ORDER BY 1607  }608} {1 11 2 22 3 33 4 44 5 55}609do_test tkt2927-6.13 {610  db eval {611    SELECT abs(a), abs(b) FROM t1612    INTERSECT613    SELECT a, b FROM t1614    ORDER BY 1615  }616} {1 11 2 22 3 33 4 44 5 55}617do_test tkt2927-6.14 {618  db eval {619    SELECT abs(a), abs(b) FROM t1620    INTERSECT621    SELECT a, abs(b) FROM t1622    ORDER BY 1623  }624} {1 11 2 22 3 33 4 44 5 55}625do_test tkt2927-6.15 {626  db eval {627    SELECT abs(a), abs(b) FROM t1628    INTERSECT629    SELECT abs(a), b FROM t1630    ORDER BY 1631  }632} {1 11 2 22 3 33 4 44 5 55}633do_test tkt2927-6.16 {634  db eval {635    SELECT abs(a), abs(b) FROM t1636    INTERSECT637    SELECT abs(a), abs(b) FROM t1638    ORDER BY 1639  }640} {1 11 2 22 3 33 4 44 5 55}641 642# Ticket #3092 is the same bug.  But another test case never hurts.643#644do_test tkt2927-7.1 {645  db eval {646    CREATE TABLE host (647     hostname text not null primary key,648     consoleHost text,649     consolePort text650    );651    INSERT INTO "host" VALUES('aald04','aalp03','4');652    INSERT INTO "host" VALUES('aald17','aalp01','1');653    CREATE VIEW consolemap1a as654      select hostname, consolehost, '/dev/cuaD0.' || (consoleport-1) consoleport655        from host where consolehost='aalp01';656    CREATE VIEW consolemap1b as657      select hostname hostname, consolehost consolehost, '/dev/cuaD' ||658             substr('01',1+((consoleport-1)/16),1) ||659             substr('0123456789abcdef',1+((consoleport-1)%16),1) consoleport660        from host where consolehost='aalp03';661    CREATE VIEW consolemap1 as662      select * from consolemap1a663      union664      select * from consolemap1b;665    SELECT * from consolemap1b;666  }667} {aald04 aalp03 /dev/cuaD03}668do_test tkt2927-7.2 {669  db eval {670    SELECT * FROM consolemap1671  }672} {aald04 aalp03 /dev/cuaD03 aald17 aalp01 /dev/cuaD0.0}673 674finish_test675