1373dc3bbSdan# 2017 December 9 2373dc3bbSdan# 3373dc3bbSdan# The author disclaims copyright to this source code. In place of 4373dc3bbSdan# a legal notice, here is a blessing: 5373dc3bbSdan# 6373dc3bbSdan# May you do good and not evil. 7373dc3bbSdan# May you find forgiveness for yourself and forgive others. 8373dc3bbSdan# May you share freely, never taking more than you give. 9373dc3bbSdan# 10373dc3bbSdan#*********************************************************************** 11373dc3bbSdan# 12373dc3bbSdan 13373dc3bbSdanset testdir [file dirname $argv0] 14373dc3bbSdansource $testdir/tester.tcl 15373dc3bbSdanset testprefix zipfile 16373dc3bbSdan 17373dc3bbSdanload_static_extension db zipfile 18373dc3bbSdan 19373dc3bbSdanforcedelete test.zip 20373dc3bbSdando_execsql_test 1.0 { 21373dc3bbSdan CREATE VIRTUAL TABLE temp.zz USING zipfile('test.zip'); 22373dc3bbSdan PRAGMA table_info(zz); 23373dc3bbSdan} { 24373dc3bbSdan 0 name {} 0 {} 0 25373dc3bbSdan 1 mode {} 0 {} 0 26373dc3bbSdan 2 mtime {} 0 {} 0 27373dc3bbSdan 3 sz {} 0 {} 0 28373dc3bbSdan 4 data {} 0 {} 0 29373dc3bbSdan 5 method {} 0 {} 0 30373dc3bbSdan} 31373dc3bbSdan 32373dc3bbSdando_execsql_test 1.1 { 33373dc3bbSdan INSERT INTO zz VALUES('f.txt', '-rw-r--r--', 1000000000, 5, 'abcde', 0); 34373dc3bbSdan INSERT INTO zz VALUES('g.txt', '-rw-r--r--', 1000000002, 5, '12345', 0); 35373dc3bbSdan} 36373dc3bbSdan 37373dc3bbSdando_execsql_test 1.2 { 38373dc3bbSdan SELECT name, mtime, data FROM zipfile('test.zip'); 39373dc3bbSdan} { 40373dc3bbSdan f.txt 1000000000 abcde 41*db0cb303Sdan g.txt 1000000002 12345 42373dc3bbSdan} 43373dc3bbSdan 44373dc3bbSdando_execsql_test 1.3 { 45373dc3bbSdan INSERT INTO zz VALUES('h.txt', 46373dc3bbSdan '-rw-r--r--', 1000000004, 20, 'aaaaaaaaaabbbbbbbbbb', NULL 47373dc3bbSdan ); 48373dc3bbSdan} 49373dc3bbSdan 50373dc3bbSdando_execsql_test 1.4 { 51373dc3bbSdan SELECT name, mtime, zipfile_uncompress(data, sz, method), method 52373dc3bbSdan FROM zipfile('test.zip'); 53373dc3bbSdan} { 54373dc3bbSdan f.txt 1000000000 abcde 0 55373dc3bbSdan g.txt 1000000002 12345 0 56*db0cb303Sdan h.txt 1000000004 aaaaaaaaaabbbbbbbbbb 8 57373dc3bbSdan} 58373dc3bbSdan 59373dc3bbSdanfinish_test 60373dc3bbSdan 61