@@ -8,12 +8,18 @@ namespace System.Globalization.Tests
88{
99 public class DateTimeFormatInfoShortDatePattern
1010 {
11+ public static IEnumerable < object [ ] > ShortDatePattern_Get_TestData ( )
12+ {
13+ yield return new object [ ] { DateTimeFormatInfo . InvariantInfo , "MM/dd/yyyy" , "invariant" } ;
14+ yield return new object [ ] { new CultureInfo ( "en-US" ) . DateTimeFormat , "M/d/yyyy" , "en-US" } ;
15+ yield return new object [ ] { new CultureInfo ( "fr-FR" ) . DateTimeFormat , "dd/MM/yyyy" , "fr-FR" } ;
16+ }
1117 public static IEnumerable < object [ ] > ShortDatePattern_Get_TestData_HybridGlobalization ( )
1218 {
1319 // see the comments on the right to check the non-Hybrid result, if it differs
14- yield return new object [ ] { "ar-SA" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "d\u200f /M\u200f /yyyy" : "d MMM \u060c yyyy g " } ; // "d\u200f/M\u200f/yyyy g"
20+ yield return new object [ ] { "ar-SA" , "d\u200f /M\u200f /yyyy" } ; // "d\u200f/M\u200f/yyyy g"
1521 yield return new object [ ] { "am-ET" , "dd/MM/yyyy" } ;
16- yield return new object [ ] { "bg-BG" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "d.MM.yyyy г." : "d.MM.yyyy 'г' ." } ; // "d.MM.yyyy 'г'."
22+ yield return new object [ ] { "bg-BG" , "d.MM.yyyy г." } ; // "d.MM.yyyy 'г'."
1723 yield return new object [ ] { "bn-BD" , "d/M/yyyy" } ;
1824 yield return new object [ ] { "bn-IN" , "d/M/yyyy" } ;
1925 yield return new object [ ] { "ca-AD" , "d/M/yyyy" } ;
@@ -33,7 +39,7 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
3339 yield return new object [ ] { "en-AG" , "dd/MM/yyyy" } ;
3440 yield return new object [ ] { "en-AI" , "dd/MM/yyyy" } ;
3541 yield return new object [ ] { "en-AS" , "M/d/yyyy" } ;
36- yield return new object [ ] { "en-AT" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd/MM/yyyy" : "dd.MM.yyyy" } ; // "dd/MM/yyyy"
42+ yield return new object [ ] { "en-AT" , "dd/MM/yyyy" } ;
3743 yield return new object [ ] { "en-AU" , "d/M/yyyy" } ;
3844 yield return new object [ ] { "en-BB" , "dd/MM/yyyy" } ;
3945 yield return new object [ ] { "en-BE" , "dd/MM/yyyy" } ;
@@ -49,11 +55,11 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
4955 yield return new object [ ] { "en-CM" , "dd/MM/yyyy" } ;
5056 yield return new object [ ] { "en-CX" , "dd/MM/yyyy" } ;
5157 yield return new object [ ] { "en-CY" , "dd/MM/yyyy" } ;
52- yield return new object [ ] { "en-DE" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd/MM/yyyy" : "dd.MM.yyyy" } ; // "dd/MM/yyyy"
58+ yield return new object [ ] { "en-DE" , "dd/MM/yyyy" } ;
5359 yield return new object [ ] { "en-DK" , "dd/MM/yyyy" } ;
5460 yield return new object [ ] { "en-DM" , "dd/MM/yyyy" } ;
5561 yield return new object [ ] { "en-ER" , "dd/MM/yyyy" } ;
56- yield return new object [ ] { "en-FI" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd/MM/yyyy" : "d.M.yyyy" } ; // "dd/MM/yyyy"
62+ yield return new object [ ] { "en-FI" , "dd/MM/yyyy" } ;
5763 yield return new object [ ] { "en-FJ" , "dd/MM/yyyy" } ;
5864 yield return new object [ ] { "en-FK" , "dd/MM/yyyy" } ;
5965 yield return new object [ ] { "en-FM" , "dd/MM/yyyy" } ;
@@ -95,7 +101,7 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
95101 yield return new object [ ] { "en-NL" , "dd/MM/yyyy" } ;
96102 yield return new object [ ] { "en-NR" , "dd/MM/yyyy" } ;
97103 yield return new object [ ] { "en-NU" , "dd/MM/yyyy" } ;
98- yield return new object [ ] { "en-NZ" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "d/MM/yyyy" : "dd/MM/yyyy" } ; // "d/MM/yyyy"
104+ yield return new object [ ] { "en-NZ" , "d/MM/yyyy" } ;
99105 yield return new object [ ] { "en-PG" , "dd/MM/yyyy" } ;
100106 yield return new object [ ] { "en-PH" , "M/d/yyyy" } ; // "dd/MM/yyyy"
101107 yield return new object [ ] { "en-PK" , "dd/MM/yyyy" } ;
@@ -109,7 +115,7 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
109115 yield return new object [ ] { "en-SE" , "yyyy-MM-dd" } ;
110116 yield return new object [ ] { "en-SG" , "d/M/yyyy" } ;
111117 yield return new object [ ] { "en-SH" , "dd/MM/yyyy" } ;
112- yield return new object [ ] { "en-SI" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd/MM/yyyy" : "d. M. yyyy" } ; // "dd/MM/yyyy"
118+ yield return new object [ ] { "en-SI" , "dd/MM/yyyy" } ;
113119 yield return new object [ ] { "en-SL" , "dd/MM/yyyy" } ;
114120 yield return new object [ ] { "en-SS" , "dd/MM/yyyy" } ;
115121 yield return new object [ ] { "en-SX" , "dd/MM/yyyy" } ;
@@ -131,7 +137,6 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
131137 yield return new object [ ] { "en-ZA" , "yyyy/MM/dd" } ;
132138 yield return new object [ ] { "en-ZM" , "dd/MM/yyyy" } ;
133139 yield return new object [ ] { "en-ZW" , "d/M/yyyy" } ;
134- yield return new object [ ] { "en-US" , "M/d/yyyy" } ;
135140 yield return new object [ ] { "es-419" , "d/M/yyyy" } ;
136141 yield return new object [ ] { "es-ES" , "d/M/yyyy" } ;
137142 yield return new object [ ] { "es-MX" , "dd/MM/yyyy" } ;
@@ -147,7 +152,7 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
147152 yield return new object [ ] { "he-IL" , "d.M.yyyy" } ;
148153 yield return new object [ ] { "hi-IN" , "d/M/yyyy" } ;
149154 yield return new object [ ] { "hr-BA" , "d. M. yyyy." } ;
150- yield return new object [ ] { "hr-HR" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd. MM. yyyy." : "dd.MM.yyyy." } ; // "dd. MM. yyyy."
155+ yield return new object [ ] { "hr-HR" , "dd. MM. yyyy." } ;
151156 yield return new object [ ] { "hu-HU" , "yyyy. MM. dd." } ;
152157 yield return new object [ ] { "id-ID" , "dd/MM/yyyy" } ;
153158 yield return new object [ ] { "it-CH" , "dd.MM.yyyy" } ;
@@ -173,8 +178,8 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
173178 yield return new object [ ] { "pt-PT" , "dd/MM/yyyy" } ;
174179 yield return new object [ ] { "ro-RO" , "dd.MM.yyyy" } ;
175180 yield return new object [ ] { "ru-RU" , "dd.MM.yyyy" } ;
176- yield return new object [ ] { "sk-SK" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "d. M. yyyy" : "d.M.yyyy" } ; // "d. M. yyyy"
177- yield return new object [ ] { "sl-SI" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "d. MM. yyyy" : "d. M. yyyy" } ; // "d. MM. yyyy"
181+ yield return new object [ ] { "sk-SK" , "d. M. yyyy" } ;
182+ yield return new object [ ] { "sl-SI" , "d. MM. yyyy" } ;
178183 yield return new object [ ] { "sr-Cyrl-RS" , "d.M.yyyy." } ;
179184 yield return new object [ ] { "sr-Latn-RS" , "d.M.yyyy." } ;
180185 yield return new object [ ] { "sv-AX" , "yyyy-MM-dd" } ;
@@ -192,15 +197,22 @@ public static IEnumerable<object[]> ShortDatePattern_Get_TestData_HybridGlobaliz
192197 yield return new object [ ] { "tr-CY" , "d.MM.yyyy" } ;
193198 yield return new object [ ] { "tr-TR" , "d.MM.yyyy" } ;
194199 yield return new object [ ] { "uk-UA" , "dd.MM.yyyy" } ;
195- yield return new object [ ] { "vi-VN" , PlatformDetection . IsHybridGlobalizationOnBrowser ? "dd/MM/yyyy" : "d/M/yyyy" } ; // "dd/MM/yyyy"
200+ yield return new object [ ] { "vi-VN" , "dd/MM/yyyy" } ;
196201 yield return new object [ ] { "zh-CN" , "yyyy/M/d" } ;
197202 yield return new object [ ] { "zh-Hans-HK" , "d/M/yyyy" } ;
198203 yield return new object [ ] { "zh-SG" , "dd/MM/yyyy" } ;
199204 yield return new object [ ] { "zh-HK" , "d/M/yyyy" } ;
200205 yield return new object [ ] { "zh-TW" , "yyyy/M/d" } ;
201206 }
202207
203- [ ConditionalTheory ( typeof ( PlatformDetection ) , nameof ( PlatformDetection . IsHybridGlobalization ) ) ]
208+ [ ConditionalTheory ( typeof ( PlatformDetection ) , nameof ( PlatformDetection . IsHybridGlobalizationOnApplePlatform ) ) ]
209+ [ MemberData ( nameof ( ShortDatePattern_Get_TestData ) ) ]
210+ public void ShortDatePattern_Get_ReturnsExpected ( DateTimeFormatInfo format , string expected , string cultureName )
211+ {
212+ Assert . True ( expected == format . ShortDatePattern , $ "Failed for culture: { cultureName } . Expected: { expected } , Actual: { format . ShortDatePattern } ") ;
213+ }
214+
215+ [ ConditionalTheory ( typeof ( PlatformDetection ) , nameof ( PlatformDetection . IsHybridGlobalizationOnBrowser ) ) ]
204216 [ MemberData ( nameof ( ShortDatePattern_Get_TestData_HybridGlobalization ) ) ]
205217 public void ShortDatePattern_Get_ReturnsExpected_HybridGlobalization ( string cultureName , string expected )
206218 {
0 commit comments