public void Remove_ExistingWritingSystem_UpdatesXml() { const string userSettingsXml = @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> <WritingSystem id=""fr-FR""> <DefaultFontSize>12</DefaultFontSize> <IsGraphiteEnabled>false</IsGraphiteEnabled> </WritingSystem> </WritingSystems> </UserLexiconSettings>"; var settingsStore = new MemorySettingsStore { SettingsElement = XElement.Parse(userSettingsXml) }; var userSettingsDataMapper = new UserLexiconSettingsWritingSystemDataMapper(settingsStore); userSettingsDataMapper.Remove("fr-FR"); Assert.That(settingsStore.SettingsElement, Is.XmlEqualTo( @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> </WritingSystems> </UserLexiconSettings>")); userSettingsDataMapper.Remove("en-US"); Assert.That(settingsStore.SettingsElement, Is.XmlEqualTo("<UserLexiconSettings />")); }
public void Remove_NonexistentWritingSystem_DoesNotUpdateXml() { const string userSettingsXml = @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> </WritingSystems> </UserLexiconSettings>"; var settingsStore = new MemorySettingsStore { SettingsElement = XElement.Parse(userSettingsXml) }; var userSettingsDataMapper = new UserLexiconSettingsWritingSystemDataMapper(settingsStore); userSettingsDataMapper.Remove("fr-FR"); Assert.That(settingsStore.SettingsElement, Is.EqualTo(XElement.Parse( @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> </WritingSystems> </UserLexiconSettings>")).Using((IEqualityComparer <XNode>) new XNodeEqualityComparer())); }
public void Remove_NonexistentWritingSystem_DoesNotUpdateXml() { const string userSettingsXml = @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> </WritingSystems> </UserLexiconSettings>"; var settingsStore = new MemorySettingsStore {SettingsElement = XElement.Parse(userSettingsXml)}; var userSettingsDataMapper = new UserLexiconSettingsWritingSystemDataMapper(settingsStore); userSettingsDataMapper.Remove("fr-FR"); Assert.That(settingsStore.SettingsElement, Is.EqualTo(XElement.Parse( @"<UserLexiconSettings> <WritingSystems> <WritingSystem id=""en-US""> <LocalKeyboard>en-US_English-IPA</LocalKeyboard> <DefaultFontName>Times New Roman</DefaultFontName> </WritingSystem> </WritingSystems> </UserLexiconSettings>")).Using((IEqualityComparer<XNode>) new XNodeEqualityComparer())); }