public void RelationTaggedWthType_OutputsTypeForTagAndLexemeFormOfTarget() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <relation type='composition' ref='one' /> </entry> <entry id='one' > <lexical-unit> <form lang='bth'> <text>lexemeOfOne</text> </form> </lexical-unit> </entry> </lift>" , Validator.LiftVersion); string result = GetResultFromAddin(contents); Console.WriteLine(result); Assert.IsTrue(result.Contains("\\lf composition = lexemeOfOne")); }
public void TagsPronunciationWithPh() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <lexical-unit> <form lang='bth'> <text>bthform</text> </form> </lexical-unit> <pronunciation> <form lang='bth-fonipa'> <text>thePronunciation</text> </form> </pronunciation> </entry> </lift>" , Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lx bthform")); Assert.IsTrue(result.Contains("\\ph thePronunciation")); }
public void TagsPronunciationWithPh() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <lexical-unit> <form lang='bth'> <text>bthform</text> </form> </lexical-unit> <pronunciation> <form lang='bth-fonipa'> <text>thePronunciation</text> </form> </pronunciation> </entry> </lift>", Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lx bthform")); Assert.IsTrue(result.Contains("\\ph thePronunciation")); }
public void UntypedRelationGetsCfTag() { /* um, relation without a type might not actually be valid lift */ SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <relation ref='ebo' /> </entry> </lift>" , Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lf unknown = ebo")); }
public void CrossReferenceWithNFD_OutputIsNFC() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='{1}' guid='d9c25d1f-d373-4995-9ffa-ae2cf650603c'> <lexical-unit> <form lang='bth'> <text>{2}</text> </form> </lexical-unit> </entry> <entry id='men_ebc7bf16-d322-4c3c-a4fd-3efdf8164eef' guid='ebc7bf16-d322-4c3c-a4fd-3efdf8164eef'> <lexical-unit> <form lang='bth'> <text>men</text> </form> </lexical-unit> <relation ref='{3}' type = 'confer' /> </entry> </lift>" , Validator.LiftVersion, "m\u00EB_d9c25d1f-d373-4995-9ffa-ae2cf650603c", "m\u00EB", "me\u0308_d9c25d1f-d373-4995-9ffa-ae2cf650603c"); Console.WriteLine(contents); ViewTemplate template = WeSayWordsProject.Project.DefaultViewTemplate; template.GetField(Palaso.DictionaryServices.Model.LexEntry.WellKnownProperties.CrossReference).Enabled = true; string result = GetResultFromAddin(contents); Console.WriteLine(result); Regex regex = new Regex(@"\\lf\ confer\ =\ (.+)_([0-9a-f\-]+)", RegexOptions.Compiled); using (StringReader reader = new StringReader(result)) { string line = reader.ReadLine(); while (line != null) { Assert.IsFalse(regex.IsMatch(line)); line = reader.ReadLine(); } reader.Close(); } Assert.IsTrue(result.Contains("\\lf confer = m\u00EB")); Assert.IsFalse(result.Contains("\\lf confer = me\u0308_d9c25d1f-d373-4995-9ffa-ae2cf650603c")); }
private string LaunchWithConversionString(string conversions) { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = conversions; _addin.Settings = settings; return(LaunchAddin()); }
public void Relation_TargetNotFoundOutputsId() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='one' > <relation type='composition' ref='id-of-missing' /> </entry> </lift>" , Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lf composition = id-of-missing")); }
private string LaunchWithConversionString(string conversions) { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = conversions; _addin.Settings = settings; return LaunchAddin(); }
public void Relation_TargetNotFoundOutputsId() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='one' > <relation type='composition' ref='id-of-missing' /> </entry> </lift>", Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lf composition = id-of-missing")); }
public void RelationTaggedWthType_OutputsTypeForTagAndLexemeFormOfTarget() { SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <relation type='composition' ref='one' /> </entry> <entry id='one' > <lexical-unit> <form lang='bth'> <text>lexemeOfOne</text> </form> </lexical-unit> </entry> </lift>", Validator.LiftVersion); string result = GetResultFromAddin(contents); Console.WriteLine(result); Assert.IsTrue(result.Contains("\\lf composition = lexemeOfOne")); }
public void UntypedRelationGetsCfTag() { /* um, relation without a type might not actually be valid lift */ SfmTransformSettings settings = new SfmTransformSettings(); settings.SfmTagConversions = ""; settings.VernacularLanguageWritingSystemId = "bth"; settings.EnglishLanguageWritingSystemId = "en"; _addin.Settings = settings; string contents = string.Format( @"<?xml version='1.0' encoding='utf-8'?> <lift version='{0}'> <entry id='abo-abo_ID0ENG' > <relation ref='ebo' /> </entry> </lift>", Validator.LiftVersion); string result = GetResultFromAddin(contents); Assert.IsTrue(result.Contains("\\lf unknown = ebo")); }