public BaseInstanceValidatorManager(ClassTypeCache cache, AssetValidatorLogger logger) : base(logger) { _cache = cache; _instanceValidatorCache = new InstanceValidatorCache(); InitValidatorLookup(); }
public void Setup() { _coreCache = new ClassTypeCache(); _coreCache.AddTypeWithAttribute <Monobehavior2, ValidateAttribute>(); _logger = new AssetValidatorLogger(); _sValidatorManager = new ActiveSceneValidatorManager(_coreCache, _logger); }
public CrossSceneValidatorManager(AssetValidatorLogger logger) : base(logger) { _crossSceneValidatorCache = new CrossSceneValidatorCache(); for (var i = 0; i < _crossSceneValidatorCache.Count; i++) { _crossSceneValidatorCache[i].OnLogEvent += _logger.OnLogEvent; } }
public void AddDisabledLogs(AssetValidatorLogger logger) { for (var i = 0; i < OverrideItems.Count; i++) { if (OverrideItems[i].enabled) { continue; } logger.OnLogEvent(new VLog() { source = VLogSource.None, vLogType = VLogType.Warning, message = string.Format("Validator of type [{0}] is disabled in the AssetValidatorOverrideConfig at [{1}]", OverrideItems[i].type.Name, AssetDatabase.GetAssetPath(this)) }); } }
private void OnEnable() { titleContent.text = "Asset Validator"; _customGUISkin = GetGUISkin(); _toolbarStyle = _customGUISkin.button; _logger = new AssetValidatorLogger(); _groupByOptionsValues = (VLogTreeGroupByMode[])Enum.GetValues(typeof(VLogTreeGroupByMode)); _groupByOptionsNames = _groupByOptionsValues.Select(x => ReflectionUtility.ToEnumString(x)).ToArray(); _ouputFormatOptions = (OutputFormat[])Enum.GetValues(typeof(OutputFormat)); _outputFormatOptionNames = _ouputFormatOptions.Select(x => ReflectionUtility.ToEnumString(x)).ToArray(); _sceneValidationModeOptions = (SceneValidationMode[])Enum.GetValues(typeof(SceneValidationMode)); _sceneValidationModeOptionNames = _sceneValidationModeOptions.Select(x => ReflectionUtility.ToEnumString(x)).ToArray(); InitOnEnable(); }
public AssetValidatorRunner(AssetValidatorLogger logger, SceneValidationMode vmode) { _scenePaths = AssetValidatorUtility.GetScenePaths(vmode); _logger = logger; _cache = new ClassTypeCache(); // Ensure any unit test types do not get picked up for validation. _cache.IgnoreType <Monobehavior2>(); _cache.IgnoreAttribute <OnlyIncludeInTestsAttribute>(); // Find all objects for validation _cache.AddTypeWithAttribute <MonoBehaviour, ValidateAttribute>(); // Add all disabled logs for this run AssetValidatorOverrideConfig.FindOrCreate().AddDisabledLogs(logger); _isRunning = true; _runningTime = EditorApplication.timeSinceStartup; }
public static Result RunValidation(SceneValidationMode vMode, OutputFormat oFormat, bool doValidateProjectAssets = false, bool doValidateAcrossScenes = false, string fileName = "asset_validator_results") { AssetValidatorUtility.EditorOuputFormat = oFormat; AssetValidatorUtility.EditorFilename = fileName; try { var assetLogger = new AssetValidatorLogger(); using (var assetValidationRunner = new AssetValidatorRunner(assetLogger, vMode)) { if (doValidateProjectAssets) { assetValidationRunner.EnableProjectAssetValidation(); } if (doValidateAcrossScenes) { assetValidationRunner.EnableCrossSceneValidation(); } assetValidationRunner.Run(); } var logs = assetLogger.GetLogs(); if (AssetValidatorUtility.EditorOuputFormat != OutputFormat.None) { using (var writer = new AssetValidatorLogWriter(AssetValidatorUtility.EditorFilename, AssetValidatorUtility.EditorOuputFormat)) { if (AssetValidatorUtility.EditorOuputFormat == OutputFormat.Html) { writer.CreateHtmlStyles(logs); } writer.AppendHeader(); for (var i = 0; i < logs.Count; i++) { writer.AppendVLog(logs[i]); } writer.AppendFooter(); writer.Flush(); } } var result = new Result { isSuccessful = logs.Any(x => x.vLogType == VLogType.Error) }; result.message = result.isSuccessful ? "No AssetValidation errors were found." : "Several AssetValidation errors were found"; return(result); } catch (Exception ex) { return(new Result() { isSuccessful = false, message = string.Format("AssetValidation failed to be run with the following exception: [{0}]", ex) }); } }
public ProjectAssetValidatorManager(ClassTypeCache cache, AssetValidatorLogger logger) : base(cache, logger) { _continueSearchProgress = 0; _allPrefabGUIDs = AssetDatabase.FindAssets("t:Prefab"); }
public ActiveSceneValidatorManager(ClassTypeCache cache, AssetValidatorLogger logger) : base(cache, logger) { }
protected BaseValidatorManager(AssetValidatorLogger logger) { _logger = logger; }