diff options
author | Koundinya Veluri <kouvel@users.noreply.github.com> | 2018-01-04 17:34:35 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-04 17:34:35 -0800 |
commit | b5a755ef274fa182cd17317208be4cb4dc3896de (patch) | |
tree | d8d087355d53cdcf09c9ee620887913e04f9d91a | |
parent | f3796c748b6fe561797d59307e0671f02eebd391 (diff) | |
download | coreclr-b5a755ef274fa182cd17317208be4cb4dc3896de.tar.gz coreclr-b5a755ef274fa182cd17317208be4cb4dc3896de.tar.bz2 coreclr-b5a755ef274fa182cd17317208be4cb4dc3896de.zip |
Change monitor test (#15727)
Relevant to https://github.com/dotnet/coreclr/issues/15592:
- Not sure what is actually happening, guessing there is an exception during TryEnter() and the exception from Exit() from the finally block is hiding the actual exception
- Moved TryEnter() to before the try block
- Fixed pass/fail condition for some similar monitor tests
10 files changed, 23 insertions, 20 deletions
diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit02.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit02.cs index 2409bc9d23..1e8f4e34ea 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit02.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit02.cs @@ -47,7 +47,7 @@ class Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit04.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit04.cs index 2c8225034a..81603ec0de 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit04.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit04.cs @@ -52,7 +52,7 @@ struct Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit06.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit06.cs index 53cda3220a..235b71cc64 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit06.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit06.cs @@ -50,7 +50,7 @@ class Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit08.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit08.cs index 747a86c420..063cf4e9e9 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit08.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit08.cs @@ -50,7 +50,7 @@ struct Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit10.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit10.cs index b55eaa1d45..e99d50e3ae 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit10.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit10.cs @@ -50,7 +50,7 @@ class Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit12.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit12.cs index b868cd4429..4b7ecaa8e4 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit12.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit12.cs @@ -55,7 +55,7 @@ class Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } diff --git a/tests/src/baseservices/threading/generics/Monitor/EnterExit14.cs b/tests/src/baseservices/threading/generics/Monitor/EnterExit14.cs index f5c3ba3d69..b7b12b1d50 100644 --- a/tests/src/baseservices/threading/generics/Monitor/EnterExit14.cs +++ b/tests/src/baseservices/threading/generics/Monitor/EnterExit14.cs @@ -54,7 +54,7 @@ struct Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } diff --git a/tests/src/baseservices/threading/generics/Monitor/MonitorHelper.cs b/tests/src/baseservices/threading/generics/Monitor/MonitorHelper.cs index 2a46250144..0e25946194 100644 --- a/tests/src/baseservices/threading/generics/Monitor/MonitorHelper.cs +++ b/tests/src/baseservices/threading/generics/Monitor/MonitorHelper.cs @@ -54,7 +54,8 @@ class TestHelper } if(m_iSharedData == m_iRequestedEntries) m_Event.Set(); - } + } + public void Consumer(object monitor) { lock(monitor) @@ -62,19 +63,21 @@ class TestHelper DoWork(); } } - public void ConsumerTryEnter(object monitor,int timeout) + + public void ConsumerTryEnter(object monitor, int timeout) { - try - { - bool tookLock = false; - - Monitor.TryEnter(monitor,timeout, ref tookLock); + bool tookLock = false; - while(!tookLock) { - Thread.Sleep(0); - Monitor.TryEnter(monitor,timeout, ref tookLock); - } + Monitor.TryEnter(monitor, timeout, ref tookLock); + while (!tookLock) + { + Thread.Sleep(0); + Monitor.TryEnter(monitor, timeout, ref tookLock); + } + + try + { DoWork(); } finally diff --git a/tests/src/baseservices/threading/generics/Monitor/TryEnter03.cs b/tests/src/baseservices/threading/generics/Monitor/TryEnter03.cs index 048ebbd99c..4568cdf3c3 100644 --- a/tests/src/baseservices/threading/generics/Monitor/TryEnter03.cs +++ b/tests/src/baseservices/threading/generics/Monitor/TryEnter03.cs @@ -44,7 +44,7 @@ class Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } diff --git a/tests/src/baseservices/threading/generics/Monitor/TryEnter06.cs b/tests/src/baseservices/threading/generics/Monitor/TryEnter06.cs index 426b41a37f..7f83ff7a1d 100644 --- a/tests/src/baseservices/threading/generics/Monitor/TryEnter06.cs +++ b/tests/src/baseservices/threading/generics/Monitor/TryEnter06.cs @@ -44,7 +44,7 @@ struct Gen<T> if(myHelper.Error == true || myHelper2.Error == true) break; } - Test.Eval(!(myHelper.Error && myHelper2.Error)); + Test.Eval(!(myHelper.Error || myHelper2.Error)); } |