(t *testing.T)
| 3567 | } |
| 3568 | |
| 3569 | func TestErrorInMultiResult(t *testing.T) { |
| 3570 | if !available { |
| 3571 | t.Skipf("MySQL server not running on %s", netAddr) |
| 3572 | } |
| 3573 | // https://github.com/go-sql-driver/mysql/issues/1361 |
| 3574 | var db *sql.DB |
| 3575 | if _, err := ParseDSN(dsn); err != errInvalidDSNUnsafeCollation { |
| 3576 | db, err = sql.Open("mysql", dsn) |
| 3577 | if err != nil { |
| 3578 | t.Fatalf("error connecting: %s", err.Error()) |
| 3579 | } |
| 3580 | defer db.Close() |
| 3581 | } |
| 3582 | |
| 3583 | dbt := &DBTest{t, db} |
| 3584 | query := ` |
| 3585 | CREATE PROCEDURE test_proc1() |
| 3586 | BEGIN |
| 3587 | SELECT 1,2; |
| 3588 | SELECT 3,4; |
| 3589 | SIGNAL SQLSTATE '10000' SET MESSAGE_TEXT = "some error", MYSQL_ERRNO = 10000; |
| 3590 | END; |
| 3591 | ` |
| 3592 | runCallCommand(dbt, query, "test_proc1") |
| 3593 | } |
| 3594 | |
| 3595 | func runCallCommand(dbt *DBTest, query, name string) { |
| 3596 | dbt.mustExec(fmt.Sprintf("DROP PROCEDURE IF EXISTS %s", name)) |
nothing calls this directly
no test coverage detected