コード例 #1
0
ファイル: RuleTest.cs プロジェクト: jango2015/sonarlint-vs
        public void CodeFixProviders_Named_Properly()
        {
            var codeFixProviders = GetCodeFixProviderTypes(RuleFinder.GetPackagedRuleAssemblies());

            foreach (var codeFixProvider in codeFixProviders)
            {
                var analyzerName = codeFixProvider.FullName.Replace(RuleDetailBuilder.CodeFixProviderSuffix, "");
                if (codeFixProvider.Assembly.GetType(analyzerName) == null)
                {
                    Assert.Fail(
                        "CodeFixProvider '{0}' has no matching DiagnosticAnalyzer.",
                        codeFixProvider.Name);
                }
            }
        }
コード例 #2
0
ファイル: RuleTest.cs プロジェクト: jango2015/sonarlint-vs
        public void CodeFixProviders_Have_Title()
        {
            var codeFixProviders = GetCodeFixProviderTypes(RuleFinder.GetPackagedRuleAssemblies());

            foreach (var codeFixProvider in codeFixProviders)
            {
                var titles = RuleDetailBuilder.GetCodeFixTitles(codeFixProvider);
                if (!titles.Any())
                {
                    Assert.Fail(
                        "CodeFixProvider '{0}' has no title field.",
                        codeFixProvider.Name);
                }
            }
        }
コード例 #3
0
ファイル: RuleTest.cs プロジェクト: jango2015/sonarlint-vs
        public void AbstractDiagnosticAnalyzer_Should_Have_No_RuleAttribute()
        {
            var analyzers = RuleFinder.GetPackagedRuleAssemblies()
                            .SelectMany(assembly => assembly.GetTypes())
                            .Where(t =>
                                   t.IsSubclassOf(typeof(DiagnosticAnalyzer)) &&
                                   t.IsAbstract)
                            .ToList();

            foreach (var analyzer in analyzers)
            {
                var ruleDescriptor = analyzer.GetCustomAttributes <RuleAttribute>().SingleOrDefault();
                if (ruleDescriptor != null)
                {
                    Assert.Fail("RuleAttribute is added to abstract DiagnosticAnalyzer '{0}'", analyzer.Name);
                }
            }
        }
コード例 #4
0
 public void GetPackagedRuleAssembly()
 {
     Assert.AreEqual(3, RuleFinder.GetPackagedRuleAssemblies().Count());
 }