You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
First things first, smocker is dead simple to start with, keep up the good work!
Lately, I wanted to avoid putting a large piece of JSON directly in a mock definition so I tried to offload it to another file and read it from a Lua's script this way (I am not fluent in Lua by the way):
- request:
method: GETpath: /data/666dynamic_response:
engine: luascript: > local io = require("io") local file = io.open("/data/666.json", "rb") if not file then return nil end local content = file:read "*a" file:close() return { body = content, headers = { ["Content-Type"] = {"application/json"} } }
But this fails because it cannot find io (whether I put a require or not).
At first I was wondering if GopherLua even supported file operations but this issue seems to confirm that this is the case.
May anyone shed some light on this particular point?
The text was updated successfully, but these errors were encountered:
Hi!
I explicitly disabled the io package, because allowing it would make Smocker's behaviour less predictable: the only way to define mocks is using the API, you can't use files already present on the disk.
There's a real use-case for large files and binary files though, and I'm thinking of a way to allow multipart mock declarations in the future to allow it. In the case of the Lua engine, the files would be injected directly into the Lua context so the io module still wouldn't be needed.
Thanks for the details, I totally understand the "less predictable" argument.
Is there any other issue tracing this need so we might close this one in favor of and add a link to the right issue?
Hello,
First things first, smocker is dead simple to start with, keep up the good work!
Lately, I wanted to avoid putting a large piece of JSON directly in a mock definition so I tried to offload it to another file and read it from a Lua's script this way (I am not fluent in Lua by the way):
But this fails because it cannot find
io
(whether I put arequire
or not).At first I was wondering if GopherLua even supported file operations but this issue seems to confirm that this is the case.
May anyone shed some light on this particular point?
The text was updated successfully, but these errors were encountered: