[ 
https://issues.apache.org/jira/browse/RNG-115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alex D Herbert resolved RNG-115.
--------------------------------
    Fix Version/s: 1.3
       Resolution: Implemented

In master.

> JDKRandom to allow restore state when saved from a different instance
> ---------------------------------------------------------------------
>
>                 Key: RNG-115
>                 URL: https://issues.apache.org/jira/browse/RNG-115
>             Project: Commons RNG
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.2
>            Reporter: Alex D Herbert
>            Assignee: Alex D Herbert
>            Priority: Minor
>             Fix For: 1.3
>
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Currently the size of the serialized state of the java.util.Random used by 
> JDKRandom is saved to the instance when the state is saved. Thus the state 
> cannot be used to restore a different instance of the same class. This breaks 
> the contract of the RestorableUniformRandomProvider as the state should be 
> applicable to a different instance of the same class.
> Fix this test to work:
> {code:java}
> @Test
> public void testRestoreToNewInstance()  {
>     final long seed = 8796746234L;
>     final JDKRandom rng1 = new JDKRandom(seed);
>     final JDKRandom rng2 = new JDKRandom(seed + 1);
>     final RandomProviderState state = rng1.saveState();
>     rng2.restoreState(state);
>     final int numRepeats = 1000;
>     for (int r = 0; r < numRepeats; r++) {
>         Assert.assertEquals(r + " nextInt", rng1.nextInt(), rng2.nextInt());
>     }
> }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to