From dcd536348e52686758ec76f68dc0157804f763f9 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 20 Oct 2024 20:30:37 -0300 Subject: Revert c3a3cf9d7aed9b3c48acbe31fd48f2c27549a570 --- tests/functional/json/acudego.go | 98 ----------------------------------- tests/functional/json/golite.go | 98 +++++++++++++++++++++++++++++++++++ tests/functional/limit/acudego.go | 104 -------------------------------------- tests/functional/limit/golite.go | 104 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 202 insertions(+), 202 deletions(-) delete mode 100644 tests/functional/json/acudego.go create mode 100644 tests/functional/json/golite.go delete mode 100644 tests/functional/limit/acudego.go create mode 100644 tests/functional/limit/golite.go (limited to 'tests/functional') diff --git a/tests/functional/json/acudego.go b/tests/functional/json/acudego.go deleted file mode 100644 index 8f5e923..0000000 --- a/tests/functional/json/acudego.go +++ /dev/null @@ -1,98 +0,0 @@ -package acudego - -import ( - "database/sql" - "database/sql/driver" - "encoding/json" - "errors" - "log" - "os" -) - - - -type Tag struct { - Name string `json:"name"` - Place string `json:"place"` -} - -func (t *Tag) Scan(value interface{}) error { - return json.Unmarshal([]byte(value.(string)), t) -} - -func (t *Tag) Value() (driver.Value, error) { - b, err := json.Marshal(t) - return string(b), err -} - - - -func MainTest() { - os.Remove("json.db") - defer os.Remove("json.db") - - db, err := sql.Open(DriverName, "json.db") - if err != nil { - log.Fatal(err) - } - defer db.Close() - - _, err = db.Exec(`create table myjsontable (tag jsonb)`) - if err != nil { - log.Fatal(err) - } - - stmt, err := db.Prepare("insert into myjsontable(tag) values(?)") - if err != nil { - log.Fatal(err) - } - defer stmt.Close() - - _, err = stmt.Exec(`{"name": "name1", "place": "right-here"}`) - if err != nil { - log.Fatal(err) - } - - _, err = stmt.Exec(`{"name": "michael", "place": "usa"}`) - if err != nil { - log.Fatal(err) - } - - var place string - err = db.QueryRow("select tag->>'place' from myjsontable where tag->>'name' = 'name1'").Scan(&place) - if err != nil { - log.Fatal(err) - } - - if place != "right-here" { - log.Fatal(errors.New("expected right-here, got: " + place)) - } - - var tag Tag - err = db.QueryRow("select tag from myjsontable where tag->>'name' = 'name1'").Scan(&tag) - if err != nil { - log.Fatal(err) - } - - if tag.Name != "name1" { - log.Fatal(errors.New("expected name1, got: " + tag.Name)) - } - if tag.Place != "right-here" { - log.Fatal(errors.New("expected right-here, got: " + tag.Place)) - } - - tag.Place = "日本" - _, err = db.Exec(`update myjsontable set tag = ? where tag->>'name' == 'name1'`, &tag) - if err != nil { - log.Fatal(err) - } - - err = db.QueryRow("select tag->>'place' from myjsontable where tag->>'name' = 'name1'").Scan(&place) - if err != nil { - log.Fatal(err) - } - - if place != "日本" { - log.Fatal(errors.New("expected 日本, got: " + place)) - } -} diff --git a/tests/functional/json/golite.go b/tests/functional/json/golite.go new file mode 100644 index 0000000..0fa696e --- /dev/null +++ b/tests/functional/json/golite.go @@ -0,0 +1,98 @@ +package golite + +import ( + "database/sql" + "database/sql/driver" + "encoding/json" + "errors" + "log" + "os" +) + + + +type Tag struct { + Name string `json:"name"` + Place string `json:"place"` +} + +func (t *Tag) Scan(value interface{}) error { + return json.Unmarshal([]byte(value.(string)), t) +} + +func (t *Tag) Value() (driver.Value, error) { + b, err := json.Marshal(t) + return string(b), err +} + + + +func MainTest() { + os.Remove("json.db") + defer os.Remove("json.db") + + db, err := sql.Open(DriverName, "json.db") + if err != nil { + log.Fatal(err) + } + defer db.Close() + + _, err = db.Exec(`create table myjsontable (tag jsonb)`) + if err != nil { + log.Fatal(err) + } + + stmt, err := db.Prepare("insert into myjsontable(tag) values(?)") + if err != nil { + log.Fatal(err) + } + defer stmt.Close() + + _, err = stmt.Exec(`{"name": "name1", "place": "right-here"}`) + if err != nil { + log.Fatal(err) + } + + _, err = stmt.Exec(`{"name": "michael", "place": "usa"}`) + if err != nil { + log.Fatal(err) + } + + var place string + err = db.QueryRow("select tag->>'place' from myjsontable where tag->>'name' = 'name1'").Scan(&place) + if err != nil { + log.Fatal(err) + } + + if place != "right-here" { + log.Fatal(errors.New("expected right-here, got: " + place)) + } + + var tag Tag + err = db.QueryRow("select tag from myjsontable where tag->>'name' = 'name1'").Scan(&tag) + if err != nil { + log.Fatal(err) + } + + if tag.Name != "name1" { + log.Fatal(errors.New("expected name1, got: " + tag.Name)) + } + if tag.Place != "right-here" { + log.Fatal(errors.New("expected right-here, got: " + tag.Place)) + } + + tag.Place = "日本" + _, err = db.Exec(`update myjsontable set tag = ? where tag->>'name' == 'name1'`, &tag) + if err != nil { + log.Fatal(err) + } + + err = db.QueryRow("select tag->>'place' from myjsontable where tag->>'name' = 'name1'").Scan(&place) + if err != nil { + log.Fatal(err) + } + + if place != "日本" { + log.Fatal(errors.New("expected 日本, got: " + place)) + } +} diff --git a/tests/functional/limit/acudego.go b/tests/functional/limit/acudego.go deleted file mode 100644 index d47dc27..0000000 --- a/tests/functional/limit/acudego.go +++ /dev/null @@ -1,104 +0,0 @@ -package acudego - -import ( - "database/sql" - "fmt" - "log" - "os" - "strings" -) - - - -func createBulkInsertQuery(n int, start int) (string, []any) { - values := make([]string, n) - args := make([]any, n*2) - pos := 0 - for i := 0; i < n; i++ { - values[i] = "(?, ?)" - args[pos] = start + i - args[pos+1] = fmt.Sprintf("こんにちは世界%03d", i) - pos += 2 - } - query := fmt.Sprintf( - "insert into mylimittable(id, name) values %s", - strings.Join(values, ", "), - ) - return query, args -} - -func bulkInsert(db *sql.DB, query string, args []any) error { - stmt, err := db.Prepare(query) - if err != nil { - return err - } - - _, err = stmt.Exec(args...) - return err -} - - - -func MainTest() { - const ( - num = 400 - smallLimit = 100 - bigLimit = 999999 - ) - - const SQL = ` - create table mylimittable (id integer not null primary key, name text); - delete from mylimittable; - ` - - var conn *SQLiteConn - sql.Register("sqlite3_with_limit", &SQLiteDriver{ - ConnectHook: func(c *SQLiteConn) error { - conn = c - return nil - }, - }) - - os.Remove("limit.db") - defer os.Remove("limit.db") - db, err := sql.Open("sqlite3_with_limit", "limit.db") - if err != nil { - log.Fatal(err) - } - defer db.Close() - - _, err = db.Exec(SQL) - if err != nil { - log.Fatal(err) - } - - if conn == nil { - log.Fatal("not set sqlite3 connection") - } - - { - query, args := createBulkInsertQuery(num, 0) - err := bulkInsert(db, query, args) - if err != nil { - log.Fatal(err) - } - } - - conn.SetLimit(SQLITE_LIMIT_VARIABLE_NUMBER, smallLimit) - { - query, args := createBulkInsertQuery(num, num) - err := bulkInsert(db, query, args) - if err == nil { - log.Fatal("expected failure didn't happen") - } - } - - conn.SetLimit(SQLITE_LIMIT_VARIABLE_NUMBER, bigLimit) - { - query, args := createBulkInsertQuery(500, num+num) - err := bulkInsert(db, query, args) - if err != nil { - log.Fatal(err) - } - } -} diff --git a/tests/functional/limit/golite.go b/tests/functional/limit/golite.go new file mode 100644 index 0000000..231e8c2 --- /dev/null +++ b/tests/functional/limit/golite.go @@ -0,0 +1,104 @@ +package golite + +import ( + "database/sql" + "fmt" + "log" + "os" + "strings" +) + + + +func createBulkInsertQuery(n int, start int) (string, []any) { + values := make([]string, n) + args := make([]any, n*2) + pos := 0 + for i := 0; i < n; i++ { + values[i] = "(?, ?)" + args[pos] = start + i + args[pos+1] = fmt.Sprintf("こんにちは世界%03d", i) + pos += 2 + } + query := fmt.Sprintf( + "insert into mylimittable(id, name) values %s", + strings.Join(values, ", "), + ) + return query, args +} + +func bulkInsert(db *sql.DB, query string, args []any) error { + stmt, err := db.Prepare(query) + if err != nil { + return err + } + + _, err = stmt.Exec(args...) + return err +} + + + +func MainTest() { + const ( + num = 400 + smallLimit = 100 + bigLimit = 999999 + ) + + const SQL = ` + create table mylimittable (id integer not null primary key, name text); + delete from mylimittable; + ` + + var conn *SQLiteConn + sql.Register("sqlite3_with_limit", &SQLiteDriver{ + ConnectHook: func(c *SQLiteConn) error { + conn = c + return nil + }, + }) + + os.Remove("limit.db") + defer os.Remove("limit.db") + db, err := sql.Open("sqlite3_with_limit", "limit.db") + if err != nil { + log.Fatal(err) + } + defer db.Close() + + _, err = db.Exec(SQL) + if err != nil { + log.Fatal(err) + } + + if conn == nil { + log.Fatal("not set sqlite3 connection") + } + + { + query, args := createBulkInsertQuery(num, 0) + err := bulkInsert(db, query, args) + if err != nil { + log.Fatal(err) + } + } + + conn.SetLimit(SQLITE_LIMIT_VARIABLE_NUMBER, smallLimit) + { + query, args := createBulkInsertQuery(num, num) + err := bulkInsert(db, query, args) + if err == nil { + log.Fatal("expected failure didn't happen") + } + } + + conn.SetLimit(SQLITE_LIMIT_VARIABLE_NUMBER, bigLimit) + { + query, args := createBulkInsertQuery(500, num+num) + err := bulkInsert(db, query, args) + if err != nil { + log.Fatal(err) + } + } +} -- cgit v1.2.3