Documentation
¶
Index ¶
- func AssertTotals(t *testing.T, expected ExpectedTotals, actual totals.Totals)
- func ExpectJSONEqual(t *testing.T, exp, actual any)
- func WithCustomInvoicingConfig(config appcustominvoicing.Configuration) setupCustomInvoicingOption
- type BaseSuite
- func (s *BaseSuite) AssertDecimalEqual(expected, actual alpacadecimal.Decimal, label string)
- func (s *BaseSuite) AssertTotals(expected ExpectedTotals, actual totals.Totals)
- func (s *BaseSuite) CreateDraftInvoice(t *testing.T, ctx context.Context, in DraftInvoiceInput) billing.StandardInvoice
- func (s *BaseSuite) CreateGatheringInvoice(t *testing.T, ctx context.Context, in DraftInvoiceInput)
- func (s *BaseSuite) CreateTestCustomer(ns string, subjectKey string) *customer.Customer
- func (s *BaseSuite) DebugDumpGatheringInvoice(h string, i billing.GatheringInvoice)
- func (s *BaseSuite) DebugDumpInvoice(h string, i billing.GenericInvoiceReader)
- func (s *BaseSuite) DebugDumpStandardInvoice(h string, i billing.StandardInvoice)
- func (b *BaseSuite) GetSubscriptionMixInDependencies() SubscriptionMixInDependencies
- func (s *BaseSuite) GetUniqueNamespace(prefix string) string
- func (s *BaseSuite) InstallSandboxApp(t *testing.T, ns string) app.App
- func (s *BaseSuite) ProvisionBillingProfile(ctx context.Context, ns string, appID app.AppID, ...) *billing.Profile
- func (s *BaseSuite) RequireTotals(expected ExpectedTotals, actual totals.Totals)
- func (s *BaseSuite) SetupApiRequestsTotalFeature(ctx context.Context, ns string) TestFeature
- func (s *BaseSuite) SetupCustomInvoicing(namespace string, opts ...setupCustomInvoicingOption) SetupCustomInvoicingResponse
- func (s *BaseSuite) SetupCustomInvoicingApp() appcustominvoicing.Service
- func (s *BaseSuite) SetupSuite()
- func (s *BaseSuite) TearDownSuite()
- func (s *BaseSuite) TearDownTest()
- type BillingProfileEditFn
- type BillingProfileProvisionOption
- type BillingProfileProvisionOptions
- type DraftInvoiceInput
- type ExpectedTotals
- type SetupCustomInvoicingResponse
- type SetupSuiteOptions
- type SubscriptionMixInDependencies
- type SubscriptionMixin
- type TestFeature
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AssertTotals ¶
func AssertTotals(t *testing.T, expected ExpectedTotals, actual totals.Totals)
func ExpectJSONEqual ¶
func WithCustomInvoicingConfig ¶
func WithCustomInvoicingConfig(config appcustominvoicing.Configuration) setupCustomInvoicingOption
Types ¶
type BaseSuite ¶
type BaseSuite struct {
suite.Suite
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
SubjectService subject.Service
CustomInvoicingService appcustominvoicing.Service
AppService app.Service
SandboxApp *appsandbox.MockableFactory
TaxCodeService taxcode.Service
}
func (*BaseSuite) AssertDecimalEqual ¶
func (s *BaseSuite) AssertDecimalEqual(expected, actual alpacadecimal.Decimal, label string)
func (*BaseSuite) AssertTotals ¶
func (s *BaseSuite) AssertTotals(expected ExpectedTotals, actual totals.Totals)
func (*BaseSuite) CreateDraftInvoice ¶
func (s *BaseSuite) CreateDraftInvoice(t *testing.T, ctx context.Context, in DraftInvoiceInput) billing.StandardInvoice
func (*BaseSuite) CreateGatheringInvoice ¶
func (*BaseSuite) CreateTestCustomer ¶
func (*BaseSuite) DebugDumpGatheringInvoice ¶
func (s *BaseSuite) DebugDumpGatheringInvoice(h string, i billing.GatheringInvoice)
func (*BaseSuite) DebugDumpInvoice ¶
func (s *BaseSuite) DebugDumpInvoice(h string, i billing.GenericInvoiceReader)
func (*BaseSuite) DebugDumpStandardInvoice ¶
func (s *BaseSuite) DebugDumpStandardInvoice(h string, i billing.StandardInvoice)
func (*BaseSuite) GetSubscriptionMixInDependencies ¶
func (b *BaseSuite) GetSubscriptionMixInDependencies() SubscriptionMixInDependencies
func (*BaseSuite) GetUniqueNamespace ¶
GetUniqueNamespace returns a unique namespace with the given prefix
func (*BaseSuite) InstallSandboxApp ¶
func (*BaseSuite) ProvisionBillingProfile ¶
func (*BaseSuite) RequireTotals ¶
func (s *BaseSuite) RequireTotals(expected ExpectedTotals, actual totals.Totals)
func (*BaseSuite) SetupApiRequestsTotalFeature ¶
func (s *BaseSuite) SetupApiRequestsTotalFeature(ctx context.Context, ns string) TestFeature
func (*BaseSuite) SetupCustomInvoicing ¶
func (s *BaseSuite) SetupCustomInvoicing(namespace string, opts ...setupCustomInvoicingOption) SetupCustomInvoicingResponse
func (*BaseSuite) SetupCustomInvoicingApp ¶
func (s *BaseSuite) SetupCustomInvoicingApp() appcustominvoicing.Service
func (*BaseSuite) SetupSuite ¶
func (s *BaseSuite) SetupSuite()
func (*BaseSuite) TearDownSuite ¶
func (s *BaseSuite) TearDownSuite()
func (*BaseSuite) TearDownTest ¶
func (s *BaseSuite) TearDownTest()
type BillingProfileEditFn ¶
type BillingProfileEditFn func(p *billing.CreateProfileInput)
type BillingProfileProvisionOption ¶
type BillingProfileProvisionOption func(*BillingProfileProvisionOptions)
func WithBillingProfileEditFn ¶
func WithBillingProfileEditFn(editFn BillingProfileEditFn) BillingProfileProvisionOption
func WithCollectionInterval ¶
func WithCollectionInterval(period datetime.ISODuration) BillingProfileProvisionOption
func WithManualApproval ¶
func WithManualApproval() BillingProfileProvisionOption
func WithProgressiveBilling ¶
func WithProgressiveBilling() BillingProfileProvisionOption
type BillingProfileProvisionOptions ¶
type BillingProfileProvisionOptions struct {
// contains filtered or unexported fields
}
type DraftInvoiceInput ¶
func (DraftInvoiceInput) Validate ¶
func (i DraftInvoiceInput) Validate() error
type ExpectedTotals ¶
type ExpectedTotals struct {
Amount float64 `json:"amount"`
ChargesTotal float64 `json:"chargesTotal"`
DiscountsTotal float64 `json:"discountsTotal"`
TaxesInclusiveTotal float64 `json:"taxesInclusiveTotal"`
TaxesExclusiveTotal float64 `json:"taxesExclusiveTotal"`
TaxesTotal float64 `json:"taxesTotal"`
Total float64 `json:"total"`
CreditsTotal float64 `json:"creditsTotal"`
}
type SetupSuiteOptions ¶
type SetupSuiteOptions struct {
ForceAtlas bool
}
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
EntitlementConnector entitlement.Service
}
func (*SubscriptionMixin) SetupEntitlements ¶
func (s *SubscriptionMixin) SetupEntitlements(t *testing.T, deps SubscriptionMixInDependencies) entitlement.Service
func (*SubscriptionMixin) SetupSuite ¶
func (s *SubscriptionMixin) SetupSuite(t *testing.T, deps SubscriptionMixInDependencies)
type TestFeature ¶
Click to show internal directories.
Click to hide internal directories.