From 6b5c95335ef0a96fd7b5c549cd66d7769354532c Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Thu, 2 Nov 2023 16:04:05 +0000 Subject: [PATCH 1/8] fix resourceDashboardUpdate --- internal/service/quicksight/dashboard.go | 26 ++++++++++++++----- internal/service/quicksight/dashboard_test.go | 4 +-- internal/service/quicksight/status.go | 4 +-- internal/service/quicksight/wait.go | 6 ++--- 4 files changed, 26 insertions(+), 14 deletions(-) diff --git a/internal/service/quicksight/dashboard.go b/internal/service/quicksight/dashboard.go index e8f9ba35300..39c50bbbc01 100644 --- a/internal/service/quicksight/dashboard.go +++ b/internal/service/quicksight/dashboard.go @@ -203,7 +203,7 @@ func resourceDashboardRead(ctx context.Context, d *schema.ResourceData, meta int return diag.FromErr(err) } - out, err := FindDashboardByID(ctx, conn, d.Id()) + out, err := FindDashboardByID(ctx, conn, d.Id(), -1) if !d.IsNewResource() && tfresource.NotFound(err) { log.Printf("[WARN] QuickSight Dashboard (%s) not found, removing from state", d.Id()) @@ -297,14 +297,15 @@ func resourceDashboardUpdate(ctx context.Context, d *schema.ResourceData, meta i return create.DiagError(names.QuickSight, create.ErrActionUpdating, ResNameDashboard, d.Id(), err) } - if _, err := waitDashboardUpdated(ctx, conn, d.Id(), d.Timeout(schema.TimeoutUpdate)); err != nil { + updatedVersionNumber := extractVersionFromARN(aws.StringValue(out.VersionArn)) + if _, err := waitDashboardUpdated(ctx, conn, d.Id(), *updatedVersionNumber, d.Timeout(schema.TimeoutUpdate)); err != nil { return create.DiagError(names.QuickSight, create.ErrActionWaitingForUpdate, ResNameDashboard, d.Id(), err) } publishVersion := &quicksight.UpdateDashboardPublishedVersionInput{ AwsAccountId: aws.String(awsAccountId), DashboardId: aws.String(dashboardId), - VersionNumber: extractVersionFromARN(aws.StringValue(out.VersionArn)), + VersionNumber: updatedVersionNumber, } _, err = conn.UpdateDashboardPublishedVersionWithContext(ctx, publishVersion) if err != nil { @@ -367,15 +368,26 @@ func resourceDashboardDelete(ctx context.Context, d *schema.ResourceData, meta i return nil } -func FindDashboardByID(ctx context.Context, conn *quicksight.QuickSight, id string) (*quicksight.Dashboard, error) { +// Pass version as -1 for latest published version, or specify a specific version if required +func FindDashboardByID(ctx context.Context, conn *quicksight.QuickSight, id string, version int64) (*quicksight.Dashboard, error) { awsAccountId, dashboardId, err := ParseDashboardId(id) if err != nil { return nil, err } - descOpts := &quicksight.DescribeDashboardInput{ - AwsAccountId: aws.String(awsAccountId), - DashboardId: aws.String(dashboardId), + var descOpts *quicksight.DescribeDashboardInput + + if version == -1 { + descOpts = &quicksight.DescribeDashboardInput{ + AwsAccountId: aws.String(awsAccountId), + DashboardId: aws.String(dashboardId), + } + } else { + descOpts = &quicksight.DescribeDashboardInput{ + AwsAccountId: aws.String(awsAccountId), + DashboardId: aws.String(dashboardId), + VersionNumber: &version, + } } out, err := conn.DescribeDashboardWithContext(ctx, descOpts) diff --git a/internal/service/quicksight/dashboard_test.go b/internal/service/quicksight/dashboard_test.go index 5f92c90007b..50e4572136d 100644 --- a/internal/service/quicksight/dashboard_test.go +++ b/internal/service/quicksight/dashboard_test.go @@ -206,7 +206,7 @@ func testAccCheckDashboardDestroy(ctx context.Context) resource.TestCheckFunc { continue } - output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID) + output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, -1) if err != nil { if tfawserr.ErrCodeEquals(err, quicksight.ErrCodeResourceNotFoundException) { return nil @@ -235,7 +235,7 @@ func testAccCheckDashboardExists(ctx context.Context, name string, dashboard *qu } conn := acctest.Provider.Meta().(*conns.AWSClient).QuickSightConn(ctx) - output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID) + output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, -1) if err != nil { return create.Error(names.QuickSight, create.ErrActionCheckingExistence, tfquicksight.ResNameDashboard, rs.Primary.ID, err) diff --git a/internal/service/quicksight/status.go b/internal/service/quicksight/status.go index 81a0ffee49f..9f5a9500c5e 100644 --- a/internal/service/quicksight/status.go +++ b/internal/service/quicksight/status.go @@ -51,9 +51,9 @@ func statusTemplate(ctx context.Context, conn *quicksight.QuickSight, id string) } // Fetch Dashboard status -func statusDashboard(ctx context.Context, conn *quicksight.QuickSight, id string) retry.StateRefreshFunc { +func statusDashboard(ctx context.Context, conn *quicksight.QuickSight, id string, version int64) retry.StateRefreshFunc { return func() (interface{}, string, error) { - out, err := FindDashboardByID(ctx, conn, id) + out, err := FindDashboardByID(ctx, conn, id, version) if tfresource.NotFound(err) { return nil, "", nil } diff --git a/internal/service/quicksight/wait.go b/internal/service/quicksight/wait.go index 85a740c7a12..65a60f4eeea 100644 --- a/internal/service/quicksight/wait.go +++ b/internal/service/quicksight/wait.go @@ -133,7 +133,7 @@ func waitDashboardCreated(ctx context.Context, conn *quicksight.QuickSight, id s stateConf := &retry.StateChangeConf{ Pending: []string{quicksight.ResourceStatusCreationInProgress}, Target: []string{quicksight.ResourceStatusCreationSuccessful}, - Refresh: statusDashboard(ctx, conn, id), + Refresh: statusDashboard(ctx, conn, id, -1), Timeout: timeout, NotFoundChecks: 20, ContinuousTargetOccurence: 2, @@ -161,11 +161,11 @@ func waitDashboardCreated(ctx context.Context, conn *quicksight.QuickSight, id s return nil, err } -func waitDashboardUpdated(ctx context.Context, conn *quicksight.QuickSight, id string, timeout time.Duration) (*quicksight.Dashboard, error) { +func waitDashboardUpdated(ctx context.Context, conn *quicksight.QuickSight, id string, version int64, timeout time.Duration) (*quicksight.Dashboard, error) { stateConf := &retry.StateChangeConf{ Pending: []string{quicksight.ResourceStatusUpdateInProgress, quicksight.ResourceStatusCreationInProgress}, Target: []string{quicksight.ResourceStatusUpdateSuccessful, quicksight.ResourceStatusCreationSuccessful}, - Refresh: statusDashboard(ctx, conn, id), + Refresh: statusDashboard(ctx, conn, id, version), Timeout: timeout, NotFoundChecks: 20, ContinuousTargetOccurence: 2, From 0b43addafd6826cfff6f925013d273aedfbe503a Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Thu, 2 Nov 2023 16:36:15 +0000 Subject: [PATCH 2/8] add changelog --- .changelog/34227.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/34227.txt diff --git a/.changelog/34227.txt b/.changelog/34227.txt new file mode 100644 index 00000000000..1371df6c0d3 --- /dev/null +++ b/.changelog/34227.txt @@ -0,0 +1,3 @@ +```release-note:bug +resource/aws_quicksight_dashboard: Fix failure when updating a dashboard takes a while +``` From 3028f4a12875184bb44801b125faf11a568aa13a Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Fri, 3 Nov 2023 00:06:56 +0000 Subject: [PATCH 3/8] update unit tests --- internal/service/quicksight/dashboard_test.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/internal/service/quicksight/dashboard_test.go b/internal/service/quicksight/dashboard_test.go index 50e4572136d..2db82a4eeb6 100644 --- a/internal/service/quicksight/dashboard_test.go +++ b/internal/service/quicksight/dashboard_test.go @@ -156,6 +156,8 @@ func TestAccQuickSightDashboard_updateVersionNumber(t *testing.T) { resource.TestCheckResourceAttr(resourceName, "name", rNameUpdated), resource.TestCheckResourceAttr(resourceName, "status", quicksight.ResourceStatusCreationSuccessful), resource.TestCheckResourceAttr(resourceName, "version_number", "2"), + testAccCheckDashboardVersionExists(ctx, resourceName, 1, &dashboard), + testAccCheckDashboardName(&dashboard, rName), ), }, }, @@ -224,6 +226,10 @@ func testAccCheckDashboardDestroy(ctx context.Context) resource.TestCheckFunc { } func testAccCheckDashboardExists(ctx context.Context, name string, dashboard *quicksight.Dashboard) resource.TestCheckFunc { + return testAccCheckDashboardVersionExists(ctx, name, -1, dashboard) +} + +func testAccCheckDashboardVersionExists(ctx context.Context, name string, version int64, dashboard *quicksight.Dashboard) resource.TestCheckFunc { return func(s *terraform.State) error { rs, ok := s.RootModule().Resources[name] if !ok { @@ -235,7 +241,7 @@ func testAccCheckDashboardExists(ctx context.Context, name string, dashboard *qu } conn := acctest.Provider.Meta().(*conns.AWSClient).QuickSightConn(ctx) - output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, -1) + output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, version) if err != nil { return create.Error(names.QuickSight, create.ErrActionCheckingExistence, tfquicksight.ResNameDashboard, rs.Primary.ID, err) @@ -247,6 +253,16 @@ func testAccCheckDashboardExists(ctx context.Context, name string, dashboard *qu } } +func testAccCheckDashboardName(dashboard *quicksight.Dashboard, expectedName string) resource.TestCheckFunc { + return func(s *terraform.State) error { + if *dashboard.Name != expectedName { + return create.Error(names.QuickSight, create.ErrActionChecking, tfquicksight.ResNameDashboard, *dashboard.Name, errors.New("value does not match expected")) + } + + return nil + } +} + func testAccDashboardConfigBase(rId string, rName string) string { return acctest.ConfigCompose( testAccDataSetConfigBase(rId, rName), From 36f8bcd7e53e506cfb5f2668ed744387f3346af6 Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Tue, 12 Mar 2024 22:12:27 +0000 Subject: [PATCH 4/8] refactor: address PR comments --- internal/service/quicksight/dashboard.go | 32 ++++++++----------- internal/service/quicksight/dashboard_test.go | 4 +-- internal/service/quicksight/wait.go | 2 +- 3 files changed, 16 insertions(+), 22 deletions(-) diff --git a/internal/service/quicksight/dashboard.go b/internal/service/quicksight/dashboard.go index 39c50bbbc01..83ed4b4f014 100644 --- a/internal/service/quicksight/dashboard.go +++ b/internal/service/quicksight/dashboard.go @@ -139,6 +139,7 @@ func ResourceDashboard() *schema.Resource { const ( ResNameDashboard = "Dashboard" + DashboardLatestVersion int64 = -1 ) func resourceDashboardCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { @@ -203,7 +204,7 @@ func resourceDashboardRead(ctx context.Context, d *schema.ResourceData, meta int return diag.FromErr(err) } - out, err := FindDashboardByID(ctx, conn, d.Id(), -1) + out, err := FindDashboardByID(ctx, conn, d.Id(), DashboardLatestVersion) if !d.IsNewResource() && tfresource.NotFound(err) { log.Printf("[WARN] QuickSight Dashboard (%s) not found, removing from state", d.Id()) @@ -298,14 +299,14 @@ func resourceDashboardUpdate(ctx context.Context, d *schema.ResourceData, meta i } updatedVersionNumber := extractVersionFromARN(aws.StringValue(out.VersionArn)) - if _, err := waitDashboardUpdated(ctx, conn, d.Id(), *updatedVersionNumber, d.Timeout(schema.TimeoutUpdate)); err != nil { + if _, err := waitDashboardUpdated(ctx, conn, d.Id(), updatedVersionNumber, d.Timeout(schema.TimeoutUpdate)); err != nil { return create.DiagError(names.QuickSight, create.ErrActionWaitingForUpdate, ResNameDashboard, d.Id(), err) } publishVersion := &quicksight.UpdateDashboardPublishedVersionInput{ AwsAccountId: aws.String(awsAccountId), DashboardId: aws.String(dashboardId), - VersionNumber: updatedVersionNumber, + VersionNumber: aws.Int64(updatedVersionNumber), } _, err = conn.UpdateDashboardPublishedVersionWithContext(ctx, publishVersion) if err != nil { @@ -368,26 +369,19 @@ func resourceDashboardDelete(ctx context.Context, d *schema.ResourceData, meta i return nil } -// Pass version as -1 for latest published version, or specify a specific version if required +// Pass version as DashboardLatestVersion for latest published version, or specify a specific version if required func FindDashboardByID(ctx context.Context, conn *quicksight.QuickSight, id string, version int64) (*quicksight.Dashboard, error) { awsAccountId, dashboardId, err := ParseDashboardId(id) if err != nil { return nil, err } - var descOpts *quicksight.DescribeDashboardInput - - if version == -1 { - descOpts = &quicksight.DescribeDashboardInput{ - AwsAccountId: aws.String(awsAccountId), - DashboardId: aws.String(dashboardId), - } - } else { - descOpts = &quicksight.DescribeDashboardInput{ - AwsAccountId: aws.String(awsAccountId), - DashboardId: aws.String(dashboardId), - VersionNumber: &version, - } + descOpts := &quicksight.DescribeDashboardInput{ + AwsAccountId: aws.String(awsAccountId), + DashboardId: aws.String(dashboardId), + } + if version != DashboardLatestVersion { + descOpts.VersionNumber = aws.Int64(version) } out, err := conn.DescribeDashboardWithContext(ctx, descOpts) @@ -422,7 +416,7 @@ func createDashboardId(awsAccountID, dashboardId string) string { return fmt.Sprintf("%s,%s", awsAccountID, dashboardId) } -func extractVersionFromARN(arn string) *int64 { +func extractVersionFromARN(arn string) int64 { version, _ := strconv.Atoi(arn[strings.LastIndex(arn, "/")+1:]) - return aws.Int64(int64(version)) + return int64(version) } diff --git a/internal/service/quicksight/dashboard_test.go b/internal/service/quicksight/dashboard_test.go index 2db82a4eeb6..61314699c48 100644 --- a/internal/service/quicksight/dashboard_test.go +++ b/internal/service/quicksight/dashboard_test.go @@ -208,7 +208,7 @@ func testAccCheckDashboardDestroy(ctx context.Context) resource.TestCheckFunc { continue } - output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, -1) + output, err := tfquicksight.FindDashboardByID(ctx, conn, rs.Primary.ID, tfquicksight.DashboardLatestVersion) if err != nil { if tfawserr.ErrCodeEquals(err, quicksight.ErrCodeResourceNotFoundException) { return nil @@ -226,7 +226,7 @@ func testAccCheckDashboardDestroy(ctx context.Context) resource.TestCheckFunc { } func testAccCheckDashboardExists(ctx context.Context, name string, dashboard *quicksight.Dashboard) resource.TestCheckFunc { - return testAccCheckDashboardVersionExists(ctx, name, -1, dashboard) + return testAccCheckDashboardVersionExists(ctx, name, tfquicksight.DashboardLatestVersion, dashboard) } func testAccCheckDashboardVersionExists(ctx context.Context, name string, version int64, dashboard *quicksight.Dashboard) resource.TestCheckFunc { diff --git a/internal/service/quicksight/wait.go b/internal/service/quicksight/wait.go index 65a60f4eeea..baddd3348cb 100644 --- a/internal/service/quicksight/wait.go +++ b/internal/service/quicksight/wait.go @@ -133,7 +133,7 @@ func waitDashboardCreated(ctx context.Context, conn *quicksight.QuickSight, id s stateConf := &retry.StateChangeConf{ Pending: []string{quicksight.ResourceStatusCreationInProgress}, Target: []string{quicksight.ResourceStatusCreationSuccessful}, - Refresh: statusDashboard(ctx, conn, id, -1), + Refresh: statusDashboard(ctx, conn, id, DashboardLatestVersion), Timeout: timeout, NotFoundChecks: 20, ContinuousTargetOccurence: 2, From d552ebd3308dbdd834dca881ce99a4db96638e83 Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Tue, 12 Mar 2024 22:29:00 +0000 Subject: [PATCH 5/8] refactor: address PR comments --- internal/service/quicksight/dashboard_test.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/service/quicksight/dashboard_test.go b/internal/service/quicksight/dashboard_test.go index 61314699c48..c2a1f007b44 100644 --- a/internal/service/quicksight/dashboard_test.go +++ b/internal/service/quicksight/dashboard_test.go @@ -125,6 +125,7 @@ func TestAccQuickSightDashboard_updateVersionNumber(t *testing.T) { ctx := acctest.Context(t) var dashboard quicksight.Dashboard + var dashboardV1 quicksight.Dashboard resourceName := "aws_quicksight_dashboard.test" rName := sdkacctest.RandomWithPrefix(acctest.ResourcePrefix) rNameUpdated := sdkacctest.RandomWithPrefix(acctest.ResourcePrefix) @@ -151,13 +152,13 @@ func TestAccQuickSightDashboard_updateVersionNumber(t *testing.T) { { Config: testAccDashboardConfig_basic(rId, rNameUpdated), Check: resource.ComposeTestCheckFunc( - testAccCheckDashboardExists(ctx, resourceName, &dashboard), + testAccCheckDashboardExists(ctx, resourceName, &dashboardV1), resource.TestCheckResourceAttr(resourceName, "dashboard_id", rId), resource.TestCheckResourceAttr(resourceName, "name", rNameUpdated), resource.TestCheckResourceAttr(resourceName, "status", quicksight.ResourceStatusCreationSuccessful), resource.TestCheckResourceAttr(resourceName, "version_number", "2"), - testAccCheckDashboardVersionExists(ctx, resourceName, 1, &dashboard), - testAccCheckDashboardName(&dashboard, rName), + testAccCheckDashboardVersionExists(ctx, resourceName, 1, &dashboardV1), + testAccCheckDashboardName(&dashboardV1, rName), ), }, }, From 55b54be66bd1c3d6d59ee52592fdff734702f3b8 Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Tue, 12 Mar 2024 22:32:52 +0000 Subject: [PATCH 6/8] fix: typos --- .../service/quicksight/schema/template_sheet.go | 14 +++++++++----- internal/service/quicksight/schema/visual_table.go | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/internal/service/quicksight/schema/template_sheet.go b/internal/service/quicksight/schema/template_sheet.go index 887f5919750..d67e18edb0a 100644 --- a/internal/service/quicksight/schema/template_sheet.go +++ b/internal/service/quicksight/schema/template_sheet.go @@ -1284,11 +1284,15 @@ func expandGridLayoutElement(tfMap map[string]interface{}) *quicksight.GridLayou if v, ok := tfMap["row_span"].(int); ok && v != 0 { layout.RowSpan = aws.Int64(int64(v)) } - if v, null, _ := nullable.Int(tfMap["column_index"].(string)).Value(); !null { - layout.ColumnIndex = aws.Int64(v) + if v, ok := tfMap["column_index"].(string); ok && v != "" { + if i, null, _ := nullable.Int(v).Value(); !null { + layout.ColumnIndex = aws.Int64(i) + } } - if v, null, _ := nullable.Int(tfMap["row_index"].(string)).Value(); !null { - layout.RowIndex = aws.Int64(v) + if v, ok := tfMap["row_index"].(string); ok && v != "" { + if i, null, _ := nullable.Int(v).Value(); !null { + layout.RowIndex = aws.Int64(i) + } } return layout @@ -1739,7 +1743,7 @@ func flattenFreeFormLayoutCanvasSizeOptions(apiObject *quicksight.FreeFormLayout tfMap := map[string]interface{}{} if apiObject.ScreenCanvasSizeOptions != nil { - tfMap["canvas_size_options"] = flattenFreeFormLayoutScreenCanvasSizeOptions(apiObject.ScreenCanvasSizeOptions) + tfMap["screen_canvas_size_options"] = flattenFreeFormLayoutScreenCanvasSizeOptions(apiObject.ScreenCanvasSizeOptions) } return []interface{}{tfMap} diff --git a/internal/service/quicksight/schema/visual_table.go b/internal/service/quicksight/schema/visual_table.go index 227889e7efb..7b059ae6ee0 100644 --- a/internal/service/quicksight/schema/visual_table.go +++ b/internal/service/quicksight/schema/visual_table.go @@ -1091,7 +1091,7 @@ func flattenTableFieldOption(apiObject []*quicksight.TableFieldOption) []interfa tfMap["url_styling"] = flattenTableFieldURLConfiguration(config.URLStyling) } if config.Visibility != nil { - tfMap["visbility"] = aws.StringValue(config.Visibility) + tfMap["visibility"] = aws.StringValue(config.Visibility) } if config.Width != nil { tfMap["width"] = aws.StringValue(config.Width) From 061a3212533acf45e8d0298c36bc1c70fddba929 Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Tue, 12 Mar 2024 22:47:43 +0000 Subject: [PATCH 7/8] chore: update changelog --- .changelog/34227.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.changelog/34227.txt b/.changelog/34227.txt index 1371df6c0d3..5560c71437c 100644 --- a/.changelog/34227.txt +++ b/.changelog/34227.txt @@ -1,3 +1,11 @@ ```release-note:bug resource/aws_quicksight_dashboard: Fix failure when updating a dashboard takes a while ``` + +```release-note:bug +resource/aws_quicksight_template: Fix "a number is required" errors when state contains an empty string +``` + +```release-note:bug +resource/aws_quicksight_template: Fix "Invalid address to set" errors +``` From 6cf30f5e862cde5e1e536301a46319ccb056af82 Mon Sep 17 00:00:00 2001 From: dsbibby <17053612+dsbibby@users.noreply.github.com> Date: Tue, 12 Mar 2024 23:38:44 +0000 Subject: [PATCH 8/8] chore: linting fixes --- internal/service/quicksight/dashboard.go | 2 +- internal/service/quicksight/dashboard_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/service/quicksight/dashboard.go b/internal/service/quicksight/dashboard.go index 83ed4b4f014..3acb5ff8dbe 100644 --- a/internal/service/quicksight/dashboard.go +++ b/internal/service/quicksight/dashboard.go @@ -138,7 +138,7 @@ func ResourceDashboard() *schema.Resource { } const ( - ResNameDashboard = "Dashboard" + ResNameDashboard = "Dashboard" DashboardLatestVersion int64 = -1 ) diff --git a/internal/service/quicksight/dashboard_test.go b/internal/service/quicksight/dashboard_test.go index c2a1f007b44..bd37ce56e8a 100644 --- a/internal/service/quicksight/dashboard_test.go +++ b/internal/service/quicksight/dashboard_test.go @@ -125,7 +125,7 @@ func TestAccQuickSightDashboard_updateVersionNumber(t *testing.T) { ctx := acctest.Context(t) var dashboard quicksight.Dashboard - var dashboardV1 quicksight.Dashboard + var dashboardV1 quicksight.Dashboard resourceName := "aws_quicksight_dashboard.test" rName := sdkacctest.RandomWithPrefix(acctest.ResourcePrefix) rNameUpdated := sdkacctest.RandomWithPrefix(acctest.ResourcePrefix)