---
inputType: CA10__CaAwsInstance__c
testData:
  - file: test-data.json
conditions:
  - status: COMPLIANT
    currentStateMessage: "2024-01-05T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-05T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-05T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-05T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-05T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-05T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-06T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-06T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-06T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-06T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-06T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-06T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-07T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-07T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-07T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-07T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-07T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-07T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-08T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-08T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-08T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-08T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-08T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-08T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-09T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-09T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-09T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-09T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-09T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-09T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-10T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-10T00:00:00Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-10T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "now"
    check:
      UNIT_TEST:
        id: "now"
        arg:
          IS_EQUAL:
            left:
              DATE_TIME: "2024-01-10T18:00:00Z"
            right:
              DATE_TIME: "2024-01-10T18:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-10T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-10T23:59:59Z"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  DATE_TIME: "2024-01-10T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-11T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-11T00:00:00Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-11T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-11T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-11T23:59:59Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-11T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-12T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-12T00:00:00Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-12T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-12T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-12T23:59:59Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-12T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-13T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-13T00:00:00Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-13T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-13T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-13T23:59:59Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-13T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-14T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-14T00:00:00Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-14T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-14T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-14T23:59:59Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-14T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-15T00:00:00Z"
    check:
      UNIT_TEST:
        id: "2024-01-15T00:00:00Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-15T00:00:00Z"
  - status: COMPLIANT
    currentStateMessage: "2024-01-15T23:59:59Z"
    check:
      UNIT_TEST:
        id: "2024-01-15T23:59:59Z"
        arg:
          IS_AFTER_TODAY:
            arg:
              DATE_TIME: "2024-01-15T23:59:59Z"
  - status: COMPLIANT
    currentStateMessage: "Null-1"
    check:
      UNIT_TEST:
        id: "Null-1"
        arg:
          NOT:
            arg:
              IS_AFTER_TODAY:
                arg:
                  UNIT_TEST_NULL:
                    returnType: DATE_TIME
otherwise:
  status: INCOMPLIANT
  currentStateMessage: Test Failed
  remediationMessage: Developer Fix Required