changeset 1170:851d63db41cb

[Issue 391] New: .sort and .reverse break utf8 encoding Derek Parnell <ddparnell@bigpond.com> 2006-10-02 news:bug-391-3@http.d.puremagic.com/issues/
author thomask
date Wed, 04 Oct 2006 06:28:09 +0000
parents 50bb906cd5e3
children 3fcbbd7f7873
files run/r/reverse_08_A.d run/r/reverse_08_B.d run/r/reverse_08_C.d run/s/sort_16_A.d run/s/sort_16_B.d run/s/sort_16_C.d
diffstat 6 files changed, 165 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/r/reverse_08_A.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,26 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.r.reverse_08_A;
+
+int main(){
+	char[] a = "a\U00000081b\U00002000c\U00010000";
+	char[] b = a.reverse;
+
+	if(b != "\U00010000c\U00002000b\U00000081a"){
+		assert(0);
+	}
+
+	if(b.reverse != a){
+		assert(0);
+	}
+
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/r/reverse_08_B.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,26 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.r.reverse_08_B;
+
+int main(){
+	dchar[] a = "a\U00000081b\U00002000c\U00010000";
+	dchar[] b = a.reverse;
+
+	if(b != "\U00010000c\U00002000b\U00000081a"){
+		assert(0);
+	}
+
+	if(b.reverse != a){
+		assert(0);
+	}
+
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/r/reverse_08_C.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,26 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.r.reverse_08_C;
+
+int main(){
+	wchar[] a = "a\U00000081b\U00002000c\U00010000";
+	wchar[] b = a.reverse;
+
+	if(b != "\U00010000c\U00002000b\U00000081a"){
+		assert(0);
+	}
+
+	if(b.reverse != a){
+		assert(0);
+	}
+
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/s/sort_16_A.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,29 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.s.sort_16_A;
+
+import std.stdio;
+
+int main(){
+	dchar[] a = "a\U00000081b\U00002000c\U00010000";
+
+	if(a.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	dchar[] b = "\U00010000a\U00002000c\U00000081b";
+
+	if(b.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/s/sort_16_B.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,29 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.s.sort_16_B;
+
+import std.stdio;
+
+int main(){
+	wchar[] a = "a\U00000081b\U00002000c\U00010000";
+
+	if(a.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	wchar[] b = "\U00010000a\U00002000c\U00000081b";
+
+	if(b.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/s/sort_16_C.d	Wed Oct 04 06:28:09 2006 +0000
@@ -0,0 +1,29 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Derek Parnell <ddparnell@bigpond.com>
+// @date@	2006-10-02
+// @uri@	news:bug-391-3@http.d.puremagic.com/issues/
+// @desc@	[Issue 391] New: .sort and .reverse break utf8 encoding
+
+module dstress.run.s.sort_16_C;
+
+import std.stdio;
+
+int main(){
+	char[] a = "a\U00000081b\U00002000c\U00010000";
+
+	if(a.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	char[] b = "\U00010000a\U00002000c\U00000081b";
+
+	if(b.sort != "abc\U00000081\U00002000\U00010000"){
+		assert(0);
+	}
+
+	return 0;
+}
+