summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.maps/exists.stp
diff options
context:
space:
mode:
authorhunt <hunt>2007-01-22 16:52:44 +0000
committerhunt <hunt>2007-01-22 16:52:44 +0000
commitb4b406f3e27459872deac9f9a2e6523cd5718f5c (patch)
treec4f409df1ed04def9e5c7b3fa4c703d8464bd1ae /testsuite/systemtap.maps/exists.stp
parentcc11b5bdf0b0bdc4c4eaf79251b52fbeba41a372 (diff)
downloadsystemtap-steved-b4b406f3e27459872deac9f9a2e6523cd5718f5c.tar.gz
systemtap-steved-b4b406f3e27459872deac9f9a2e6523cd5718f5c.tar.xz
systemtap-steved-b4b406f3e27459872deac9f9a2e6523cd5718f5c.zip
2007-01-22 Martin Hunt <hunt@redhat.com>
* systemtap.maps/exists.stp: New test to see if array elements exist using the "in" keyword.
Diffstat (limited to 'testsuite/systemtap.maps/exists.stp')
-rw-r--r--testsuite/systemtap.maps/exists.stp46
1 files changed, 46 insertions, 0 deletions
diff --git a/testsuite/systemtap.maps/exists.stp b/testsuite/systemtap.maps/exists.stp
new file mode 100644
index 00000000..745990f7
--- /dev/null
+++ b/testsuite/systemtap.maps/exists.stp
@@ -0,0 +1,46 @@
+# test the "in" keyword with maps
+
+global a, b, c
+
+probe begin {
+ for (i=0;i<11;i++)
+ a[i] = i*i
+
+ if (0 in a) printf("0 is there\n")
+ if (1 in a) printf("1 is there\n")
+ if (50 in a) printf("ERROR: 50 is there\n")
+
+ printf("comlete list for a: ")
+ for (i=0;i<11;i++)
+ if (i in a) printf("%d ", i)
+ printf("\n")
+
+ a[0] = 0
+ if (0 in a) printf("0 is still there\n")
+
+ delete a[0]
+ if (0 in a) printf("ERROR: 0 is there after delete\n")
+
+ for (i=0;i<11;i++)
+ b[i, 10*i] = i*i
+ printf("comlete list for b: ")
+ for (i=0;i<11;i++)
+ if ([i,10*i] in b) printf("[%d,%d] ", i, 10*i)
+ printf("\n")
+ b[0,0] = 0
+ if ([0,0] in b) printf("[0,0] is still there\n")
+
+ delete b[0,0]
+ if ([0,0] in b) printf("ERROR: [0,0] is there after delete\n")
+
+ c[""] = "empty string"
+ c["hello"] = "HELLO"
+ if ([""] in c) printf ("emtpy string there\n")
+ if (["hello"] in c) printf ("hello there\n")
+ c[""] = ""
+ if ([""] in c) printf ("emtpy string still there\n")
+ delete c[""]
+ if ([""] in c) printf ("ERROR: emtpy string still there after delete\n")
+ exit()
+}
+