Tasmota/lib/libesp32/berry/tests/debug.be

31 lines
639 B
Plaintext

# Test debug module functionality
import debug
class A end
debug.attrdump(A) # Should not crash
# Test debug.caller() function
def caller_name_chain()
import debug
import introspect
var i = 1
var ret = []
var caller = debug.caller(i)
while caller
ret.push(introspect.name(caller))
i += 1
caller = debug.caller(i)
end
return ret
end
var chain = caller_name_chain()
assert(chain[0] == 'caller_name_chain')
def guess_my_name__()
return caller_name_chain()
end
chain = guess_my_name__()
print(chain)
assert(chain[0] == 'caller_name_chain')
assert(chain[1] == 'guess_my_name__')