Beispiel #1
0
        private HostSetup CreateHostSetup(TestPackage testPackage, FileInfo file)
        {
            HostSetup hostSetup = testPackage.CreateHostSetup();

            using (var reader = new PEImageReader(file.FullName))
            {
                PEImageInfo info = reader.Read();
                hostSetup.ProcessorArchitecture = info.Architecture;
            }

            return(hostSetup);
        }
Beispiel #2
0
        public void GetArchitecture64()
        {
            string      file = Helper.GetTestResources("x64");
            PEImageInfo info = GetPEImageInfo(file);

            Assert.IsNotNull(info);
            Assert.Contains(new[] { ProcessorArchitecture.IA64, ProcessorArchitecture.Amd64 }, info.Architecture);
            Assert.Contains(info.Imports.Select(x => x.ToUpper()), "KERNEL32.DLL");
            Assert.Contains(info.Exports, "MbUnitCpp_GetHeadTest");
            Assert.Contains(info.Exports, "MbUnitCpp_GetNextTest");
            Assert.Contains(info.Exports, "MbUnitCpp_GetString");
            Assert.Contains(info.Exports, "MbUnitCpp_ReleaseAllStrings");
            Assert.Contains(info.Exports, "MbUnitCpp_ReleaseString");
            Assert.Contains(info.Exports, "MbUnitCpp_RunTest");
        }
        /// <inheritdoc />
        public bool IsRecognizedFile(IFileInspector fileInspector)
        {
            Stream stream;

            if (!fileInspector.TryGetStream(out stream))
            {
                return(false);
            }

            using (var reader = new PEImageReader(stream))
            {
                PEImageInfo info = reader.Read();
                return((info != null) && info.Exports.Contains("MbUnitCpp_RunTest"));
            }
        }