Cast: Stop logging kVideoFrameSentToEncoder and rename a couple events.
[chromium-blink-merge.git] / third_party / sqlite / src / test / enc4.test
blobde2a1b88d0456b439adf39eb40c772070f383b96
1 # 2010 Sept 29\r
2 #\r
3 # The author disclaims copyright to this source code.  In place of\r
4 # a legal notice, here is a blessing:\r
5 #\r
6 #    May you do good and not evil.\r
7 #    May you find forgiveness for yourself and forgive others.\r
8 #    May you share freely, never taking more than you give.\r
9 #\r
10 #***********************************************************************\r
11 # This file implements regression tests for SQLite library.  The focus of\r
12 # this file is testing the SQLite routines used for converting between the\r
13 # various suported unicode encodings (UTF-8, UTF-16, UTF-16le and\r
14 # UTF-16be).\r
15 #\r
16 # $Id: enc4.test,v 1.0 2010/09/29 08:29:32 shaneh Exp $\r
18 set testdir [file dirname $argv0]\r
19 source $testdir/tester.tcl\r
21 # If UTF16 support is disabled, ignore the tests in this file\r
22 #\r
23 ifcapable {!utf16} {\r
24   finish_test\r
25   return\r
26 }\r
28 db close\r
30 # The three unicode encodings understood by SQLite.\r
31 set encodings [list UTF-8 UTF-16le UTF-16be]\r
33 # initial value to use in SELECT\r
34 set inits [list 1 1.0 1. 1e0]\r
36 # vals\r
37 set vals [list\\r
38 "922337203685477580792233720368547758079223372036854775807"\\r
39 "100000000000000000000000000000000000000000000000000000000"\\r
40 "1.0000000000000000000000000000000000000000000000000000000"\\r
41 ]\r
43 set i 1\r
44 foreach enc $encodings {\r
46   file delete -force test.db\r
47   sqlite3 db test.db\r
48   db eval "PRAGMA encoding = \"$enc\""\r
50   do_test enc4-$i.1 {\r
51     db eval {PRAGMA encoding}\r
52   } $enc\r
54   set j 1\r
55   foreach init $inits {\r
57     do_test enc4-$i.$j.2 {\r
58       set S [sqlite3_prepare_v2 db "SELECT $init+?" -1 dummy]\r
59       sqlite3_expired $S\r
60     } {0}\r
61       \r
62     set k 1\r
63     foreach val $vals {\r
64       for {set x 1} {$x<18} {incr x} {\r
65         set part [expr $init + [string range $val 0 [expr $x-1]]]\r
66         regsub {e\+0} $part {e+} part\r
67         regsub {^1e} $part {1.0e} part\r
69         do_test enc4-$i.$j.$k.3.$x {\r
70           sqlite3_reset $S\r
71           sqlite3_bind_text $S 1 $val $x\r
72           sqlite3_step $S\r
73           sqlite3_column_text $S 0\r
74         } [list $part]\r
75         \r
76         do_test enc4-$i.$j.$k.4.$x {\r
77           sqlite3_reset $S\r
78           sqlite3_bind_text16 $S 1 [encoding convertto unicode $val] [expr $x*2]\r
79           sqlite3_step $S\r
80           sqlite3_column_text $S 0\r
81         } [list $part]\r
82       }\r
83       \r
84       incr k\r
85     }\r
87     do_test enc4-$i.$j.5 {\r
88       sqlite3_finalize $S\r
89     } {SQLITE_OK}\r
91     incr j\r
92   }\r
94   db close\r
95   incr i\r
96 }\r
98 file delete -force test.db\r
99 sqlite3 db test.db\r
101 do_test enc4-4.1 {\r
102   db eval "select 1+1."\r
103 } {2.0}\r
105 do_test enc4-4.2.1 {\r
106   set S [sqlite3_prepare_v2 db "SELECT 1+1." -1 dummy]\r
107   sqlite3_step $S\r
108   sqlite3_column_text $S 0\r
109 } {2.0}\r
111 do_test enc4-4.2.2 {\r
112   sqlite3_finalize $S\r
113 } {SQLITE_OK}\r
115 do_test enc4-4.3.1 {\r
116   set S [sqlite3_prepare_v2 db "SELECT 1+?" -1 dummy]\r
117   sqlite3_bind_text $S 1 "1." 2\r
118   sqlite3_step $S\r
119   sqlite3_column_text $S 0\r
120 } {2.0}\r
122 do_test enc4-4.3.2 {\r
123   sqlite3_finalize $S\r
124 } {SQLITE_OK}\r
126 do_test enc4-4.4.1 {\r
127   set S [sqlite3_prepare_v2 db "SELECT 1+?" -1 dummy]\r
128   sqlite3_bind_text $S 1 "1.0" 2\r
129   sqlite3_step $S\r
130   sqlite3_column_text $S 0\r
131 } {2.0}\r
133 do_test enc4-4.4.2 {\r
134   sqlite3_finalize $S\r
135 } {SQLITE_OK}\r
137 db close\r
139 finish_test\r