using Microsoft.Extensions.Localization; using Shouldly; using Volo.Abp.Localization.TestResources.Base.Validation; using Volo.Abp.Testing; using Xunit; namespace Volo.Abp.Localization; public class AbpEnumLocalizer_Tests : AbpIntegratedTest { private readonly IAbpEnumLocalizer _enumLocalizer; public AbpEnumLocalizer_Tests() { _enumLocalizer = GetRequiredService(); } [Fact] public void GetString_Test() { using (CultureHelper.Use("en")) { _enumLocalizer.GetString(BookType.Undefined).ShouldBe("Undefined"); _enumLocalizer.GetString(BookType.Adventure).ShouldBe("Adventure"); _enumLocalizer.GetString(0).ShouldBe("Undefined with value 0"); _enumLocalizer.GetString(1).ShouldBe("Adventure with value 1"); _enumLocalizer.GetString(BookType.Biography).ShouldBe("Biography"); var specifyLocalizer = new[] { GetRequiredService().Create() }; _enumLocalizer.GetString(BookType.Undefined, specifyLocalizer).ShouldBe("Undefined from ValidationResource"); _enumLocalizer.GetString(BookType.Adventure, specifyLocalizer).ShouldBe("Adventure from ValidationResource"); _enumLocalizer.GetString(0, specifyLocalizer).ShouldBe("Undefined with value 0 from ValidationResource"); _enumLocalizer.GetString(1, specifyLocalizer).ShouldBe("Adventure with value 1 from ValidationResource"); _enumLocalizer.GetString(BookType.Biography, specifyLocalizer).ShouldBe("Biography from ValidationResource"); } } } enum BookType { Undefined, Adventure, Biography, }