Mercurial > prosody-hg
view spec/util_envload_spec.lua @ 14020:3c2bfa6a69df
prosodyctl shell: Move non-error result lines back to stdout, suppress with --quiet
We're figuring out how to keep usability and support machine-readability too.
We moved the status line (repl-result) to stderr so that when parsing
something like a table, it didn't get in the way. However sometimes the status
line is the thing we want to parse (e.g. invite creation). Parsing stderr
loses one of the purposes of stderr - to have an error-only channel to emit
stuff out of band (such as error messages).
So the new approach is:
- Status line on stdout, unless it's an error
- If you're parsing the output ("content") of the command, pass --quiet to
suppress the status line.
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Tue, 30 Dec 2025 16:30:43 +0000 |
| parents | 37f49d0ad22c |
| children |
line wrap: on
line source
describe("util.envload", function() local envload = require "util.envload"; describe("envload()", function() it("works", function() local f, err = envload.envload("return 'hello'", "@test", {}); assert.is_function(f, err); local ok, ret = pcall(f); assert.truthy(ok); assert.equal("hello", ret); end); it("lets you pass values in and out", function () local f, err = envload.envload("return thisglobal", "@test", { thisglobal = "yes, this one" }); assert.is_function(f, err); local ok, ret = pcall(f); assert.truthy(ok); assert.equal("yes, this one", ret); end); end) -- TODO envloadfile() end)
