Esempio n. 1
0
        protected virtual void InitialChecking(LinkedTestCaseResult linkResult, AssemblyDefinition original, AssemblyDefinition linked)
        {
#if !NETCOREAPP
            // the PE Verifier does not know how to resolve .NET Core assemblies.
            _peVerifier.Check(linkResult, original);
#endif
        }
Esempio n. 2
0
        public virtual void Check(LinkedTestCaseResult linkResult)
        {
            Assert.IsTrue(linkResult.OutputAssemblyPath.FileExists(), $"The linked output assembly was not found.  Expected at {linkResult.OutputAssemblyPath}");

            InitializeResolvers(linkResult);

            try
            {
                var original = ResolveOriginalsAssembly(linkResult.ExpectationsAssemblyPath.FileNameWithoutExtension);
                PerformOutputAssemblyChecks(original, linkResult.OutputAssemblyPath.Parent);
                PerformOutputSymbolChecks(original, linkResult.OutputAssemblyPath.Parent);

                var linked = ResolveLinkedAssembly(linkResult.OutputAssemblyPath.FileNameWithoutExtension);

                CreateAssemblyChecker(original, linked).Verify();

                VerifyLinkingOfOtherAssemblies(original);

                _peVerifier.Check(linkResult, original);

                AdditionalChecking(linkResult, original, linked);
            }
            finally
            {
                _originalsResolver.Dispose();
                _linkedResolver.Dispose();
            }
        }