public void Dir2() {
RubyClass dir = Context.GetClass(typeof(RubyDir));
Pal1 pal = (Pal1)Context.Platform;
var sjis = RubyEncoding.SJIS.StrictEncoding.GetBytes("ホ");
var toPath = new ConversionStorage<MutableString>(Context);
// use the string encoding if given
RubyDir.MakeDirectory(toPath, dir, MutableString.CreateBinary(sjis, RubyEncoding.SJIS), null);
Assert(pal.Entries["ホ"]);
// IO system returns UTF8 encoded strings:
var entries = RubyDir.GetEntries(toPath, dir, MutableString.CreateEmpty());
Assert(entries.Count == 3);
Assert(((MutableString)entries[0]).Equals(MutableString.CreateAscii(".")));
Assert(((MutableString)entries[1]).Equals(MutableString.CreateAscii("..")));
Assert(((MutableString)entries[2]).Equals(MutableString.Create("ホ", RubyEncoding.UTF8)));
pal.Entries.Clear();
}
}