public void Setup() { sc = new ServiceContainer(); form = new Mock <IMainForm>(); var arch = new X86ArchitectureReal(sc, "x86-real-16"); var platform = new Mock <IPlatform>(); platform.Setup(p => p.CreateMetadata()).Returns(new TypeLibrary()); platform.Setup(p => p.Architecture).Returns(arch); program = new Program(); program.Architecture = arch; program.Platform = platform.Object; var mem = new ByteMemoryArea(Address.SegPtr(0xC00, 0), new byte[10000]); program.SegmentMap = new SegmentMap( mem.BaseAddress, new ImageSegment("0C00", mem, AccessMode.ReadWriteExecute)); program.SegmentMap.AddOverlappingSegment("0C10", mem, Address.SegPtr(0x0C10, 0), AccessMode.ReadWrite); program.SegmentMap.AddOverlappingSegment("0C20", mem, Address.SegPtr(0x0C20, 0), AccessMode.ReadWrite); mapSegment1 = program.SegmentMap.Segments.Values[0]; mapSegment2 = program.SegmentMap.Segments.Values[1]; decSvc = new DecompilerService(); sc.AddService <IDecompilerService>(decSvc); sc.AddService <IWorkerDialogService>(new FakeWorkerDialogService()); sc.AddService <DecompilerEventListener>(new FakeDecompilerEventListener()); sc.AddService <IStatusBarService>(new FakeStatusBarService()); sc.AddService <IDecompiledFileService>(new FakeDecompiledFileService()); uiSvc = AddService <IDecompilerShellUiService>(); memSvc = AddService <ILowLevelViewService>(); var ldr = new Mock <ILoader>(); ldr.Setup(l => l.LoadImageBytes("test.exe", 0)).Returns(new byte[400]); ldr.Setup(l => l.LoadExecutable( It.IsNotNull <string>(), It.IsNotNull <byte[]>(), null, It.IsAny <Address>())).Returns(program) .Callback(() => { program.ToString(); }); decSvc.Decompiler = new Decompiler(ldr.Object, sc); decSvc.Decompiler.Load("test.exe"); interactor = new ScannedPageInteractor(sc); }
public void Setup() { mr = new MockRepository(); sc = new ServiceContainer(); form = new MainForm(); var platform = mr.Stub <IPlatform>(); program = new Program(); program.Architecture = new X86ArchitectureReal("x86-real-16"); program.Platform = platform; var mem = new MemoryArea(Address.SegPtr(0xC00, 0), new byte[10000]); program.SegmentMap = new SegmentMap( mem.BaseAddress, new ImageSegment("0C00", mem, AccessMode.ReadWriteExecute)); program.SegmentMap.AddSegment(Address.SegPtr(0x0C10, 0), "0C10", AccessMode.ReadWrite, 0); program.SegmentMap.AddSegment(Address.SegPtr(0x0C20, 0), "0C20", AccessMode.ReadWrite, 0); mapSegment1 = program.SegmentMap.Segments.Values[0]; mapSegment2 = program.SegmentMap.Segments.Values[1]; decSvc = new DecompilerService(); sc.AddService <IDecompilerService>(decSvc); sc.AddService <IWorkerDialogService>(new FakeWorkerDialogService()); sc.AddService <DecompilerEventListener>(new FakeDecompilerEventListener()); sc.AddService <IStatusBarService>(new FakeStatusBarService()); sc.AddService <DecompilerHost>(new FakeDecompilerHost()); uiSvc = AddService <IDecompilerShellUiService>(); memSvc = AddService <ILowLevelViewService>(); ILoader ldr = mr.StrictMock <ILoader>(); ldr.Stub(l => l.LoadImageBytes("test.exe", 0)).Return(new byte[400]); ldr.Stub(l => l.LoadExecutable( Arg <string> .Is.NotNull, Arg <byte[]> .Is.NotNull, Arg <string> .Is.Null, Arg <Address> .Is.Null)).Return(program); ldr.Replay(); decSvc.Decompiler = new DecompilerDriver(ldr, sc); decSvc.Decompiler.Load("test.exe"); interactor = new ScannedPageInteractor(sc); }
public void Setup() { sc = new ServiceContainer(); form = new Mock <IMainForm>(); var arch = new X86ArchitectureReal(sc, "x86-real-16", new Dictionary <string, object>()); var platform = new Mock <IPlatform>(); platform.Setup(p => p.CreateMetadata()).Returns(new TypeLibrary()); platform.Setup(p => p.Architecture).Returns(arch); program = new Program(); program.Architecture = arch; program.Platform = platform.Object; var mem = new ByteMemoryArea(Address.SegPtr(0xC00, 0), new byte[10000]); program.SegmentMap = new SegmentMap( mem.BaseAddress, new ImageSegment("0C00", mem, AccessMode.ReadWriteExecute)); program.SegmentMap.AddOverlappingSegment("0C10", mem, Address.SegPtr(0x0C10, 0), AccessMode.ReadWrite); program.SegmentMap.AddOverlappingSegment("0C20", mem, Address.SegPtr(0x0C20, 0), AccessMode.ReadWrite); mapSegment1 = program.SegmentMap.Segments.Values[0]; mapSegment2 = program.SegmentMap.Segments.Values[1]; var project = new Project(); project.AddProgram(ImageLocation.FromUri("/home/bob/test.exe"), program); decSvc = new DecompilerService(); sc.AddService <IDecompilerService>(decSvc); sc.AddService <IWorkerDialogService>(new FakeWorkerDialogService()); sc.AddService <DecompilerEventListener>(new FakeDecompilerEventListener()); sc.AddService <IStatusBarService>(new FakeStatusBarService()); sc.AddService <IDecompiledFileService>(new FakeDecompiledFileService()); uiSvc = AddService <IDecompilerShellUiService>(); memSvc = AddService <ILowLevelViewService>(); decSvc.Decompiler = new Decompiler(project, sc); interactor = new ScannedPageInteractor(sc); }