@@ -103,6 +103,26 @@ class \nodoc\ iso _TestHandleableSignalAccepts is UnitTest
103103 _assert_valid (h, Sig .info ())
104104 _assert_valid (h, Sig .usr1 ())
105105 _assert_valid (h, Sig .sys ())
106+ elseif haiku then
107+ _assert_valid (h, Sig .hup ())
108+ _assert_valid (h, Sig .int ())
109+ _assert_valid (h, Sig .quit ())
110+ _assert_valid (h, Sig .pipe ())
111+ _assert_valid (h, Sig .alrm ())
112+ _assert_valid (h, Sig .term ())
113+ _assert_valid (h, Sig .urg ())
114+ _assert_valid (h, Sig .tstp ())
115+ _assert_valid (h, Sig .cont ())
116+ _assert_valid (h, Sig .chld ())
117+ _assert_valid (h, Sig .ttin ())
118+ _assert_valid (h, Sig .ttou ())
119+ _assert_valid (h, Sig .xcpu ())
120+ _assert_valid (h, Sig .xfsz ())
121+ _assert_valid (h, Sig .vtalrm ())
122+ _assert_valid (h, Sig .prof ())
123+ _assert_valid (h, Sig .winch ())
124+ _assert_valid (h, Sig .usr1 ())
125+ _assert_valid (h, Sig .sys ())
106126 elseif windows then
107127 _assert_valid (h, Sig .int ())
108128 _assert_valid (h, Sig .term ())
@@ -122,7 +142,7 @@ class \nodoc\ iso _TestHandleableSignalRejectsFatal is UnitTest
122142 fun name (): String => " signals/HandleableSignal rejects fatal"
123143
124144 fun apply (h: TestHelper ) =>
125- ifdef linux or bsd or osx then
145+ ifdef linux or bsd or osx or haiku then
126146 _assert_invalid (h, Sig .ill ())
127147 _assert_invalid (h, Sig .trap ())
128148 _assert_invalid (h, Sig .abrt ())
@@ -154,7 +174,7 @@ class \nodoc\ iso _TestHandleableSignalRejectsUncatchable is UnitTest
154174 fun name (): String => " signals/HandleableSignal rejects uncatchable"
155175
156176 fun apply (h: TestHelper ) =>
157- ifdef linux or bsd or osx then
177+ ifdef linux or bsd or osx or haiku then
158178 _assert_invalid (h, Sig .kill ())
159179 _assert_invalid (h, Sig .stop ())
160180 elseif windows then
@@ -201,7 +221,7 @@ class \nodoc\ iso _TestHandleableSignalRejectsReserved is UnitTest
201221 made the old system's SIGUSR2 handlers silently never fire, and the
202222 whitelist now refuses the number so the failure is visible instead. Sig.usr2()
203223 is a compile error on these builds, so the number is written out: 12 on
204- Linux, 31 on BSD.
224+ Linux, 31 on BSD, 19 on Haiku .
205225 """
206226 fun name (): String => " signals/HandleableSignal rejects reserved"
207227
@@ -211,6 +231,8 @@ class \nodoc\ iso _TestHandleableSignalRejectsReserved is UnitTest
211231 _assert_invalid (h, 12 )
212232 elseif bsd then
213233 _assert_invalid (h, 31 )
234+ elseif haiku then
235+ _assert_invalid (h, 19 )
214236 end
215237 end
216238
@@ -251,6 +273,14 @@ class \nodoc\ iso _TestHandleableSignalRTBoundaries is UnitTest
251273 elseif osx then
252274 // The RT range is bsd-only; it must not leak into the osx whitelist.
253275 _assert_invalid (h, 65 )
276+ elseif haiku then
277+ try
278+ _assert_valid (h, Sig .rt (0 )?)
279+ _assert_valid (h, Sig .rt (7 )?)
280+ else
281+ h.fail (" in-range Sig.rt errored" )
282+ end
283+ _assert_invalid (h, 8 )
254284 end
255285
256286 fun _assert_valid (h: TestHelper , sig: U32 ) =>
0 commit comments