// Code generated by smithy-go-codegen DO NOT EDIT. //go:build snapshot package sso import ( "context" "errors" "fmt" "github.com/aws/smithy-go/middleware" "io" "io/fs" "os" "testing" ) const ssprefix = "snapshot" type snapshotOK struct{} func (snapshotOK) Error() string { return "error: success" } func createp(path string) (*os.File, error) { if err := os.Mkdir(ssprefix, 0700); err != nil && !errors.Is(err, fs.ErrExist) { return nil, err } return os.Create(path) } func sspath(op string) string { return fmt.Sprintf("%s/api_op_%s.go.snap", ssprefix, op) } func updateSnapshot(stack *middleware.Stack, operation string) error { f, err := createp(sspath(operation)) if err != nil { return err } defer f.Close() if _, err := f.Write([]byte(stack.String())); err != nil { return err } return snapshotOK{} } func testSnapshot(stack *middleware.Stack, operation string) error { f, err := os.Open(sspath(operation)) if errors.Is(err, fs.ErrNotExist) { return snapshotOK{} } if err != nil { return err } defer f.Close() expected, err := io.ReadAll(f) if err != nil { return err } if actual := stack.String(); actual != string(expected) { return fmt.Errorf("%s != %s", expected, actual) } return snapshotOK{} } func TestCheckSnapshot_GetRoleCredentials(t *testing.T) { svc := New(Options{}) _, err := svc.GetRoleCredentials(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return testSnapshot(stack, "GetRoleCredentials") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestCheckSnapshot_ListAccountRoles(t *testing.T) { svc := New(Options{}) _, err := svc.ListAccountRoles(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return testSnapshot(stack, "ListAccountRoles") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestCheckSnapshot_ListAccounts(t *testing.T) { svc := New(Options{}) _, err := svc.ListAccounts(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return testSnapshot(stack, "ListAccounts") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestCheckSnapshot_Logout(t *testing.T) { svc := New(Options{}) _, err := svc.Logout(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return testSnapshot(stack, "Logout") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestUpdateSnapshot_GetRoleCredentials(t *testing.T) { svc := New(Options{}) _, err := svc.GetRoleCredentials(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return updateSnapshot(stack, "GetRoleCredentials") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestUpdateSnapshot_ListAccountRoles(t *testing.T) { svc := New(Options{}) _, err := svc.ListAccountRoles(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return updateSnapshot(stack, "ListAccountRoles") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestUpdateSnapshot_ListAccounts(t *testing.T) { svc := New(Options{}) _, err := svc.ListAccounts(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return updateSnapshot(stack, "ListAccounts") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } } func TestUpdateSnapshot_Logout(t *testing.T) { svc := New(Options{}) _, err := svc.Logout(context.Background(), nil, func(o *Options) { o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { return updateSnapshot(stack, "Logout") }) }) if _, ok := err.(snapshotOK); !ok && err != nil { t.Fatal(err) } }