Skip to content

Commit cb6db59

Browse files
committed
More tests
1 parent 702b704 commit cb6db59

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package sqlx_examples
2+
3+
import (
4+
"log"
5+
"strings"
6+
)
7+
8+
func correctSqlCloseCheckG[T ~int64]() {
9+
age := 27
10+
rows, err := db.Queryx("SELECT name FROM users WHERE age=?", age)
11+
if err != nil {
12+
log.Fatal(err)
13+
}
14+
15+
defer rows.Close()
16+
17+
names := make([]string, 0)
18+
for rows.Next() {
19+
var name string
20+
if err := rows.Scan(&name); err != nil {
21+
log.Fatal(err)
22+
}
23+
names = append(names, name)
24+
}
25+
26+
// Check for errors from iterating over rows.
27+
if err := rows.Err(); err != nil {
28+
log.Fatal(err)
29+
}
30+
log.Printf("%s are %d years old", strings.Join(names, ", "), age)
31+
}

testdata/sqlx_examples/failure_generics.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ package sqlx_examples
33
import "database/sql"
44

55
func SqlCloseCheck(db *sql.DB, a int) {
6-
rows, _ := db.Query("select id from tb") // <- detected OK
6+
rows, _ := db.Query("select id from tb")
77
for rows.Next() {
88

99
}
1010
}
1111

1212
func SqlCloseCheckG[T ~int64](db *sql.DB, a T) {
13-
rows, _ := db.Query("select id from tb") // <- not detected KO
13+
rows, _ := db.Query("select id from tb")
1414
for rows.Next() {
1515

1616
}

0 commit comments

Comments
 (0)