コード例 #1
0
        public void Add_Memory_Ranges()
        {
            // arrange
            var httpBuilder = new HttpFacadeBuilder();

            httpBuilder.WithPostAsync(new HttpResponseMessage(HttpStatusCode.OK));
            httpBuilder.WithPostJsonAsync(new HttpResponseMessage(HttpStatusCode.OK));
            var settings = new Settings
            {
                ServerUrl   = "https://some.server.net",
                ProjectName = "testing"
            };
            var serverClient = new ServerClient {
                HttpFacade = httpBuilder.Build(), Settings = settings
            };

            var headers = new HttpHeaders();

            headers.Add("X-Project-Name", "testing");

            var memoryChunk = new MemoryChunk
            {
                Position    = new Position(0x10, 0x0),
                MemoryRange = new MemoryRange(0x100, 0x200),
                Bytes       = new byte[] { 0x00, 0x11 }
            };

            serverClient.AddMemoryRange(memoryChunk);
            var content = new AddMemoryRequest(memoryChunk);

            httpBuilder.Mock.Verify(
                facade => facade.PostJsonAsync(new Uri("https://some.server.net/api/memory"),
                                               content, headers), Times.Once);
        }
コード例 #2
0
        /// <inheritdoc />
        public void AddMemoryRange(MemoryChunk memoryChunk)
        {
            var ub = new UriBuilder(Settings.ServerUrl)
            {
                Path = $"api/memory"
            };
            var addMemoryRequest = new AddMemoryRequest(memoryChunk);
            var headers          = new HttpHeaders
            {
                ["X-Project-Name"] = Settings.ProjectName
            };

            HttpFacade.PostJsonAsync(ub.Uri, addMemoryRequest, headers).GetAwaiter().GetResult();
        }
コード例 #3
0
ファイル: MemoryController.cs プロジェクト: ExpLife0011/mcfly
 /// <summary>
 ///     Adds raw memory to the analysis
 /// </summary>
 /// <param name="projectName">Name of the project.</param>
 /// <param name="request">The request.</param>
 /// <returns>IHttpActionResult.</returns>
 public IHttpActionResult Post([FromProjectNameHeader] string projectName, [FromBody] AddMemoryRequest request)
 {
     MemoryAccess.AddMemory(projectName, request.MemoryChunk); // todo: errors
     return(Ok());
 }