/// <exclude />
        public List <PackageFragmentValidationResult> Validate()
        {
            Verify.IsNotNull(_packageInstaller, "Pre installation did not validate");
            Verify.IsNull(_validationResult, "Validate() may only be called once");

            _validationResult = _packageInstaller.Validate().ToList();

            if (_validationResult.Count > 0)
            {
                _validationResult.AddRange(FinalizeProcess(false));
            }

            return(_validationResult);
        }