| OLD | NEW | 
 | (Empty) | 
|   1 # 2006 February 27 |  | 
|   2 # |  | 
|   3 # The author disclaims copyright to this source code.  In place of |  | 
|   4 # 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. |  | 
|  12 # |  | 
|  13 # This file implements tests to make sure abusively large triggers |  | 
|  14 # (triggers with 100s or 1000s of statements) work. |  | 
|  15 # |  | 
|  16 # $Id: trigger8.test,v 1.2 2008/09/17 16:14:10 danielk1977 Exp $ |  | 
|  17  |  | 
|  18 set testdir [file dirname $argv0] |  | 
|  19 source $testdir/tester.tcl |  | 
|  20 ifcapable {!trigger} { |  | 
|  21   finish_test |  | 
|  22   return |  | 
|  23 } |  | 
|  24  |  | 
|  25 # Set variable $nStatement to the number of statements to include in the |  | 
|  26 # body of the trigger. On a workstation with virtually unlimited memory,  |  | 
|  27 # use 10000. But on symbian, which allows each application at most a 32MB |  | 
|  28 # heap, use 1000. |  | 
|  29 # |  | 
|  30 set nStatement 10000 |  | 
|  31 if {$tcl_platform(platform) == "symbian"} { |  | 
|  32   set nStatement 1000 |  | 
|  33 } |  | 
|  34  |  | 
|  35 set nStatement 5 |  | 
|  36 do_test trigger8-1.1 { |  | 
|  37   execsql { |  | 
|  38     CREATE TABLE t1(x); |  | 
|  39     CREATE TABLE t2(y); |  | 
|  40   } |  | 
|  41   set sql "CREATE TRIGGER r${nStatement} AFTER INSERT ON t1 BEGIN\n" |  | 
|  42   for {set i 0} {$i<$nStatement} {incr i} { |  | 
|  43     append sql "  INSERT INTO t2 VALUES($i);\n" |  | 
|  44   } |  | 
|  45   append sql "END;" |  | 
|  46   execsql $sql |  | 
|  47   execsql { |  | 
|  48     INSERT INTO t1 VALUES(5); |  | 
|  49     SELECT count(*) FROM t2; |  | 
|  50   } |  | 
|  51 } $nStatement |  | 
|  52  |  | 
|  53 finish_test |  | 
| OLD | NEW |