-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Convert sqlutilmocks.DataSource -> sqlutil.TestDataSource using ramsq…
…l driver
- Loading branch information
1 parent
82733ac
commit 4ccf9e8
Showing
2 changed files
with
87 additions
and
86 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
package sqlutil | ||
|
||
import ( | ||
"context" | ||
"database/sql" | ||
"testing" | ||
|
||
"github.com/jmoiron/sqlx" | ||
_ "github.com/proullon/ramsql/driver" | ||
"github.com/stretchr/testify/require" | ||
|
||
"github.com/smartcontractkit/chainlink-common/pkg/sqlutil" | ||
) | ||
|
||
var _ sqlutil.DataSource = &TestDataSource{} | ||
|
||
// TestDataSource is a simple in-memory DataSource type which can be used for some types of unit testing. | ||
type TestDataSource struct { | ||
db *sql.DB | ||
} | ||
|
||
// BindNamed provides a mock function with given fields: _a0, _a1 | ||
func (ds *TestDataSource) BindNamed(_a0 string, _a1 interface{}) (string, []interface{}, error) { | ||
return "", nil, nil | ||
} | ||
|
||
// DriverName provides a mock function with given fields: | ||
func (ds *TestDataSource) DriverName() string { | ||
return "" | ||
} | ||
|
||
// ExecContext provides a mock function with given fields: ctx, query, args | ||
func (ds *TestDataSource) ExecContext(ctx context.Context, query string, args ...interface{}) (sql.Result, error) { | ||
return nil, nil | ||
} | ||
|
||
// GetContext provides a mock function with given fields: ctx, dest, query, args | ||
func (ds *TestDataSource) GetContext(ctx context.Context, dest interface{}, query string, args ...interface{}) error { | ||
return nil | ||
} | ||
|
||
// NamedExecContext provides a mock function with given fields: ctx, query, arg | ||
func (ds *TestDataSource) NamedExecContext(ctx context.Context, query string, arg interface{}) (sql.Result, error) { | ||
return nil, nil | ||
} | ||
|
||
// PrepareContext provides a mock function with given fields: ctx, query | ||
func (ds *TestDataSource) PrepareContext(ctx context.Context, query string) (*sql.Stmt, error) { | ||
return nil, nil | ||
} | ||
|
||
func (_m *TestDataSource) PrepareNamedContext(ctx context.Context, query string) (*sqlx.NamedStmt, error) { | ||
return nil, nil | ||
} | ||
|
||
// QueryContext provides a mock function with given fields: ctx, query, args | ||
func (ds *TestDataSource) QueryContext(ctx context.Context, query string, args ...interface{}) (*sql.Rows, error) { | ||
return nil, nil | ||
} | ||
|
||
// QueryRowxContext provides a mock function with given fields: ctx, query, args | ||
func (ds *TestDataSource) QueryRowxContext(ctx context.Context, query string, args ...interface{}) *sqlx.Row { | ||
return nil | ||
} | ||
|
||
// QueryxContext provides a mock function with given fields: ctx, query, args | ||
func (ds *TestDataSource) QueryxContext(ctx context.Context, query string, args ...interface{}) (*sqlx.Rows, error) { | ||
return nil, nil | ||
} | ||
|
||
// Rebind provides a mock function with given fields: _a0 | ||
func (ds *TestDataSource) Rebind(_a0 string) string { | ||
return "" | ||
} | ||
|
||
// SelectContext provides a mock function with given fields: ctx, dest, query, args | ||
func (ds *TestDataSource) SelectContext(ctx context.Context, dest interface{}, query string, args ...interface{}) error { | ||
return nil | ||
} | ||
|
||
// NewTestDataSource creates a new instance of DataSource. | ||
func NewTestDataSource(t *testing.T) *TestDataSource { | ||
db, err := sql.Open("ramsql", "testdb") | ||
require.NoError(t, err) | ||
t.Cleanup(func() { require.NoError(t, db.Close()) }) | ||
return &TestDataSource{db: db} | ||
} |