// Copyright (c) The Avalonia Project. All rights reserved. // Licensed under the MIT license. See licence.md file in the project root for full license information. using System; using System.Globalization; using System.Threading; namespace Avalonia.UnitTests { /// /// Runs tests in the invariant culture. /// /// /// Some tests check exception messages, and those from the .NET framework will be translated. /// Use this fixture to set the current culture to the invariant culture. /// public class InvariantCultureFixture : IDisposable { private CultureInfo _restore; public InvariantCultureFixture() { #if NET461 _restore = Thread.CurrentThread.CurrentCulture; Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; #else _restore = CultureInfo.CurrentCulture; CultureInfo.CurrentCulture = CultureInfo.InvariantCulture; #endif } public void Dispose() { #if NET461 Thread.CurrentThread.CurrentCulture = _restore; #else CultureInfo.CurrentCulture = _restore; #endif } } }