Help us shape the future of Go! Take the 2026 Go Developer Survey

teststack

package
v1.8.3 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2026 License: MIT Imports: 135 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Stack

type Stack struct {
	Echo                           *echo.Echo
	S3Backend                      *s3backend.InMemoryBackend
	S3Handler                      *s3backend.S3Handler
	DDBHandler                     *ddbbackend.DynamoDBHandler
	IAMBackend                     *iambackend.InMemoryBackend
	IAMHandler                     *iambackend.Handler
	STSHandler                     *stsbackend.Handler
	SNSHandler                     *snsbackend.Handler
	SQSHandler                     *sqsbackend.Handler
	KMSHandler                     *kmsbackend.Handler
	SecretsManagerHandler          *smbackend.Handler
	LambdaHandler                  *lambdabackend.Handler
	EventBridgeHandler             *ebbackend.Handler
	APIGatewayHandler              *apigwbackend.Handler
	CloudWatchLogsHandler          *cwlogsbackend.Handler
	StepFunctionsHandler           *sfnbackend.Handler
	CloudWatchHandler              *cwbackend.Handler
	CloudFormationHandler          *cfnbackend.Handler
	KinesisHandler                 *kinesisbackend.Handler
	ElastiCacheHandler             *elasticachebackend.Handler
	Route53Handler                 *route53backend.Handler
	SESHandler                     *sesbackend.Handler
	SESv2Handler                   *sesv2backend.Handler
	EC2Handler                     *ec2backend.Handler
	ECRHandler                     *ecrbackend.Handler
	ECSHandler                     *ecsbackend.Handler
	IoTHandler                     *iotbackend.Handler
	FISHandler                     *fisbackend.Handler
	IdentityStoreHandler           *identitystorebackend.Handler
	ElasticsearchHandler           *elasticsearchbackend.Handler
	OpenSearchHandler              *opensearchbackend.Handler
	ACMHandler                     *acmbackend.Handler
	ACMPCAHandler                  *acmpcabackend.Handler
	RedshiftHandler                *redshiftbackend.Handler
	RDSHandler                     *rdsbackend.Handler
	DocDBHandler                   *docdbbackend.Handler
	NeptuneHandler                 *neptunebackend.Handler
	AWSConfigHandler               *awsconfigbackend.Handler
	S3ControlHandler               *s3controlbackend.Handler
	ResourceGroupsHandler          *resourcegroupsbackend.Handler
	ResourceGroupsTaggingHandler   *rgtabackend.Handler
	SWFHandler                     *swfbackend.Handler
	FirehoseHandler                *firehosebackend.Handler
	NetworkMonitorHandler          *networkmonitorbackend.Handler
	SchedulerHandler               *schedulerbackend.Handler
	Route53ResolverHandler         *route53resolverbackend.Handler
	TranscribeHandler              *transcribebackend.Handler
	PollyHandler                   *pollybackend.Handler
	SupportHandler                 *supportbackend.Handler
	CognitoIdentityHandler         *cognitoidentitybackend.Handler
	AppSyncHandler                 *appsyncbackend.Handler
	CognitoIDPHandler              *cognitoidpbackend.Handler
	IoTDataPlaneHandler            *iotdataplanebackend.Handler
	APIGatewayManagementAPIHandler *apigwmgmtbackend.Handler
	AppConfigDataHandler           *appconfigdatabackend.Handler
	AmplifyHandler                 *amplifybackend.Handler
	APIGatewayV2Handler            *apigwv2backend.Handler
	AppConfigHandler               *appconfigbackend.Handler
	AthenaHandler                  *athenabackend.Handler
	AutoscalingHandler             *autoscalingbackend.Handler
	ApplicationAutoscalingHandler  *applicationautoscalingbackend.Handler
	AppMeshHandler                 *appmeshbackend.Handler
	AppRunnerHandler               *apprunnerbackend.Handler
	BackupHandler                  *backupbackend.Handler
	CloudTrailHandler              *cloudtrailbackend.Handler
	BatchHandler                   *batchbackend.Handler
	BedrockHandler                 *bedrockbackend.Handler
	BedrockRuntimeHandler          *bedrockruntimebackend.Handler
	CeHandler                      *cebackend.Handler
	CloudControlHandler            *cloudcontrolbackend.Handler
	CloudFrontHandler              *cloudfrontbackend.Handler
	// CodeArtifactHandler provides access to the CodeArtifact backend.
	CodeArtifactHandler *codeartifactbackend.Handler
	// CodeBuildHandler provides access to the CodeBuild backend.
	CodeBuildHandler *codebuildbackend.Handler
	// CodeCommitHandler provides access to the CodeCommit backend.
	CodeCommitHandler *codecommitbackend.Handler
	// CodePipelineHandler provides access to the CodePipeline backend.
	CodePipelineHandler *codepipelinebackend.Handler
	// CodeConnectionsHandler provides access to the CodeConnections backend.
	CodeConnectionsHandler *codeconnectionsbackend.Handler
	// CodeDeployHandler provides access to the CodeDeploy backend.
	CodeDeployHandler *codedeploybackend.Handler
	// DMSHandler provides access to the DMS backend.
	DMSHandler *dmsbackend.Handler
	// CodeStarConnectionsHandler provides access to the CodeStar Connections backend.
	CodeStarConnectionsHandler *codestarconnectionsbackend.Handler
	// DynamoDBStreamsHandler provides access to the DynamoDB Streams backend.
	DynamoDBStreamsHandler *dynamodbstreamsbackend.Handler
	// ElasticbeanstalkHandler provides access to the Elastic Beanstalk backend.
	ElasticbeanstalkHandler *elasticbeanstalkbackend.Handler
	// EFSHandler provides access to the EFS backend.
	EFSHandler *efsbackend.Handler
	// EKSHandler provides access to the EKS backend.
	EKSHandler *eksbackend.Handler
	// ELBHandler provides access to the Classic ELB backend.
	ELBHandler *elbbackend.Handler
	// ELBv2Handler provides access to the ELBv2 (ALB/NLB) backend.
	ELBv2Handler *elbv2backend.Handler
	// EmrServerlessHandler provides access to the EMR Serverless backend.
	EmrServerlessHandler *emrserverlessbackend.Handler
	// EMRHandler provides access to the EMR backend.
	EMRHandler *emrbackend.Handler
	// GlacierHandler provides access to the Glacier backend.
	GlacierHandler *glacierbackend.Handler
	// IoTAnalyticsHandler provides access to the IoT Analytics backend.
	IoTAnalyticsHandler *iotanalyticsbackend.Handler
	// IoTWirelessHandler provides access to the IoT Wireless backend.
	IoTWirelessHandler *iotwirelessbackend.Handler
	// KinesisAnalyticsHandler provides access to the Kinesis Analytics backend.
	KinesisAnalyticsHandler *kinesisanalyticsbackend.Handler
	// KafkaHandler provides access to the MSK Kafka backend.
	KafkaHandler *kafkabackend.Handler
	// KinesisAnalyticsV2Handler provides access to the Kinesis Data Analytics v2 backend.
	KinesisAnalyticsV2Handler *kinesisanalyticsv2backend.Handler
	// LakeFormationHandler provides access to the Lake Formation backend.
	LakeFormationHandler *lakeformationbackend.Handler
	// MediaConvertHandler provides access to the MediaConvert backend.
	MediaConvertHandler *mediaconvertbackend.Handler
	// MQHandler provides access to the Amazon MQ backend.
	MQHandler *mqbackend.Handler
	// MediaStoreHandler provides access to the MediaStore backend.
	MediaStoreHandler *mediastorebackend.Handler
	// MediaStoreDataHandler provides access to the MediaStore Data backend.
	MediaStoreDataHandler *mediastoredatabackend.Handler
	// MemoryDBHandler provides access to the MemoryDB backend.
	MemoryDBHandler *memorydbbackend.Handler
	// OrganizationsHandler provides access to the Organizations backend.
	OrganizationsHandler *organizationsbackend.Handler
	// MWAAHandler provides access to the MWAA backend.
	MWAAHandler *mwaabackend.Handler
	// PinpointHandler provides access to the Pinpoint backend.
	PinpointHandler *pinpointbackend.Handler
	// PipesHandler provides access to the EventBridge Pipes backend.
	PipesHandler *pipesbackend.Handler
	// RDSDataHandler provides access to the RDS Data backend.
	RDSDataHandler *rdsdatabackend.Handler
	// RAMHandler provides access to the RAM backend.
	RAMHandler *rambackend.Handler
	// RedshiftDataHandler provides access to the Redshift Data backend.
	RedshiftDataHandler *redshiftdatabackend.Handler
	// ForecastHandler provides access to the Amazon Forecast backend.
	ForecastHandler *forecastbackend.Handler
	// SageMakerHandler provides access to the SageMaker backend.
	SageMakerHandler *sagemakerbackend.Handler
	// SageMakerRuntimeHandler provides access to the SageMaker Runtime backend.
	SageMakerRuntimeHandler *sagemakerruntimebackend.Handler
	// ServiceDiscoveryHandler provides access to the Service Discovery backend.
	ServiceDiscoveryHandler *servicediscoverybackend.Handler
	// ServerlessRepoHandler provides access to the Serverless Application Repository backend.
	ServerlessRepoHandler *serverlessrepobackend.Handler
	// ShieldHandler provides access to the Shield backend.
	ShieldHandler *shieldbackend.Handler
	// TextractHandler provides access to the Textract backend.
	TextractHandler *textractbackend.Handler
	// TimestreamWriteHandler provides access to the Timestream Write backend.
	TimestreamWriteHandler *timestreamwritebackend.Handler
	// TimestreamQueryHandler provides access to the Timestream Query backend.
	TimestreamQueryHandler *timestreamquerybackend.Handler
	// TransferHandler provides access to the Transfer backend.
	TransferHandler *transferbackend.Handler
	// VerifiedPermissionsHandler provides access to the Verified Permissions backend.
	VerifiedPermissionsHandler *verifiedpermissionsbackend.Handler
	// VpcLatticeHandler provides access to the VPC Lattice backend.
	VpcLatticeHandler *vpclatticebackend.Handler
	// Wafv2Handler provides access to the WAFv2 backend.
	Wafv2Handler *wafv2backend.Handler
	// XrayHandler provides access to the X-Ray backend.
	XrayHandler *xraybackend.Handler
	// S3TablesHandler provides access to the S3 Tables backend.
	S3TablesHandler *s3tablesbackend.Handler
	S3Client        *s3.Client
	DDBClient       *dynamodb.Client
	FaultStore      *chaos.FaultStore
	Dashboard       *dashboard.DashboardHandler
}

Stack holds a fully wired in-memory test stack with all services, the Echo router (correctly mounted), AWS SDK clients, and the dashboard handler.

func New

func New(t *testing.T) *Stack

New creates a fully wired integration stack for testing. It sets up all in-memory backends, handlers, the service registry with router, AWS SDK clients (routed back through Echo via InMemClient), and the dashboard.

func (*Stack) CreateDDBTable

func (s *Stack) CreateDDBTable(t *testing.T, tableName string)

CreateDDBTable creates a DynamoDB table with a simple string hash key "id".

func (*Stack) CreateS3Bucket

func (s *Stack) CreateS3Bucket(t *testing.T, bucketName string)

CreateS3Bucket creates an S3 bucket with the given name.

Jump to

Keyboard shortcuts

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