public async void GetTheRightCultureInfoRegardlessOfCultureNameCasing()
        {
            var builder = new WebApplicationBuilder()
                .Configure(app =>
                {
                    var options = new RequestLocalizationOptions
                    {
                        DefaultRequestCulture = new RequestCulture("en-US"),
                        SupportedCultures = new List<CultureInfo>
                        {
                            new CultureInfo("FR")
                        },
                        SupportedUICultures = new List<CultureInfo>
                        {
                            new CultureInfo("FR")
                        }
                    };
                    var provider = new QueryStringRequestCultureProvider();
                    provider.QueryStringKey = "c";
                    provider.UIQueryStringKey = "uic";
                    options.RequestCultureProviders.Insert(0, provider);
                    app.UseRequestLocalization(options);
                    app.Run(context =>
                    {
                        var requestCultureFeature = context.Features.Get<IRequestCultureFeature>();
                        var requestCulture = requestCultureFeature.RequestCulture;
                        Assert.Equal("fr", requestCulture.Culture.ToString());
                        Assert.Equal("fr", requestCulture.UICulture.ToString());
                        return Task.FromResult(0);
                    });
                });

            using (var server = new TestServer(builder))
            {
                var client = server.CreateClient();
                var response = await client.GetAsync("/page?c=FR&uic=FR");
            }
        }
 public async void GetCultureInfoFromQueryStringWithCustomKeys()
 {
     using (var server = TestServer.Create(app =>
     {
         var options = new RequestLocalizationOptions()
         {
             SupportedCultures = new List<CultureInfo>
             {
                 new CultureInfo("ar-SA")
             },
             SupportedUICultures = new List<CultureInfo>
             {
                 new CultureInfo("ar-YE")
             }
         };
         var provider = new QueryStringRequestCultureProvider();
         provider.QueryStringKey = "c";
         provider.UIQueryStringKey = "uic";
         options.RequestCultureProviders.Insert(0, provider);
         app.UseRequestLocalization(options, defaultRequestCulture: new RequestCulture("en-US"));
         app.Run(context =>
         {
             var requestCultureFeature = context.Features.Get<IRequestCultureFeature>();
             var requestCulture = requestCultureFeature.RequestCulture;
             Assert.Equal("ar-SA", requestCulture.Culture.Name);
             Assert.Equal("ar-YE", requestCulture.UICulture.Name);
             return Task.FromResult(0);
         });
     }))
     {
         var client = server.CreateClient();
         var response = await client.GetAsync("/page?c=ar-SA&uic=ar-YE");
     }
 }