Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Use a single -odbc CONNSTR command-line argument instead of -engine ODBC3 and -connection CONNSTR. Added hash-threshold and halt record types. Added the OMIT_ODBC compile-time option. |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
96bff359eea2e4fbb48b92778f986db0 |
User & Date: | drh 2008-12-01 20:02:20.000 |
Context
2008-12-01
| ||
20:33 | Add the select2 test. Similar to select1 but adds NULL values and omits the ORDER BY clauses. check-in: 37156697d4 user: drh tags: trunk | |
20:02 | Use a single -odbc CONNSTR command-line argument instead of -engine ODBC3 and -connection CONNSTR. Added hash-threshold and halt record types. Added the OMIT_ODBC compile-time option. check-in: 96bff359ee user: drh tags: trunk | |
14:42 | Modified select1.* scripts to work with MS SQL (namely, removing OFFSET/LIMIT clauses); Fixed handle leak in slt_odbc3.c. check-in: 5c63a5e855 user: shaneh tags: trunk | |
Changes
Changes to about.wiki.
︙ | |||
97 98 99 100 101 102 103 | 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | - - + + - + | <h2>Test-Script Format</h2> Test scripts are line-oriented ASCII text files. No provision is made for Unicode; the purpose of sqllogictest is to test the query and join logic of the database engine, not its support for localization and internationalization. |
︙ | |||
182 183 184 185 186 187 188 189 190 191 192 193 194 195 | 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 | + + + + + + + + + + + + + + + + + + + + + + + + + | In the results section, integer values are rendered as if by printf("%d"). Floating point values are rendered as if by printf("%.3f"). NULL values are rendered as "NULL". Empty strings are rendered as "(empty)". Within non-empty strings, all control characters and unprintable characters are rendered as "@". <h3>Control Records</h3> The test script might also contain control records. A control record is one of the following: <blockquote> <tt>halt</tt><br> <tt>hash-threshold</td> <max-result-set-size> </blockquote> A "halt" record is intended for debugging use only. A halt record merely causes sqllogictest to ignore the rest of the test script. A halt record can be inserted after a query that is giving an anomalous result, causing the database to be left in the state where it gives the unexpected answer. After sqllogictest exist, manually debugging can then proceed. The "hash-threshold" record sets a limit on the number of values that can appear in a result set. If the number of values exceeds this, then instead of recording each individual value in the full test script, an MD5 hash of all values is computed in stored. This makes the full test scripts much shorter, but at the cost of obscuring the results. If the hash-threshold is 0, then results are never hashed. A hash-threshold of 10 or 20 is recommended. During debugging, it is advantage to set the hash-threshold to zero so that all results can be seen. <h2>Suggestions For Generating Test-Scripts</h2> When sqllogictest runs a test script, it begins with a completely empty database. So the first few records of any test script will typically be CREATE statements of various kinds and expecially CREATE TABLE statements. In order to maximize the portability of scripts across database engines, it is suggested that test scripts stick |
︙ | |||
224 225 226 227 228 229 230 | 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 | + + - - - + + + - - + | * Generate a random WHERE clause. * Generate a random string literal of some maximum length. * Generate a random identifier which is not a keyword. Segregate queries that use LIMIT and OFFSET into separate test scripts which are only run on database engines that support LIMIT and OFFSET. |
︙ |
Changes to src/Makefile.
︙ | |||
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | + + + + | # LIB = $(LDFLAGS) # You should not need to change anything below this line ############################################################################### # OBJ = \ md5.o \ sqlite3.o sqllogictest$(E): sqllogictest.c sqllogictest.h $(OBJ) $(CC) -o sqllogictest$(E) sqllogictest.c $(OBJ) md5.o: md5.c $(CC) -c md5.c sqlite3.o: sqlite3.c sqlite3.h $(CC) -c sqlite3.c -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION clean: rm -f $(OBJ) |
Added src/md5.c.