ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/ThreadLocalRandomTest.java
(Generate patch)

Comparing jsr166/src/test/tck/ThreadLocalRandomTest.java (file contents):
Revision 1.26 by jsr166, Tue Oct 3 22:27:04 2017 UTC vs.
Revision 1.28 by jsr166, Sun Jan 7 22:59:18 2018 UTC

# Line 355 | Line 355 | public class ThreadLocalRandomTest exten
355          // Don't use main thread's ThreadLocalRandom - it is likely to
356          // be polluted by previous tests.
357          final AtomicReference<ThreadLocalRandom> threadLocalRandom =
358 <            new AtomicReference<ThreadLocalRandom>();
358 >            new AtomicReference<>();
359          final AtomicLong rand = new AtomicLong();
360  
361          long firstRand = 0;
# Line 390 | Line 390 | public class ThreadLocalRandomTest exten
390       */
391      public void testNextBytes() {
392          ThreadLocalRandom rnd = ThreadLocalRandom.current();
393 <        int n = rnd.nextInt(20);
393 >        int n = rnd.nextInt(1, 20);
394          byte[] bytes = new byte[n];
395          outer:
396          for (int i = 0; i < n; i++) {
# Line 405 | Line 405 | public class ThreadLocalRandomTest exten
405          }
406      }
407  
408 +    /**
409 +     * Filling an empty array with random bytes succeeds without effect.
410 +     */
411 +    public void testNextBytes_emptyArray() {
412 +        ThreadLocalRandom.current().nextBytes(new byte[0]);
413 +    }
414 +
415 +    public void testNextBytes_nullArray() {
416 +        try {
417 +            ThreadLocalRandom.current().nextBytes(null);
418 +            shouldThrow();
419 +        } catch (NullPointerException success) {}
420 +    }
421 +
422   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines