本文整理汇总了C#中ParserContext.Examples方法的典型用法代码示例。如果您正苦于以下问题:C# ParserContext.Examples方法的具体用法?C# ParserContext.Examples怎么用?C# ParserContext.Examples使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParserContext
的用法示例。
在下文中一共展示了ParserContext.Examples方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddScenario
static bool AddScenario(ParserContext context)
{
if (context.Step != null)
context.Steps.Add (context.Step ());
if (context.Scenario != null)
context.Scenarios.Add (context.Scenario ());
if (context.Keyword == null || !context.IsWord)
return false;
var steps = new List<Step> ();
context.Steps = steps;
context.Examples = null;
context.Table = null;
var tags = context.Tags;
context.Tags = new List<string> ();
var content = context.RemainingContent;
var fileName = context.FileName;
var line = context.LineNumber;
var column = context.Column;
var keyword = context.Keyword;
switch (context.Keyword) {
case "Scenario Outline:":
context.Scenario = () => {
if (context.Examples == null && steps.Count > 0) {
context.Errors.Add (new Error (ErrorType.Error, "Expecting Examples for Scenario Outline", new DomRegion (line, column, line, column + keyword.Length)));
}
Examples examples = null;
if (context.Examples != null) {
examples = context.Examples();
if (examples.Table != null && examples.Table.Header != null) {
foreach (var j in steps) {
foreach (var k in j.Placeholders) {
if (!examples.Table.Header.Columns.Contains (k.Name)) {
context.Errors.Add (new Error (ErrorType.Warning, "Placeholder does not match column in table", new DomRegion (k.Line, k.Column, line, k.Column + k.Name.Length)));
}
}
}
}
}
return new ScenarioOutline (examples, steps, tags, content, fileName, line, column);
};
break;
case "Scenario:":
context.Scenario = () => new Scenario (steps, tags, content, fileName, line, column);
break;
case "Background:":
context.Scenario = () => new Background (steps, tags, fileName, line, column);
break;
}
return true;
}