Example #1
0
 private async Task<ConnectionData> HandleShutdownRequest(CancellationToken cancellationToken)
 {
     var id = Process.GetCurrentProcess().Id;
     var response = new ShutdownBuildResponse(id);
     await response.WriteAsync(_stream, cancellationToken).ConfigureAwait(false);
     return new ConnectionData(CompletionReason.ClientShutdownRequest);
 }
Example #2
0
        public async Task ShutdownResponseWriteRead()
        {
            var response = new ShutdownBuildResponse(42);
            Assert.Equal(BuildResponse.ResponseType.Shutdown, response.Type);

            var memoryStream = new MemoryStream();
            await response.WriteAsync(memoryStream, CancellationToken.None);
            memoryStream.Position = 0;

            var read = await BuildResponse.ReadAsync(memoryStream, CancellationToken.None);
            Assert.Equal(BuildResponse.ResponseType.Shutdown, read.Type);
            var typed = (ShutdownBuildResponse)read;
            Assert.Equal(42, typed.ServerProcessId);
        }