testhelpers

package
v1.136.0-pfs-166-payme... Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2025 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ContainerManager added in v1.135.0

type ContainerManager struct {
	Address   string
	Container *postgres.PostgresContainer
}

ContainerManager is a test utility containing a fully-migrated Postgres instance. To use this, run Init within a TestMain function and use the DbInstance to interact with the database as needed (e.g. to insert data prior to testing). Ensure to run TearDown at the end of the tests to clean up.

func Init added in v1.135.0

func Init(ctx context.Context, searchPath string) *ContainerManager

func (*ContainerManager) Restore added in v1.135.0

func (db *ContainerManager) Restore(ctx context.Context)

Restore restores the DB to the snapshot backup and re-establishes the connection

func (*ContainerManager) Seeder added in v1.135.0

func (db *ContainerManager) Seeder(ctx context.Context, t *testing.T) *Seeder

func (*ContainerManager) TearDown added in v1.135.0

func (db *ContainerManager) TearDown(ctx context.Context)

type DateHelper added in v1.135.0

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

func (DateHelper) Add added in v1.135.0

func (t DateHelper) Add(years int, months int, days int) DateHelper

func (DateHelper) Date added in v1.135.0

func (t DateHelper) Date() time.Time

func (DateHelper) DatePtr added in v1.135.0

func (t DateHelper) DatePtr() *time.Time

func (DateHelper) FinancialYear added in v1.135.0

func (t DateHelper) FinancialYear() string

func (DateHelper) String added in v1.135.0

func (t DateHelper) String() string

func (DateHelper) StringPtr added in v1.135.0

func (t DateHelper) StringPtr() *string

func (DateHelper) Sub added in v1.135.0

func (t DateHelper) Sub(years int, months int, days int) DateHelper

type FeeRange

type FeeRange struct {
	FromDate         time.Time
	ToDate           time.Time
	SupervisionLevel string
	Amount           int
}

type Seeder added in v1.135.0

type Seeder struct {
	Conn    *pgxpool.Pool
	Service Service
	// contains filtered or unexported fields
}

Seeder contains a test database connection pool and HTTP server for API calls

func (*Seeder) AddFeeRanges added in v1.135.0

func (s *Seeder) AddFeeRanges(ctx context.Context, invoiceId int, ranges []FeeRange)

func (*Seeder) ApproveAdjustment added in v1.135.0

func (s *Seeder) ApproveAdjustment(ctx context.Context, clientID int, adjustmentId int)

func (*Seeder) Begin added in v1.135.0

func (s *Seeder) Begin(ctx context.Context) (pgx.Tx, error)

func (*Seeder) CreateAdjustment added in v1.135.0

func (s *Seeder) CreateAdjustment(ctx context.Context, clientID int, invoiceId int, adjustmentType shared.AdjustmentType, amount int, notes string) int

func (*Seeder) CreateClient added in v1.135.0

func (s *Seeder) CreateClient(ctx context.Context, firstName string, surname string, courtRef string, sopNumber string) int

func (*Seeder) CreateDeputy added in v1.135.0

func (s *Seeder) CreateDeputy(ctx context.Context, clientId int, firstName string, surname string, deputyType string) int

func (*Seeder) CreateFeeReduction added in v1.135.0

func (s *Seeder) CreateFeeReduction(ctx context.Context, clientId int, feeType shared.FeeReductionType, startYear string, length int, notes string, createdAt time.Time)

func (*Seeder) CreateInvoice added in v1.135.0

func (s *Seeder) CreateInvoice(ctx context.Context, clientID int, invoiceType shared.InvoiceType, amount *string, raisedDate *string, startDate *string, endDate *string, supervisionLevel *string) (int, string)

func (*Seeder) CreateOrder added in v1.135.0

func (s *Seeder) CreateOrder(ctx context.Context, clientId int, status string)

func (*Seeder) CreatePayment added in v1.135.0

func (s *Seeder) CreatePayment(ctx context.Context, amount int, bankDate time.Time, courtRef string, ledgerType shared.TransactionType, uploadDate time.Time)

func (*Seeder) CreateTestAssignee added in v1.135.0

func (s *Seeder) CreateTestAssignee(ctx context.Context)

func (*Seeder) Exec added in v1.135.0

func (s *Seeder) Exec(ctx context.Context, str string, i ...interface{}) (pgconn.CommandTag, error)

func (*Seeder) Query added in v1.135.0

func (s *Seeder) Query(ctx context.Context, str string, i ...interface{}) (pgx.Rows, error)

func (*Seeder) QueryRow added in v1.135.0

func (s *Seeder) QueryRow(ctx context.Context, str string, i ...interface{}) pgx.Row

func (*Seeder) SeedData added in v1.135.0

func (s *Seeder) SeedData(data ...string)

func (*Seeder) Today added in v1.135.0

func (s *Seeder) Today() DateHelper

func (*Seeder) WithService added in v1.135.0

func (s *Seeder) WithService(service Service) *Seeder

type Service added in v1.135.0

type Service interface {
	AddManualInvoice(ctx context.Context, clientID int, invoice shared.AddManualInvoice) error
	AddInvoiceAdjustment(ctx context.Context, clientID int, invoiceId int, adjustment *shared.AddInvoiceAdjustmentRequest) (*shared.InvoiceReference, error)
	UpdatePendingInvoiceAdjustment(ctx context.Context, clientID int, adjustmentId int, status shared.AdjustmentStatus) error
	AddFeeReduction(ctx context.Context, clientId int, reduction shared.AddFeeReduction) error
	ProcessPaymentsUploadLine(ctx context.Context, tx *store.Tx, details shared.PaymentDetails, index int, failedLines *map[int]string) error
	BeginStoreTx(ctx context.Context) (*store.Tx, error)
}

Jump to

Keyboard shortcuts

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