public void SaveTest() { // Arrange var type = "HomeController"; var key = $"{type}.{CultureInfo.CurrentUICulture.Name}"; var hostingEnvironmentTest = TestHostingEnvironment(); var fileSystem = TestFileSytem(); var cache = new JsonLocalizationCache(hostingEnvironmentTest, fileSystem.Object); //act var dict = new TranslationDictionary(); dict["specific"] = new Translation() { str = "Culture specific", Added = new DateTime(1) }; cache.Save(new KeyValuePair<string, TranslationDictionary>(key, dict)); //assert fileSystem.Verify(m => m.WriteAllText(It.IsAny<string>(), It.IsAny<string>()), Times.Once()); }
public void LoadTest() { // Arrange var hostingEnvironmentTest = TestHostingEnvironment(); var fileSystem = TestFileSytem(); var cache = new JsonLocalizationCache(hostingEnvironmentTest, fileSystem.Object); //Act var dictNotOnDisk = cache.Load("Nofile", CultureInfo.CurrentUICulture); var dictFromDisk = cache.Load("HomeController", CultureInfo.CurrentUICulture); dictFromDisk["specific"] = new Translation() { str = "", Added = new DateTime(0) }; var dictFromDiskButAlreadyInCache = cache.Load("HomeController", CultureInfo.CurrentUICulture); var InvalidJsonFile= cache.Load("Invalid", CultureInfo.CurrentUICulture); //Assert Assert.Equal(0, dictNotOnDisk.Count); Assert.Equal(1, dictFromDisk.Count); Assert.Equal(1, dictFromDiskButAlreadyInCache.Count); Assert.Equal("Culture specific", dictFromDiskButAlreadyInCache["specific"].str); }
public void onChangeTest() { // Arrange var hostingEnvironmentTest = TestHostingEnvironment(); var fileSystem = TestFileSytem(); var cache = new JsonLocalizationCache(hostingEnvironmentTest, fileSystem.Object); //Act cache.OnChanged(key+".json"); //Assert Assert.Equal(1, cache.TranslationDictionaries[key].Count); }