summaryrefslogtreecommitdiffstats
path: root/runtime/tests/string/print_cstr.c
diff options
context:
space:
mode:
authorhunt <hunt>2005-05-19 05:25:26 +0000
committerhunt <hunt>2005-05-19 05:25:26 +0000
commit7edfd9e24568502f54175b08da4168f2af6642fe (patch)
treeaa2d578a4d7d99fef111a179e51a90198be0f2c1 /runtime/tests/string/print_cstr.c
parent752870c4bea5f43859ec4e10ae2579018908bbe3 (diff)
downloadsystemtap-steved-7edfd9e24568502f54175b08da4168f2af6642fe.tar.gz
systemtap-steved-7edfd9e24568502f54175b08da4168f2af6642fe.tar.xz
systemtap-steved-7edfd9e24568502f54175b08da4168f2af6642fe.zip
Add String test files.
Diffstat (limited to 'runtime/tests/string/print_cstr.c')
-rw-r--r--runtime/tests/string/print_cstr.c56
1 files changed, 56 insertions, 0 deletions
diff --git a/runtime/tests/string/print_cstr.c b/runtime/tests/string/print_cstr.c
new file mode 100644
index 00000000..2de0f592
--- /dev/null
+++ b/runtime/tests/string/print_cstr.c
@@ -0,0 +1,56 @@
+/* test of _stp_print_cstr() */
+
+/* use very small buffer size for testing */
+#define STP_PRINT_BUF_LEN 20
+#include "runtime.h"
+
+int main ()
+{
+ /* can we see output? */
+ _stp_print_cstr("ABCDE\n");
+ _stp_print_flush();
+
+
+ /* overflow */
+ _stp_print_cstr("1234567890123456789012345\n");
+ _stp_print_cstr("XYZZY\n");
+ _stp_print_flush();
+
+ /* small string then overflow string */
+ _stp_print_cstr("XYZZY\n");
+ _stp_print_cstr("1234567890123456789012345");
+ _stp_print_cstr("\n");
+ _stp_print_flush();
+
+ /* two small string that overflow */
+ _stp_print_cstr("abcdefghij");
+ _stp_print_cstr("1234567890");
+ _stp_print_cstr("\n");
+ _stp_print_flush();
+
+ /* two small string that overflow */
+ _stp_print_cstr("abcdefghij");
+ _stp_print_cstr("1234567890X");
+ _stp_print_cstr("\n");
+ _stp_print_flush();
+
+ _stp_print_cstr("12345\n");
+ _stp_print_cstr("67890\n");
+ _stp_print_cstr("abcde\n");
+ _stp_print_flush();
+ _stp_print_flush();
+ _stp_print_cstr("12345");
+ _stp_print_cstr("67890");
+ _stp_print_cstr("abcde");
+ _stp_print_cstr("fghij");
+ _stp_print_cstr("\n");
+ _stp_print_flush();
+
+ /* null string */
+ _stp_print_cstr("");
+ _stp_print_flush();
+ _stp_print_cstr("");
+ _stp_print_cstr("Q\n");
+ _stp_print_flush();
+ return 0;
+}