本文整理汇总了C#中ParserContext.Scenario方法的典型用法代码示例。如果您正苦于以下问题:C# ParserContext.Scenario方法的具体用法?C# ParserContext.Scenario怎么用?C# ParserContext.Scenario使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParserContext
的用法示例。
在下文中一共展示了ParserContext.Scenario方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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;
}
示例2: AddFeature
static bool AddFeature(ParserContext context)
{
if (context.Feature != null)
context.Features.Add (context.Feature ());
if (context.Step != null)
context.Steps.Add (context.Step ());
if (context.Scenario != null) {
context.Scenarios.Add (context.Scenario ());
}
context.Scenario = null;
context.Step = null;
if (context.Keyword == null || !context.IsWord)
return false;
var scenarios = new List<Scenario> ();
context.Scenarios = scenarios;
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;
context.Feature = () => new Feature (scenarios, tags, content, fileName, line, column);
return true;
}