Remove the use of ExpectedException in Mono.Posix Tests (#4698)
[mono.git] / mcs / class / Mono.Posix / Test / Mono.Unix.Native / RealTimeSignumTests.cs
1 //
2 // RealTimeSignumTests.cs - NUnit Test Cases for Mono.Unix.Native.RealTimeSignum
3 //
4 // Authors:
5 //      Tim Jenks  <tim.jenks@realtimeworlds.com>
6 //
7 // (C) 2008 Realtime Worlds Ltd
8 //
9
10 using NUnit.Framework;
11
12 using System;
13 using System.Text;
14 using System.Threading;
15 using Mono.Unix;
16 using Mono.Unix.Android;
17 using Mono.Unix.Native;
18
19 namespace MonoTests.Mono.Unix.Native {
20
21         [TestFixture]
22         [Category ("NotOnMac"), Category ("NotOnWindows")]
23         public class RealTimeSignumTest 
24         {
25                 [Test]
26                 public void TestRealTimeOutOfRange ()
27                 {
28                         if (!TestHelper.CanUseRealTimeSignals ())
29                                 return;
30
31                         Assert.Throws<ArgumentOutOfRangeException> (() => {
32                                 RealTimeSignum rts = new RealTimeSignum (int.MaxValue);
33                         });
34                 }
35
36                 [Test]
37                 public void TestRealTimeSignumNegativeOffset ()
38                 {
39                         if (!TestHelper.CanUseRealTimeSignals ())
40                                 return;
41
42                         Assert.Throws<ArgumentOutOfRangeException> (() => {
43                                 RealTimeSignum rts1 = new RealTimeSignum (-1);
44                         });
45                 }
46
47                 [Test]
48                 public void TestRTSignalEquality ()
49                 {
50                         if (!TestHelper.CanUseRealTimeSignals ())
51                                 return;
52                         RealTimeSignum rts1 = new RealTimeSignum (0);
53                         RealTimeSignum rts2 = new RealTimeSignum (0);
54                         Assert.That (rts1 == rts2, Is.True);
55                         Assert.That (rts1 != rts2, Is.False);
56                 }
57
58                 [Test]
59                 public void TestRTSignalInequality ()
60                 {
61                         if (!TestHelper.CanUseRealTimeSignals ())
62                                 return;
63                         RealTimeSignum rts1 = new RealTimeSignum (0);
64                         RealTimeSignum rts2 = new RealTimeSignum (1);
65                         Assert.That (rts1 == rts2, Is.False);
66                         Assert.That (rts1 != rts2, Is.True);
67                 }
68
69                 [Test]
70                 public void TestRTSignalGetHashCodeEquality ()
71                 {
72                         if (!TestHelper.CanUseRealTimeSignals ())
73                                 return;
74                         RealTimeSignum rts1 = new RealTimeSignum (0);
75                         RealTimeSignum rts2 = new RealTimeSignum (0);
76                         Assert.That (rts1.GetHashCode (), Is.EqualTo(rts2.GetHashCode ()));
77                 }
78
79                 [Test]
80                 public void TestRTSignalGetHashCodeInequality ()
81                 {
82                         if (!TestHelper.CanUseRealTimeSignals ())
83                                 return;
84                         RealTimeSignum rts1 = new RealTimeSignum (0);
85                         RealTimeSignum rts2 = new RealTimeSignum (1);
86                         Assert.That (rts1.GetHashCode (), Is.Not.EqualTo(rts2.GetHashCode ()));
87                 }
88
89                 [Test]
90                 public void TestIsRTSignalPropertyForRTSignum ()
91                 {
92                         if (!TestHelper.CanUseRealTimeSignals ())
93                                 return;
94                         UnixSignal signal1 = new UnixSignal(new RealTimeSignum (0));
95                         Assert.That (signal1.IsRealTimeSignal, Is.True);
96                 }
97
98                 [Test]
99                 public void TestIsRTSignalPropertyForSignum ()
100                 {
101                         if (!TestHelper.CanUseRealTimeSignals ())
102                                 return;
103                         UnixSignal signal1 = new UnixSignal (Signum.SIGSEGV);
104                         Assert.That (signal1.IsRealTimeSignal, Is.False);
105                 }
106
107         }
108 }