diff options
author | Rui Paulo <rpaulo@FreeBSD.org> | 2014-06-26 21:45:49 +0000 |
---|---|---|
committer | Rui Paulo <rpaulo@FreeBSD.org> | 2014-06-26 21:45:49 +0000 |
commit | b1f9167f94059fd55c630891d359bcff987bd7eb (patch) | |
tree | 4ddc8f5aee7a410915ef2557eb021621a9b82651 /cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d | |
parent | 8a7314fcb5347f8296a072e0c4f67a9f64303186 (diff) | |
parent | ff82455cb7d7889d4334155a9f832ed021b1ef80 (diff) | |
download | src-b1f9167f94059fd55c630891d359bcff987bd7eb.tar.gz src-b1f9167f94059fd55c630891d359bcff987bd7eb.zip |
MFV illumos
4477 DTrace should speak JSON
MFC after: 2 weeks
Notes
Notes:
svn path=/head/; revision=267937
Diffstat (limited to 'cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d')
-rw-r--r-- | cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d new file mode 100644 index 000000000000..0b1812a53ce0 --- /dev/null +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/strtoll/tst.strtoll.d @@ -0,0 +1,66 @@ +/* + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + */ + +/* + * Copyright (c) 2012, Joyent, Inc. All rights reserved. + */ + +/* + * ASSERTION: + * Test the strtoll() subroutine. + * + * SECTION: Actions and Subroutines/strtoll() + */ + +#pragma D option quiet + +BEGIN +{ + + /* minimum base (2) and maximum base (36): */ + printf("%d\n", strtoll("0", 2)); + printf("%d\n", strtoll("1", 36)); + + /* simple tests: */ + printf("%d\n", strtoll("0x20", 16)); + printf("%d\n", strtoll("-32", 10)); + printf("%d\n", strtoll("010", 8)); + printf("%d\n", strtoll("101010", 2)); + + /* INT64_MIN and INT64_MAX: */ + printf("%d\n", strtoll("9223372036854775807")); + printf("%d\n", strtoll("-9223372036854775808")); + printf("%d\n", strtoll("0777777777777777777777", 8)); + printf("%d\n", strtoll("-01000000000000000000000", 8)); + + /* wrapping: */ + printf("%d\n", strtoll("1000000000000000000000", 8)); + printf("%d\n", strtoll("-1000000000000000000001", 8)); + + /* hex without prefix: */ + printf("%d\n", strtoll("baddcafe", 16)); + + /* stopping at first out-of-base character: */ + printf("%d\n", strtoll("12j", 10)); + printf("%d\n", strtoll("102", 2)); + + /* base 36: */ + printf("%d\n", strtoll("-0DTrace4EverZ", 36)); + + /* base 10 is assumed: */ + printf("%d\n", strtoll("1985")); + printf("%d\n", strtoll("-2012")); + + /* empty string: */ + printf("%d\n", strtoll("")); + + exit(0); +} |