@@ -111,14 +111,17 @@ func initDatabase(t *testing.T, db *sql.DB, rowCount int64) {
111
111
}
112
112
113
113
func TestShortTimeout (t * testing.T ) {
114
- db , err := sql .Open ("sqlite3" , "file::memory:?mode=memory&cache=shared" )
114
+ srcTempFilename := TempFilename (t )
115
+ defer os .Remove (srcTempFilename )
116
+
117
+ db , err := sql .Open ("sqlite3" , srcTempFilename )
115
118
if err != nil {
116
119
t .Fatal (err )
117
120
}
118
121
defer db .Close ()
119
- initDatabase (t , db , 10000 )
122
+ initDatabase (t , db , 100 )
120
123
121
- ctx , cancel := context .WithTimeout (context .Background (), 10 * time .Microsecond )
124
+ ctx , cancel := context .WithTimeout (context .Background (), 1 * time .Microsecond )
122
125
defer cancel ()
123
126
query := `SELECT key1, key_id, key2, key3, key4, key5, key6, data
124
127
FROM test_table
@@ -127,16 +130,8 @@ func TestShortTimeout(t *testing.T) {
127
130
if err != nil {
128
131
t .Fatal (err )
129
132
}
130
- defer rows .Close ()
131
- for rows .Next () {
132
- var key1 , keyid , key2 , key3 , key4 , key5 , key6 string
133
- var data []byte
134
- err = rows .Scan (& key1 , & keyid , & key2 , & key3 , & key4 , & key5 , & key6 , & data )
135
- if err != nil {
136
- break
137
- }
138
- }
139
- if context .DeadlineExceeded != ctx .Err () {
140
- t .Fatal (ctx .Err ())
133
+ if ctx .Err () != nil && context .DeadlineExceeded != ctx .Err () {
134
+ t .Fatalf ("%v" , ctx .Err ())
141
135
}
136
+ rows .Close ()
142
137
}
0 commit comments