Esempio n. 1
0
        public void ShouldNotReportMutedIssue()
        {
            var projectAuditor         = new Unity.ProjectAuditor.Editor.ProjectAuditor();
            var projectAuditorSettings = projectAuditor.config;
            var projectReport          = projectAuditor.Audit();
            var issues = ScriptAuditor.FindScriptIssues(projectReport, m_ScriptResource.relativePath);

            Assert.AreEqual(1, issues.Count());

            var issue = issues.FirstOrDefault();

            projectAuditorSettings.ClearAllRules();

            var action = projectAuditorSettings.GetAction(issue.descriptor, issue.callingMethod);

            // expect default action specified in descriptor
            Assert.AreEqual(issue.descriptor.action, action);

            // add rule with a filter.
            projectAuditorSettings.AddRule(new Rule
            {
                id     = issue.descriptor.id,
                action = Rule.Action.None,
                filter = issue.callingMethod
            });

            action = projectAuditorSettings.GetAction(issue.descriptor, issue.callingMethod);

            // issue has been muted so it should not be reported
            Assert.AreEqual(Rule.Action.None, action);
        }
Esempio n. 2
0
        public static IEnumerable <ProjectIssue> AnalyzeAndFindScriptIssues(ScriptResource scriptResource)
        {
            var projectAuditor = new Unity.ProjectAuditor.Editor.ProjectAuditor();
            var projectReport  = projectAuditor.Audit();

            return(ScriptAuditor.FindScriptIssues(projectReport, scriptResource.relativePath));
        }
Esempio n. 3
0
        public static ProjectIssue[] AnalyzeAndFindAssetIssues(TempAsset tempAsset)
        {
            var auditor = new ScriptAuditor();
            var config  = ScriptableObject.CreateInstance <ProjectAuditorConfig>();

            config.AnalyzeInBackground = false;
            auditor.Initialize(config);

            var foundIssues = new List <ProjectIssue>();
            var completed   = false;

            auditor.Audit(issue => {
                foundIssues.Add(issue);
            },
                          () =>
            {
                completed = true;
            });

            Assert.True(completed);

            return(foundIssues.Where(i => i.relativePath.Equals(tempAsset.relativePath)).ToArray());
        }