public static void Test() { Parse(TestRules.Replace("\r\n", "\n"), TestInput.Replace("\r\n", "\n")); var re = AssembleRegex(false); foreach (var input in Input) { Console.WriteLine($"{input} : {re.IsMatch(input)}"); } Console.WriteLine(); }
public async Task ReturnsSkipIfNoDecisionIsMade() { using (var rules = new TestRules <Album>(new Album())) { var subject = new ShortCircuitPolicy <Album>( rules.SkipRule()); var copy = subject.BuildCopy(rules.SourceContext, rules.SourceNode); var result = await copy.AuthorizeAsync(); Assert.IsType <Skip>(result); } }
public async Task ReturnsAllowIfFirstDecisionIsAllow() { using (var rules = new TestRules <Album>(new Album())) { var subject = new ShortCircuitPolicy <Album>( rules.SkipRule(), rules.AllowRule(), rules.DenyRule()); var copy = subject.BuildCopy(rules.SourceContext, rules.SourceNode); var result = await copy.AuthorizeAsync(); Assert.IsType <Allow <Album> >(result); } }
public bool AddRule(Rule rule) { rule.Connections = Distributor.ResolveConnections(rule.Connections.Select(c => c.ToString())); TestRules.Add(rule); return(true); }
public void Init() { rule = new TestRules(); }