This is an automated email from the ASF dual-hosted git repository. nightowl888 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/lucenenet.git
commit 27b2c0603d8b8f93f7e84128b0ba9428212ffc82 Author: Shad Storhaug <[email protected]> AuthorDate: Fri Sep 6 15:52:05 2019 +0700 BUG: Lucene.Net.TestFramework.LuceneTestCase: Fixed edge case where random culture and/or time zone is not available on macOS for random pick, so just return a sensible default in those cases --- src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs index 6b5ca6c..78da957 100644 --- a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs +++ b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs @@ -1556,7 +1556,14 @@ namespace Lucene.Net.Util /// </summary> public static CultureInfo RandomCulture(Random random) // LUCENENET specific renamed from RandomLocale { - return RandomPicks.RandomFrom(random, CultureInfoSupport.GetNeutralAndSpecificCultures()); + ICollection<CultureInfo> systemCultures = CultureInfoSupport.GetNeutralAndSpecificCultures(); +#if NETSTANDARD1_6 + // .NET Core 1.0 on macOS seems to be flakey here and not return results occasionally, so compensate by + // returning CultureInfo.InvariantCulture when it happens. + if (systemCultures.Count == 0) + return CultureInfo.InvariantCulture; +#endif + return RandomPicks.RandomFrom(random, systemCultures); } /// <summary> @@ -1566,7 +1573,14 @@ namespace Lucene.Net.Util /// </summary> public static TimeZoneInfo RandomTimeZone(Random random) { - return RandomPicks.RandomFrom(random, TimeZoneInfo.GetSystemTimeZones()); + var systemTimeZones = TimeZoneInfo.GetSystemTimeZones(); +#if NETSTANDARD1_6 + // .NET Core 1.0 on macOS seems to be flakey here and not return results occasionally, so compensate by + // returning TimeZoneInfo.Local when it happens. + if (systemTimeZones.Count == 0) + return TimeZoneInfo.Local; +#endif + return RandomPicks.RandomFrom(random, systemTimeZones); } /// <summary>
