summaryrefslogtreecommitdiff
path: root/tests/infoframe.test
diff options
context:
space:
mode:
Diffstat (limited to 'tests/infoframe.test')
-rw-r--r--tests/infoframe.test37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/infoframe.test b/tests/infoframe.test
new file mode 100644
index 0000000..f1619f5
--- /dev/null
+++ b/tests/infoframe.test
@@ -0,0 +1,37 @@
+source [file dirname [info script]]/testing.tcl
+needs constraint jim
+proc a {n} {
+ if {$n eq "trace"} {
+ stacktrace
+ } else {
+ info frame $n
+ }
+}
+
+proc b {n} {
+ a $n
+}
+
+proc c {n} {
+ b $n
+}
+
+# --- Don't change line numbers above
+
+test info-frame-1.1 "Current proc" {
+ c 0
+} {a infoframe.test 12}
+
+test info-frame-1.2 "Caller" {
+ c -1
+} {b infoframe.test 16}
+
+test info-frame-1.3 "Caller of Caller" {
+ c -2
+} {c infoframe.test 30}
+
+test stacktrace-1.1 "Full stack trace" {
+ c trace
+} {a infoframe.test 12 b infoframe.test 16 c infoframe.test 34}
+
+testreport