123456789101112131415161718192021222324252627282930313233 |
- package lua
- import (
- "testing"
- )
- // correctly gc-ed. There was a bug in gopher lua where local vars were not being gc-ed in all circumstances.
- func TestOsWrite(t *testing.T) {
- s := `
- local function write(filename, content)
- local f = assert(io.open(filename, "w"))
- f:write(content)
- assert(f:close())
- end
- local filename = os.tmpname()
- write(filename, "abc")
- write(filename, "d")
- local f = assert(io.open(filename, "r"))
- local content = f:read("*all"):gsub("%s+", "")
- f:close()
- os.remove(filename)
- local expected = "d"
- if content ~= expected then
- error(string.format("Invalid content: Expecting \"%s\", got \"%s\"", expected, content))
- end
- `
- L := NewState()
- defer L.Close()
- if err := L.DoString(s); err != nil {
- t.Error(err)
- }
- }
|