@@ -462,6 +462,14 @@ func Test_WorkspaceTagDefaultsFromFile(t *testing.T) {
462
462
type = bool
463
463
default = true
464
464
}
465
+ variable "listvar" {
466
+ type = list(string)
467
+ default = ["a"]
468
+ }
469
+ variable "mapvar" {
470
+ type = map(string)
471
+ default = {"a": "b"}
472
+ }
465
473
data "coder_parameter" "stringparam" {
466
474
name = "stringparam"
467
475
type = "string"
@@ -487,6 +495,8 @@ func Test_WorkspaceTagDefaultsFromFile(t *testing.T) {
487
495
"stringvar" = var.stringvar
488
496
"numvar" = var.numvar
489
497
"boolvar" = var.boolvar
498
+ "listvar" = var.listvar
499
+ "mapvar" = var.mapvar
490
500
"stringparam" = data.coder_parameter.stringparam.value
491
501
"numparam" = data.coder_parameter.numparam.value
492
502
"boolparam" = data.coder_parameter.boolparam.value
@@ -498,47 +508,15 @@ func Test_WorkspaceTagDefaultsFromFile(t *testing.T) {
498
508
"stringvar" : "a" ,
499
509
"numvar" : "1" ,
500
510
"boolvar" : "true" ,
511
+ "listvar" : `["a"]` ,
512
+ "mapvar" : `{"a":"b"}` ,
501
513
"stringparam" : "a" ,
502
514
"numparam" : "1" ,
503
515
"boolparam" : "true" ,
504
516
"listparam" : `["a", "b"]` ,
505
517
},
506
518
expectError : `` ,
507
519
},
508
- {
509
- name : "unsupported list variable" ,
510
- files : map [string ]string {
511
- "main.tf" : `
512
- variable "listvar" {
513
- type = list(string)
514
- default = ["a"]
515
- }
516
- data "coder_workspace_tags" "tags" {
517
- tags = {
518
- listvar = var.listvar
519
- }
520
- }` ,
521
- },
522
- expectTags : nil ,
523
- expectError : `can't convert variable default value to string: unsupported type []interface {}` ,
524
- },
525
- {
526
- name : "unsupported map variable" ,
527
- files : map [string ]string {
528
- "main.tf" : `
529
- variable "mapvar" {
530
- type = map(string)
531
- default = {"a": "b"}
532
- }
533
- data "coder_workspace_tags" "tags" {
534
- tags = {
535
- mapvar = var.mapvar
536
- }
537
- }` ,
538
- },
539
- expectTags : nil ,
540
- expectError : `can't convert variable default value to string: unsupported type map[string]interface {}` ,
541
- },
542
520
{
543
521
name : "overlapping var name" ,
544
522
files : map [string ]string {
@@ -547,6 +525,10 @@ func Test_WorkspaceTagDefaultsFromFile(t *testing.T) {
547
525
type = string
548
526
default = "1"
549
527
}
528
+ variable "unused" {
529
+ type = map(string)
530
+ default = {"a" : "b"}
531
+ }
550
532
variable "ab" {
551
533
description = "This is a variable of type string"
552
534
type = string
0 commit comments