public void MutableString_CompareTo2() {
MutableString a;
a = MS("α", RubyEncoding.UTF8);
Assert(a.CompareTo("α") == 0);
a = MS("ab", RubyEncoding.UTF8);
Assert(a.CompareTo("ac") < 0);
a = MS("ホ", RubyEncoding.SJIS);
Assert(a.CompareTo("ホ") == 0);
a = MS(Sjis("ホ"), RubyEncoding.SJIS);
Assert(a.CompareTo("ホ") == 0);
a = MS(new byte[] { 0xa8 }, RubyEncodingOps.KOI8_R);
Assert(a.CompareTo("╗") == 0);
a = MS(Encoding.UTF32.GetBytes("α"), RubyEncodingOps.UTF_32LE);
Assert(a.CompareTo("α") == 0);
// TODO: invalid characters, surrogates, test ordinality
}