@@ -462,6 +462,52 @@ func TestWorkspacePreset(t *testing.T) {
462462 }` ,
463463 ExpectError : regexp .MustCompile (`failed to parse cron spec: end of range \(26\) above maximum \(23\): 25-26` ),
464464 },
465+ {
466+ Name : "Prebuilds is set with a valid autoscaling.timezone field" ,
467+ Config : `
468+ data "coder_workspace_preset" "preset_1" {
469+ name = "preset_1"
470+ prebuilds {
471+ instances = 1
472+ autoscaling {
473+ timezone = "America/Los_Angeles"
474+ schedule {
475+ cron = "* 8-18 * * 1-5"
476+ instances = 3
477+ }
478+ }
479+ }
480+ }` ,
481+ ExpectError : nil ,
482+ Check : func (state * terraform.State ) error {
483+ require .Len (t , state .Modules , 1 )
484+ require .Len (t , state .Modules [0 ].Resources , 1 )
485+ resource := state .Modules [0 ].Resources ["data.coder_workspace_preset.preset_1" ]
486+ require .NotNil (t , resource )
487+ attrs := resource .Primary .Attributes
488+ require .Equal (t , attrs ["name" ], "preset_1" )
489+ require .Equal (t , attrs ["prebuilds.0.autoscaling.0.timezone" ], "America/Los_Angeles" )
490+ return nil
491+ },
492+ },
493+ {
494+ Name : "Prebuilds is set with an invalid autoscaling.timezone field" ,
495+ Config : `
496+ data "coder_workspace_preset" "preset_1" {
497+ name = "preset_1"
498+ prebuilds {
499+ instances = 1
500+ autoscaling {
501+ timezone = "InvalidLocation"
502+ schedule {
503+ cron = "* 8-18 * * 1-5"
504+ instances = 3
505+ }
506+ }
507+ }
508+ }` ,
509+ ExpectError : regexp .MustCompile (`failed to load location: unknown time zone InvalidLocation` ),
510+ },
465511 }
466512
467513 for _ , testcase := range testcases {
0 commit comments