Validate that a script received a required value.

required-value A script can check a required value before doing work. The example models the decision with scalar fixture data instead of reading real process arguments.

Required Values

name
required_value.lua
Replay: real traced execution (multi-file project)
local name = ""
local status = "missing"
local message = "name required"

if name ~= "" then
  status = "ok"
  message = "run " .. name
end

print("name=" .. name)
print("status=" .. status)
print("message=" .. message)
local name = "build"
local status = "missing"
local message = "name required"

if name ~= "" then
  status = "ok"
  message = "run " .. name
end

print("name=" .. name)
print("status=" .. status)
print("message=" .. message)
local name = "deploy"
local status = "missing"
local message = "name required"

if name ~= "" then
  status = "ok"
  message = "run " .. name
end

print("name=" .. name)
print("status=" .. status)
print("message=" .. message)
  1. name ← (empty), status ← missing, message ← name required

    1local name→ (empty) = "" --@name="build", "deploy"2local status→ missing = "missing"3local message→ name required = "name required"45if name ~= "" then6  status = "ok"7  message = "run " .. name8end910print("name=" .. name(empty))11print("status=" .. statusmissing)12print("message=" .. messagename required)
    outputname=
    status=missing
    message=name required
  1. name ← build, status ← missing, message ← name required

    1local name→ build = "build"2local status→ missing = "missing"3local message→ name required = "name required"
  2. status ← ok, message ← run build

    5if namebuild ~= "" then6  status→ ok = "ok"7  message→ run build = "run " .. namebuild8end
  3. print("name=" .. name)

    10print("name=" .. namebuild)11print("status=" .. statusok)12print("message=" .. messagerun build)
    outputname=build
    status=ok
    message=run build
  1. name ← deploy, status ← missing, message ← name required

    1local name→ deploy = "deploy"2local status→ missing = "missing"3local message→ name required = "name required"
  2. status ← ok, message ← run deploy

    5if namedeploy ~= "" then6  status→ ok = "ok"7  message→ run deploy = "run " .. namedeploy8end
  3. print("name=" .. name)

    10print("name=" .. namedeploy)11print("status=" .. statusok)12print("message=" .. messagerun deploy)
    outputname=deploy
    status=ok
    message=run deploy