diff options
author | EuAndreh <eu@euandre.org> | 2024-10-02 13:43:47 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2024-10-02 13:43:47 -0300 |
commit | e6561e006273edc64baf6b3af30e26a3817214d2 (patch) | |
tree | 940042d3d791672caccc43b1056d8bc4078bdacc /tests/benchmarks | |
parent | Makefile: Add fuzz target setup (diff) | |
download | golite-e6561e006273edc64baf6b3af30e26a3817214d2.tar.gz golite-e6561e006273edc64baf6b3af30e26a3817214d2.tar.xz |
Makefile: Setup benchmarking skeleton
Diffstat (limited to 'tests/benchmarks')
-rw-r--r-- | tests/benchmarks/exec.go | 29 | ||||
-rw-r--r-- | tests/benchmarks/query.go | 40 |
2 files changed, 69 insertions, 0 deletions
diff --git a/tests/benchmarks/exec.go b/tests/benchmarks/exec.go new file mode 100644 index 0000000..11e4133 --- /dev/null +++ b/tests/benchmarks/exec.go @@ -0,0 +1,29 @@ +package main + +import ( + "database/sql" + "flag" + + _ "golite" +) + + + +var nFlag = flag.Int("n", 1_000_000, "The number of iterations to execute") + +func main() { + flag.Parse() + n := *nFlag + + db, err := sql.Open("sqlite3", "file:bench.db?mode=memory&cache=shared") + if err != nil { + panic(err) + } + + for i := 0; i < n; i++ { + _, err = db.Exec("SELECT 1;") + if err != nil { + panic(err) + } + } +} diff --git a/tests/benchmarks/query.go b/tests/benchmarks/query.go new file mode 100644 index 0000000..b56e186 --- /dev/null +++ b/tests/benchmarks/query.go @@ -0,0 +1,40 @@ +package main + +import ( + "database/sql" + "flag" + + _ "golite" +) + + + +var nFlag = flag.Int("n", 100_000, "The number of iterations to execute") + +func main() { + flag.Parse() + n := *nFlag + + db, err := sql.Open("sqlite3", "file:benchdb?mode=memory&cache=shared") + if err != nil { + panic(err) + } + + var ( + S sql.NullString + I int + f float64 + s string + ) + for i := 0; i < n; i++ { + err = db.QueryRow("SELECT NULL, 1, 1.1, 'string';").Scan( + &S, + &I, + &f, + &s, + ) + if err != nil { + panic(err) + } + } +} |