diff --git a/internal/orchestrator/app/validator_test.go b/internal/orchestrator/app/validator_test.go index 13e3e9d3..0e87028f 100644 --- a/internal/orchestrator/app/validator_test.go +++ b/internal/orchestrator/app/validator_test.go @@ -33,6 +33,21 @@ func TestValidateAppDescriptorBricks(t *testing.T) { }, }, }, + { + ID: "arduino:brick-with-hidden-variable", + Name: "Hidden variable brick", + Variables: []bricksindex.BrickVariable{ + { + Name: "I_AM_HIDDEN_WITHOUT_DEFAULT", + Hidden: true, + }, + { + Name: "I_AM_HIDDEN_WITH_DEFAULT", + Hidden: true, + DefaultValue: "default-value", + }, + }, + }, }, } @@ -134,6 +149,26 @@ bricks: NOT_EXISTING_VARIABLE: "this-is-a-not-existing-variable-for-the-brick" ARDUINO_DEVICE_ID: "my-device-id" ARDUINO_SECRET: "my-secret" +`, + expectedError: nil, + }, + { + name: "is required works also for hidden variables", + yamlContent: ` +name: App with +bricks: + - arduino:brick-with-hidden-variable: +`, + expectedError: errors.New("variable \"I_AM_HIDDEN_WITHOUT_DEFAULT\" is required by brick \"arduino:brick-with-hidden-variable\""), + }, + { + name: "an hiddden variable with default value is not required", + yamlContent: ` +name: App with +bricks: + - arduino:brick-with-hidden-variable: + variables: + I_AM_HIDDEN_WITHOUT_DEFAULT: "some-value" `, expectedError: nil, },