diff options
author | root <sina@snix.ir> | 2022-05-27 13:13:53 +0000 |
---|---|---|
committer | root <sina@snix.ir> | 2022-05-27 13:13:53 +0000 |
commit | 937c561db4b25a1becdc81701511fafc67b90389 (patch) | |
tree | 17e5d4c692ec4ab3c8b0deb0072d5784cc4be084 /conncheck_test.go |
Diffstat (limited to 'conncheck_test.go')
-rw-r--r-- | conncheck_test.go | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/conncheck_test.go b/conncheck_test.go new file mode 100644 index 0000000..3000b38 --- /dev/null +++ b/conncheck_test.go @@ -0,0 +1,38 @@ +// Go MySQL Driver - A MySQL-Driver for Go's database/sql package +// +// Copyright 2013 The Go-MySQL-Driver Authors. All rights reserved. +// +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this file, +// You can obtain one at http://mozilla.org/MPL/2.0/. + +// +build linux darwin dragonfly freebsd netbsd openbsd solaris illumos + +package mariadb + +import ( + "testing" + "time" +) + +func TestStaleConnectionChecks(t *testing.T) { + runTests(t, dsn, func(dbt *DBTest) { + dbt.mustExec("SET @@SESSION.wait_timeout = 2") + + if err := dbt.db.Ping(); err != nil { + dbt.Fatal(err) + } + + // wait for MySQL to close our connection + time.Sleep(3 * time.Second) + + tx, err := dbt.db.Begin() + if err != nil { + dbt.Fatal(err) + } + + if err := tx.Rollback(); err != nil { + dbt.Fatal(err) + } + }) +} |