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); }
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")); } }