PosixSignalSIGQUIT = -3,
PosixSignalSIGTERM = -4,
PosixSignalSIGCHLD = -5,
- PosixSignalSIGWINCH = -6,
- PosixSignalSIGCONT = -7,
+ PosixSignalSIGCONT = -6,
+ PosixSignalSIGWINCH = -7,
PosixSignalSIGTTIN = -8,
PosixSignalSIGTTOU = -9,
PosixSignalSIGTSTP = -10
// The .NET Foundation licenses this file to you under the MIT license.
using Xunit;
+using System.Diagnostics;
+using System.Globalization;
using System.Threading;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
semaphore.Release();
});
- kill(signal);
+ // Use 'kill' command with signal name to validate the signal pal mapping.
+ string sigArg = signalStr.StartsWith("SIG") ? signalStr.Substring(3) : signalStr;
+ using var process = Process.Start(new ProcessStartInfo
+ {
+ FileName = "/bin/sh", // Use a shell because not all platforms include a 'kill' executable.
+ ArgumentList = { "-c", $"kill -s {sigArg} {Environment.ProcessId.ToString()}" }
+ });
+ process.WaitForExit();
+ Assert.Equal(0, process.ExitCode);
+
bool entered = semaphore.Wait(SuccessTimeout);
Assert.True(entered);
}, s.ToString()).Dispose();