@Test public void testResultsCalculatedOnAvailable() { ConvergenceSummary cs = new ConvergenceSummary(d_results, d_parameters[0]); d_results.makeSamplesAvailable(); double convergence = GelmanRubinConvergence.diagnose(d_results, d_parameters[0]); assertEquals(convergence, cs.getScaleReduction(), 0.0); }
@Test public void testCalculations() { d_results.makeSamplesAvailable(); ConvergenceSummary cs = new ConvergenceSummary(d_results, d_parameters[0]); assertEquals(true, cs.getDefined()); assertEquals( GelmanRubinConvergence.diagnose(d_results, d_parameters[0]), cs.getScaleReduction(), 0.0); }
@Test public void testResultsPreservedOnClear() { d_results.makeSamplesAvailable(); ConvergenceSummary cs = new ConvergenceSummary(d_results, d_parameters[0]); double convergence = GelmanRubinConvergence.diagnose(d_results, d_parameters[0]); d_results.clear(); assertEquals(true, cs.getDefined()); assertEquals(convergence, cs.getScaleReduction(), 0.0); }
@Test public void testPropertyChangeOnAvailable() { ConvergenceSummary cs = new ConvergenceSummary(d_results, d_parameters[0]); final List<String> properties = new ArrayList<String>(); cs.addPropertyChangeListener( new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { properties.add(evt.getPropertyName()); } }); d_results.makeSamplesAvailable(); assertAllAndOnly( Arrays.asList(new String[] {Summary.PROPERTY_DEFINED, ConvergenceSummary.PROPERTY_PSRF}), properties); }
@Test public void testWithUninitializedResults() { ConvergenceSummary x = new ConvergenceSummary(new YadasResults(), d_parameters[0]); assertFalse(x.getDefined()); }
@Test public void testCreation() { ConvergenceSummary cs = new ConvergenceSummary(d_results, d_parameters[0]); assertEquals(false, cs.getDefined()); }