public void Folded_PreprocessingLexer_Items() { var pp = new PreprocessingLexer(); pp.Define("Сервер"); pp.Define("Клиент"); pp.Define("ВебКлиент"); var code = @" #Если Сервер Тогда #Если ВебКлиент Тогда Б #КонецЕсли Х #Иначе В #КонецЕсли"; var preprocessed = GetPreprocessedContent(pp, code); Assert.Equal("БХ", preprocessed); pp.Undef("ВебКлиент"); preprocessed = GetPreprocessedContent(pp, code); Assert.Equal("Х", preprocessed); pp.Undef("Сервер"); preprocessed = GetPreprocessedContent(pp, code); Assert.Equal("В", preprocessed); }
public void PreprocessingLexer_CompositeTest() { var pp = new PreprocessingLexer(); string code = @" #Если Клиент Тогда К #ИначеЕсли Сервер или ВебКлиент Тогда СВ #ИначеЕсли ТолстыйКлиент и Не ВебКлиент Тогда ТнВ #Иначе И #КонецЕсли"; pp.Define("Сервер"); Assert.Equal("СВ", GetPreprocessedContent(pp, code)); pp.Define("Клиент"); Assert.True(GetPreprocessedContent(pp, code) == "К"); pp.Undef("Сервер"); pp.Undef("Клиент"); pp.Define("ВебКлиент"); Assert.True(GetPreprocessedContent(pp, code) == "СВ"); pp.Define("ТолстыйКлиент"); pp.Undef("ВебКлиент"); Assert.True(GetPreprocessedContent(pp, code) == "ТнВ"); pp.Undef("ТолстыйКлиент"); Assert.True(GetPreprocessedContent(pp, code) == "И"); }
public void Definitions_Are_Defined() { var pp = new PreprocessingLexer();; pp.Define("Сервер"); pp.Define("ВебКлиент"); Assert.True(pp.IsDefined("сервер")); Assert.True(pp.IsDefined("вебКлиеНт")); Assert.False(pp.IsDefined("client")); pp.Undef("ВебКлиент"); Assert.False(pp.IsDefined("ВебКлиент")); }