billing

package
v1.0.0-beta.217 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2025 License: Apache-2.0 Imports: 69 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExpectJSONEqual

func ExpectJSONEqual(t *testing.T, exp, actual any)

Types

type BaseSuite

type BaseSuite struct {
	suite.Suite
	*require.Assertions

	TestDB   *testutils.TestDB
	DBClient *db.Client

	BillingAdapter    billing.Adapter
	BillingService    billing.Service
	InvoiceCalculator *invoicecalc.MockableInvoiceCalculator

	FeatureService         feature.FeatureConnector
	FeatureRepo            feature.FeatureRepo
	MeterAdapter           *meteradapter.TestAdapter
	MockStreamingConnector *streamingtestutils.MockStreamingConnector

	CustomerService customer.Service

	AppService app.Service
	SandboxApp *appsandbox.MockableFactory
}

func (*BaseSuite) CreateDraftInvoice

func (s *BaseSuite) CreateDraftInvoice(t *testing.T, ctx context.Context, in DraftInvoiceInput) billing.Invoice

func (*BaseSuite) CreateGatheringInvoice

func (s *BaseSuite) CreateGatheringInvoice(t *testing.T, ctx context.Context, in DraftInvoiceInput)

func (*BaseSuite) CreateTestCustomer

func (s *BaseSuite) CreateTestCustomer(ns string, subjectKey string) *customer.Customer

func (*BaseSuite) DebugDumpInvoice

func (s *BaseSuite) DebugDumpInvoice(h string, i billing.Invoice)

func (*BaseSuite) GetSubscriptionMixInDependencies

func (b *BaseSuite) GetSubscriptionMixInDependencies() SubscriptionMixInDependencies

func (*BaseSuite) GetUniqueNamespace

func (s *BaseSuite) GetUniqueNamespace(prefix string) string

GetUniqueNamespace returns a unique namespace with the given prefix

func (*BaseSuite) InstallSandboxApp

func (s *BaseSuite) InstallSandboxApp(t *testing.T, ns string) app.App

func (*BaseSuite) ProvisionBillingProfile

func (s *BaseSuite) ProvisionBillingProfile(ctx context.Context, ns string, appID app.AppID, opts ...BillingProfileProvisionOption) *billing.Profile

func (*BaseSuite) SetupApiRequestsTotalFeature

func (s *BaseSuite) SetupApiRequestsTotalFeature(ctx context.Context, ns string) TestFeature

func (*BaseSuite) SetupSuite

func (s *BaseSuite) SetupSuite()

func (*BaseSuite) TearDownSuite

func (s *BaseSuite) TearDownSuite()

type BillingProfileEditFn

type BillingProfileEditFn func(p *billing.CreateProfileInput)

type BillingProfileProvisionOption

type BillingProfileProvisionOption func(*BillingProfileProvisionOptions)

func WithProgressiveBilling

func WithProgressiveBilling() BillingProfileProvisionOption

type BillingProfileProvisionOptions

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

type DraftInvoiceInput

type DraftInvoiceInput struct {
	Namespace string
	Customer  *customer.Customer
}

func (DraftInvoiceInput) Validate

func (i DraftInvoiceInput) Validate() error

type SubscriptionMixInDependencies

type SubscriptionMixInDependencies struct {
	DBClient *db.Client

	FeatureRepo     feature.FeatureRepo
	FeatureService  feature.FeatureConnector
	CustomerService customer.Service

	MeterAdapter           *meteradapter.TestAdapter
	MockStreamingConnector *streamingtestutils.MockStreamingConnector
}

func (SubscriptionMixInDependencies) Validate

func (d SubscriptionMixInDependencies) Validate() error

type SubscriptionMixin

type SubscriptionMixin struct {
	PlanService                 plan.Service
	SubscriptionService         subscription.Service
	SubscriptionAddonService    subscriptionaddon.Service
	SubscriptionPlanAdapter     subscriptiontestutils.PlanSubscriptionAdapter
	SubscriptionWorkflowService subscriptionworkflow.Service
}

func (*SubscriptionMixin) SetupEntitlements

func (*SubscriptionMixin) SetupSuite

func (s *SubscriptionMixin) SetupSuite(t *testing.T, deps SubscriptionMixInDependencies)

type TestFeature

type TestFeature struct {
	Cleanup func()
	Feature feature.Feature
}

Jump to

Keyboard shortcuts

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