Annotation of embedaddon/sqlite3/test/trigger8.test, revision 1.1.1.1

1.1       misho       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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>