public void LoadAndSaveTest() { var adapter = new ResXResourceBundleAdapter(new FileSystem()); var bundle = adapter.Load("ResXResourceBundleAdapterTest.Sample.resx"); Assert.AreEqual(2, bundle.Count); Assert.IsTrue(bundle.ContainsCulture("neutral")); Assert.IsTrue(bundle.ContainsCulture("el-GR")); var baseResourceSet = bundle.NeutralOrFirst(); var resourceSet = bundle["el-GR"]; Assert.AreEqual(2, resourceSet.CountTranslatedItems(baseResourceSet)); Assert.AreEqual(1, resourceSet.CountMarkedForReviewing()); Assert.AreEqual(ResourceSetStatus.Unaffected, resourceSet.Status); // simulate that contents have been updated and save bundle["neutral"].Status = ResourceSetStatus.Updated; bundle["el-GR"].Status = ResourceSetStatus.Updated; adapter.Save("SaveTest.resx", bundle); // compare original and new files Assert.AreEqual(XmlReader.Create("ResXResourceBundleAdapterTest.Sample.resx").ReadOuterXml(), XmlReader.Create("SaveTest.resx").ReadOuterXml()); Assert.AreEqual(XmlReader.Create("ResXResourceBundleAdapterTest.Sample.el-GR.resx").ReadOuterXml(), XmlReader.Create("SaveTest.el-GR.resx").ReadOuterXml()); }
public void AddRemoveResourceSetWhenBaseNameDoesNotContainCultureInfoTest() { var adapter = new ResXResourceBundleAdapter(new FileSystem()); const string fileName = "ResXResourceBundleAdapterTest.Sample.resx"; var bundle = adapter.Load(fileName); var newResourceSet = bundle.Add("hi"); newResourceSet.Add("s1", new ResourceStringItem { Name = "s1", Value = "test" }); adapter.Save(fileName, bundle); Assert.IsTrue(File.Exists("ResXResourceBundleAdapterTest.Sample.hi.resx")); }
public void AddRemoveResourceSetWhenBaseNameContainsCultureInfoTest() { var adapter = new ResXResourceBundleAdapter(new FileSystem()); const string fileName = "CrossLoopStrings.en.xml"; var bundle = adapter.Load(fileName); var newResourceSet = bundle.Add("el"); newResourceSet.Add("s1", new ResourceStringItem {Name = "s1", Value = "test"}); adapter.Save(fileName, bundle); Assert.IsTrue(File.Exists("CrossLoopStrings.el.xml")); }
public void AddRemoveResourceSetWhenBaseNameContainsCultureInfoTest() { var adapter = new ResXResourceBundleAdapter(new FileSystem()); const string fileName = "CrossLoopStrings.en.xml"; var bundle = adapter.Load(fileName); var newResourceSet = bundle.Add("el"); newResourceSet.Add("s1", new ResourceStringItem { Name = "s1", Value = "test" }); adapter.Save(fileName, bundle); Assert.IsTrue(File.Exists("CrossLoopStrings.el.xml")); }
private void ResourceBundle_Save() { if (this.Context.CurrentProjectIsDirty) { ResXResourceBundleAdapter resXResourceBundle = new ResXResourceBundleAdapter(new StandardAdapters.Common.FileSystem()); resXResourceBundle.Save(this.Context.CurrentBaseFile, this.Context.CurrentResourceBundle); this.Context.CurrentProjectIsDirty = false; } this.RefreshButtonState(); }