Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b6c3cde

Browse files
committed
WIP validation
1 parent e278cc0 commit b6c3cde

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

coderd/workspacebuilds_test.go

+21-10
Original file line numberDiff line numberDiff line change
@@ -877,6 +877,12 @@ func TestWorkspaceBuildValidateRichParameters(t *testing.T) {
877877
{Name: boolParameterName, Type: "bool", Mutable: true},
878878
}
879879

880+
boolRichParameters := []*proto.RichParameter{
881+
{Name: stringParameterName, Type: "string", Mutable: true},
882+
{Name: numberParameterName, Type: "number", Mutable: true},
883+
{Name: boolParameterName, Type: "bool", Mutable: true},
884+
}
885+
880886
/* FIXME
881887
regexRichParameters := []*proto.RichParameter{
882888
{Name: stringParameterName, Type: "string", Mutable: true, ValidationRegex: "[a-z]+"},
@@ -885,25 +891,30 @@ func TestWorkspaceBuildValidateRichParameters(t *testing.T) {
885891
}*/
886892

887893
tests := []struct {
894+
parameterName string
888895
value string
889896
valid bool
890897
richParameters []*proto.RichParameter
891898
}{
892-
{"2", false, numberRichParameters},
893-
{"3", true, numberRichParameters},
894-
{"10", true, numberRichParameters},
895-
{"11", false, numberRichParameters},
899+
{numberParameterName, "2", false, numberRichParameters},
900+
{numberParameterName, "3", true, numberRichParameters},
901+
{numberParameterName, "10", true, numberRichParameters},
902+
{numberParameterName, "11", false, numberRichParameters},
896903

897-
{"", false, stringRichParameters},
898-
{"foobar", true, stringRichParameters},
904+
{stringParameterName, "", false, stringRichParameters},
905+
{stringParameterName, "foobar", true, stringRichParameters},
899906

900907
/* FIXME can't validate build parameter "string_parameter": an error must be specified with a regex validation
901-
{"abcd", true, regexRichParameters},
902-
{"abcd1", false, regexRichParameters},*/
908+
{stringParameterName, "abcd", true, regexRichParameters},
909+
{stringParameterName, "abcd1", false, regexRichParameters},*/
910+
911+
{boolParameterName, "true", true, boolRichParameters},
912+
{boolParameterName, "false", true, boolRichParameters},
913+
// FIXME {boolParameterName, "cat", false, boolRichParameters},
903914
}
904915

905916
for _, tc := range tests {
906-
t.Run("Value-"+tc.value, func(t *testing.T) {
917+
t.Run(tc.parameterName+"-"+tc.value, func(t *testing.T) {
907918
client := coderdtest.New(t, &coderdtest.Options{IncludeProvisionerDaemon: true})
908919
user := coderdtest.CreateFirstUser(t, client)
909920
version := coderdtest.CreateTemplateVersion(t, client, user.OrganizationID, prepareEchoResponses(tc.richParameters))
@@ -922,7 +933,7 @@ func TestWorkspaceBuildValidateRichParameters(t *testing.T) {
922933
defer cancel()
923934

924935
nextBuildParameters := []codersdk.WorkspaceBuildParameter{
925-
{Name: numberParameterName, Value: tc.value},
936+
{Name: tc.parameterName, Value: tc.value},
926937
}
927938
nextWorkspaceBuild, err := client.CreateWorkspaceBuild(ctx, workspace.ID, codersdk.CreateWorkspaceBuildRequest{
928939
Transition: codersdk.WorkspaceTransitionStart,

0 commit comments

Comments
 (0)