public async Task WhenValidationRulesArePassedThenResultIsNotEmpty() { var solutionPath = @"..\..\..\ArchiMetrics.sln".GetLowerCaseFullPath(); var rule = new BranchModelRule(new ModelNode("ArchiMetrics.Analysis", NodeKind.Assembly, CodeQuality.Good, 0, 0, 0)); var result = await _validator.Validate(solutionPath, new[] { rule }, Enumerable.Empty<TransformRule>(), CancellationToken.None); CollectionAssert.IsNotEmpty(result); }
public async Task WhenTreeDoesNotContainBranchThenIsNotPassed() { var rule = new BranchModelRule(new ModelNode("cheese", "type", CodeQuality.Good, 0, 0, 0)); var tree = new ModelNode("node", "type", CodeQuality.Good, 0, 0, 0, new[] { new ModelNode("child", "type", CodeQuality.Good, 0, 0, 0, new[] { new ModelNode("leaf", "type", CodeQuality.Good, 0, 0, 0) }) }); var result = await rule.Validate(tree); Assert.IsFalse(result.Any(x => x.Passed)); }
public async Task WhenTreeContainsComplexBranchThenIsPassed() { var rule = new BranchModelRule(new ModelNode("child", "type", CodeQuality.Good, 0, 0, 0, new[] { new ModelNode("leaf", "type", CodeQuality.Good, 0, 0, 0) })); var tree = new ModelNode("node", "type", CodeQuality.Good, 0, 0, 0, new[] { new ModelNode("child", "type", CodeQuality.Good, 0, 0, 0, new[] { new ModelNode("leaf", "type", CodeQuality.Good, 0, 0, 0) }) }); var result = await rule.Validate(tree); Assert.IsTrue(result.All(x => x.Passed)); }