/ src / modules / cmdpal / Tests / Microsoft.CmdPal.Ext.TimeDate.UnitTests / TimeDateCommandsProviderTests.cs
TimeDateCommandsProviderTests.cs
1 // Copyright (c) Microsoft Corporation 2 // The Microsoft Corporation licenses this file to you under the MIT license. 3 // See the LICENSE file in the project root for more information. 4 5 using System; 6 using System.Globalization; 7 using Microsoft.VisualStudio.TestTools.UnitTesting; 8 9 namespace Microsoft.CmdPal.Ext.TimeDate.UnitTests 10 { 11 [TestClass] 12 public class TimeDateCommandsProviderTests 13 { 14 private CultureInfo originalCulture; 15 private CultureInfo originalUiCulture; 16 17 [TestInitialize] 18 public void Setup() 19 { 20 // Set culture to 'en-us' 21 originalCulture = CultureInfo.CurrentCulture; 22 CultureInfo.CurrentCulture = new CultureInfo("en-us", false); 23 originalUiCulture = CultureInfo.CurrentUICulture; 24 CultureInfo.CurrentUICulture = new CultureInfo("en-us", false); 25 } 26 27 [TestCleanup] 28 public void Cleanup() 29 { 30 // Restore original culture 31 CultureInfo.CurrentCulture = originalCulture; 32 CultureInfo.CurrentUICulture = originalUiCulture; 33 } 34 35 [TestMethod] 36 public void TimeDateCommandsProviderInitializationTest() 37 { 38 // Act 39 var provider = new TimeDateCommandsProvider(); 40 41 // Assert 42 Assert.IsNotNull(provider); 43 Assert.IsNotNull(provider.DisplayName); 44 Assert.AreEqual("com.microsoft.cmdpal.builtin.datetime", provider.Id); 45 Assert.IsNotNull(provider.Icon); 46 Assert.IsNotNull(provider.Settings); 47 } 48 49 [TestMethod] 50 public void TopLevelCommandsTest() 51 { 52 // Setup 53 var provider = new TimeDateCommandsProvider(); 54 55 // Act 56 var commands = provider.TopLevelCommands(); 57 58 // Assert 59 Assert.IsNotNull(commands); 60 Assert.AreEqual(1, commands.Length); 61 Assert.IsNotNull(commands[0]); 62 Assert.IsNotNull(commands[0].Title); 63 Assert.IsNotNull(commands[0].Icon); 64 } 65 66 [TestMethod] 67 public void FallbackCommandsTest() 68 { 69 // Setup 70 var provider = new TimeDateCommandsProvider(); 71 72 // Act 73 var fallbackCommands = provider.FallbackCommands(); 74 75 // Assert 76 Assert.IsNotNull(fallbackCommands); 77 Assert.AreEqual(1, fallbackCommands.Length); 78 Assert.IsNotNull(fallbackCommands[0]); 79 } 80 81 [TestMethod] 82 public void DisplayNameTest() 83 { 84 // Setup 85 var provider = new TimeDateCommandsProvider(); 86 87 // Act 88 var displayName = provider.DisplayName; 89 90 // Assert 91 Assert.IsFalse(string.IsNullOrEmpty(displayName)); 92 } 93 } 94 }