testclient

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 30, 2024 License: MIT Imports: 15 Imported by: 0

Documentation

Overview

Package testclient provides a simple integresql client implementation for test purposes only. Please refer to https://github.com/allaboutapps/integresql-client-go for a full client implementation to be used in your application.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func DefaultClientFromEnv

func DefaultClientFromEnv() (*Client, error)

func NewClient

func NewClient(config ClientConfig) (*Client, error)

func (*Client) DiscardTemplate

func (c *Client) DiscardTemplate(ctx context.Context, hash string) error

func (*Client) FinalizeTemplate

func (c *Client) FinalizeTemplate(ctx context.Context, hash string) error

func (*Client) GetTestDatabase

func (c *Client) GetTestDatabase(ctx context.Context, hash string) (TestDatabase, error)

func (*Client) InitializeTemplate

func (c *Client) InitializeTemplate(ctx context.Context, hash string) (TemplateDatabase, error)

func (*Client) ResetAllTracking

func (c *Client) ResetAllTracking(ctx context.Context) error

func (*Client) ReturnTestDatabase

func (c *Client) ReturnTestDatabase(ctx context.Context, hash string, id int) error

func (*Client) SetupTemplate

func (c *Client) SetupTemplate(ctx context.Context, hash string, init func(conn string) error) error

func (*Client) SetupTemplateWithDBClient

func (c *Client) SetupTemplateWithDBClient(ctx context.Context, hash string, init func(db *sql.DB) error) error

type ClientConfig

type ClientConfig struct {
	BaseURL    string
	APIVersion string
}

func DefaultClientConfigFromEnv

func DefaultClientConfigFromEnv() ClientConfig

type Database

type Database struct {
	TemplateHash string         `json:"templateHash"`
	Config       DatabaseConfig `json:"config"`
}

type DatabaseConfig

type DatabaseConfig struct {
	Host             string            `json:"host"`
	Port             int               `json:"port"`
	Username         string            `json:"username"`
	Password         string            `json:"password"`
	Database         string            `json:"database"`
	AdditionalParams map[string]string `json:"additionalParams,omitempty"` // Optional additional connection parameters mapped into the connection string
}

func (DatabaseConfig) ConnectionString

func (c DatabaseConfig) ConnectionString() string

Generates a connection string to be passed to sql.Open or equivalents, assuming Postgres syntax

type TemplateDatabase

type TemplateDatabase struct {
	Database `json:"database"`
}

type TestDatabase

type TestDatabase struct {
	Database `json:"database"`

	ID int `json:"id"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL