Moved new postgres implementation to v2 folder, also added nil check for db object in postgres config

This commit is contained in:
Technerder
2021-07-26 15:34:46 -04:00
parent 868c89fd7e
commit 73a941a879
4 changed files with 16 additions and 10 deletions

View File

@@ -1,7 +1,7 @@
package postgres
package v2
import (
"github.com/jackc/pgx/v4/pgxpool"
"github.com/jackc/pgx/pgxpool"
"time"
)
@@ -30,9 +30,9 @@ type Config struct {
// ConfigDefault is the default config
var ConfigDefault = Config{
Table: "fiber_storage",
Reset: false,
GCInterval: 10 * time.Second,
Table: "fiber_storage",
Reset: false,
GCInterval: 10 * time.Second,
}
// Helper function to set default values

View File

@@ -1,10 +1,12 @@
package postgres
package v2
import (
"context"
"database/sql"
"errors"
"fmt"
"github.com/jackc/pgx/v4/pgxpool"
"reflect"
"strings"
"time"
)
@@ -45,6 +47,10 @@ func New(config ...Config) *Storage {
db := cfg.Db
if reflect.ValueOf(db).IsNil() {
panic(errors.New("db pool instance must be passed into the config"))
}
// Ping database
if err := db.Ping(context.Background()); err != nil {
panic(err)
@@ -180,4 +186,4 @@ func (s *Storage) checkSchema(tableName string) {
if strings.ToLower(string(data)) != "bytea" {
fmt.Printf(checkSchemaMsg, string(data))
}
}
}

View File

@@ -1,4 +1,4 @@
package postgres
package v2
import (
"context"
@@ -10,7 +10,7 @@ import (
)
var testStore = New(Config{
Reset: true,
Reset: true,
})
func Test_Postgres_Set(t *testing.T) {
@@ -163,7 +163,7 @@ func Test_SslRequiredMode(t *testing.T) {
}
}()
_ = New(Config{
Reset: true,
Reset: true,
})
}