File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / sqlite3 / test / tkt3997.test
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 17:04:16 2012 UTC (12 years, 10 months ago) by misho
Branches: sqlite3, MAIN
CVS tags: v3_7_10, HEAD
sqlite3

    1: # 2001 September 15
    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: #
   12: # Tests to make sure #3997 is fixed.
   13: #
   14: # $Id: tkt3997.test,v 1.1.1.1 2012/02/21 17:04:16 misho Exp $
   15: 
   16: set testdir [file dirname $argv0]
   17: source $testdir/tester.tcl
   18: 
   19: proc reverse {lhs rhs} {
   20:   return [string compare $rhs $lhs]
   21: }
   22: proc usual {lhs rhs} {
   23:   return [string compare $lhs $rhs]
   24: }
   25: 
   26: db collate reverse reverse
   27: db collate usual usual
   28: 
   29: do_test tkt3997-1.1 {
   30:   execsql {
   31:     create table mytext(name BLOB);
   32:     INSERT INTO mytext VALUES('abc');
   33:     INSERT INTO mytext VALUES('acd');
   34:     INSERT INTO mytext VALUES('afe');
   35:   }
   36: } {}
   37: do_test tkt3997-1.2 {
   38:   execsql { 
   39:     SELECT name 
   40:     FROM mytext 
   41:     ORDER BY name COLLATE reverse 
   42:   }
   43: } {afe acd abc}
   44: do_test tkt3997-1.3 {
   45:   execsql { 
   46:     SELECT name 
   47:     FROM (SELECT name FROM mytext)  
   48:     ORDER BY name COLLATE reverse 
   49:   }
   50: } {afe acd abc}
   51: 
   52: do_test tkt3997-2.1 {
   53:   execsql { 
   54:     CREATE TABLE mytext2(name COLLATE reverse);
   55:     INSERT INTO mytext2 SELECT name FROM mytext;
   56:   }
   57: } {}
   58: do_test tkt3997-2.2 {
   59:   execsql { 
   60:     SELECT name 
   61:     FROM (SELECT name FROM mytext2)  
   62:     ORDER BY name
   63:   }
   64: } {afe acd abc}
   65: do_test tkt3997-2.3 {
   66:   execsql { 
   67:     SELECT name 
   68:     FROM (SELECT name FROM mytext2)
   69:     ORDER BY name COLLATE usual
   70:   }
   71: } {abc acd afe}
   72: 
   73: finish_test

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