Readme

Here are some tests for val Authorization_from_Blob

Test Cases

Here are the rewritten test cases to fit the generated code that uses Blob storage instead of environment variables:

Positive Test Cases

  1. Valid token with defined Blob

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Bearer secret123"
    • Mode: "forbid-if-not-defined"
    • Expected result: true
  2. Valid token with allow-if-not-defined mode

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Bearer secret123"
    • Mode: "allow-if-not-defined"
    • Expected result: true
  3. Valid token with missing mode (default behavior)

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Bearer secret123"
    • Mode: undefined
    • Expected result: true

Negative Test Cases

  1. Invalid token

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Bearer wrongtoken"
    • Mode: "forbid-if-not-defined"
    • Expected result: false
  2. No Authorization header

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: undefined
    • Mode: "forbid-if-not-defined"
    • Expected result: false
  3. Blob not defined, forbid mode

    • BlobName: "UNDEFINED_TOKEN"
    • Blob value: undefined
    • Authorization header: "Bearer anytoken"
    • Mode: "forbid-if-not-defined"
    • Expected result: false
  4. Blob not defined, allow mode

    • BlobName: "UNDEFINED_TOKEN"
    • Blob value: undefined
    • Authorization header: "Bearer anytoken"
    • Mode: "allow-if-not-defined"
    • Expected result: true

Error Cases

  1. Invalid Blob name

    • BlobName: "1INVALID"
    • Blob value: "secret123"
    • Authorization header: "Bearer secret123"
    • Mode: "forbid-if-not-defined"
    • Expected result: Error thrown
  2. Invalid Mode

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Bearer secret123"
    • Mode: "invalid-mode"
    • Expected result: Error thrown

Edge Cases

  1. Empty string as token

    • BlobName: "EMPTY_TOKEN"
    • Blob value: ""
    • Authorization header: "Bearer "
    • Mode: "forbid-if-not-defined"
    • Expected result: true
  2. Case-sensitive token comparison

    • BlobName: "CASE_TOKEN"
    • Blob value: "Secret123"
    • Authorization header: "Bearer secret123"
    • Mode: "forbid-if-not-defined"
    • Expected result: false
  3. Non-Bearer authorization type

    • BlobName: "VALID_TOKEN"
    • Blob value: "secret123"
    • Authorization header: "Basic secret123"
    • Mode: "forbid-if-not-defined"
    • Expected result: false
Code
HTTP
Val Town is a social website to write and deploy JavaScript.
Build APIs and schedule functions from your browser.
Comments
Nobody has commented on this val yet: be the first!