The test hangs when it fails because the main thread is waiting for the checker thread to finish checking the result but the checker thread terminates with an exception without informing the main thread about its termination.
Exception in thread "Checker thread" java.lang.RuntimeException: Notif Count = 2 expected to be 1
at CollectionUsageThreshold$Checker.checkResult(CollectionUsageThreshold.java:213)
at CollectionUsageThreshold$Checker.run(CollectionUsageThreshold.java:200)
The test should be fixed to exit gracefully.