Skip to content

Validation fails on valid Choice comparison operators (IsNull, IsPresent, ...) #363

Closed
@asgoth

Description

@asgoth

This is a Bug

Description

The validation (via stepFunctions.validate: true) fails, when using Choice comparison operators IsNull, IsPresent, ...

See https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-choice-state.html.

Error:

  ✕ State machine "MyStateMachine" definition is invalid:
  
  data.States['MyChoiceState'].Choices[0] should have required property '.And'
  data.States['MyChoiceState'].Choices[0] should have required property '.BooleanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.Not'
  data.States['MyChoiceState'].Choices[0] should have required property '.NumericEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.NumericGreaterThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.NumericGreaterThanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.NumericLessThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.NumericLessThanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.Or'
  data.States['MyChoiceState'].Choices[0] should have required property '.StringEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.StringGreaterThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.StringGreaterThanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.StringLessThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.StringLessThanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.TimestampEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.TimestampGreaterThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.TimestampGreaterThanEquals'
  data.States['MyChoiceState'].Choices[0] should have required property '.TimestampLessThan'
  data.States['MyChoiceState'].Choices[0] should have required property '.TimestampLessThanEquals'
  data.States['MyChoiceState'].Choices[0] should match exactly one schema in oneOf
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should NOT have additional properties
  data.States['MyChoiceState'] should match exactly one schema in oneOf

Additional Data

  Your Environment Information ---------------------------
     Operating System:          darwin
     Node Version:              13.6.0
     Framework Version:         1.78.1
     Plugin Version:            3.7.0
     SDK Version:               2.3.1
     Components Version:        2.34.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions