mirror of
https://github.com/TangentFoxy/inspect.lua.git
synced 2025-07-28 02:52:18 +00:00
fixed metatable-related loop when a table is its own index. References #4
This commit is contained in:
@@ -192,14 +192,26 @@ describe( 'inspect', function()
|
||||
}]])
|
||||
end)
|
||||
|
||||
it('accepts a table that is its own metatable without stack overflowing', function()
|
||||
local x = {}
|
||||
setmetatable(x,x)
|
||||
assert.equals(inspect(x), [[<1>{
|
||||
describe('When a table is its own metatable', function()
|
||||
it('accepts a table that is its own metatable without stack overflowing', function()
|
||||
local x = {}
|
||||
setmetatable(x,x)
|
||||
assert.equals(inspect(x), [[<1>{
|
||||
<metatable> = <table 1>
|
||||
}]])
|
||||
end)
|
||||
end)
|
||||
|
||||
it('can invoke the __tostring method without stack overflowing', function()
|
||||
local t = {}
|
||||
t.__index = t
|
||||
setmetatable(t,t)
|
||||
assert.equals(inspect(t), [[<1>{
|
||||
__index = <table 1>,
|
||||
<metatable> = <table 1>
|
||||
}]])
|
||||
end)
|
||||
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
|
Reference in New Issue
Block a user