internal static class ConsolePal
{
+ private static Encoding? s_outputEncoding;
+
internal static void EnsureConsoleInitialized() { }
public static Stream OpenStandardInput() => throw new PlatformNotSupportedException();
public static void SetConsoleInputEncoding(Encoding enc) => throw new PlatformNotSupportedException();
- public static Encoding OutputEncoding => Encoding.Unicode;
+ public static Encoding OutputEncoding => s_outputEncoding ?? Encoding.UTF8;
- public static void SetConsoleOutputEncoding(Encoding enc) => throw new PlatformNotSupportedException();
+ public static void SetConsoleOutputEncoding(Encoding enc) => s_outputEncoding = enc;
public static bool IsInputRedirectedCore() => false;
public static void OutputEncoding_Getter_Returns_Unicode()
{
Encoding curEncoding = Console.OutputEncoding;
- Assert.Equal(Encoding.Unicode, curEncoding);
- }
-
- [Fact]
- [PlatformSpecific(TestPlatforms.Browser)]
- public static void OutputEncoding_Setter_Throws_PlatformNotSupportedException()
- {
- Assert.Throws<PlatformNotSupportedException>(() => Console.OutputEncoding = Encoding.Unicode);
+ Assert.Equal(Encoding.UTF8, curEncoding);
}
[Fact]