Author: billbarker Date: Mon Jun 1 00:47:02 2009 New Revision: 780541 URL: http://svn.apache.org/viewvc?rev=780541&view=rev Log: Serialization changes for stats
Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/Frequency.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractStorelessUnivariateStatistic.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractUnivariateStatistic.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AggregateSummaryStatistics.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/UnivariateStatistic.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/FirstMoment.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/GeometricMean.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/Kurtosis.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialCovariance.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialMean.java commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/rank/Max.java commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastCosineTransformer.java commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastHadamardTransformer.java commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastSineTransformer.java commons/proper/math/trunk/src/java/org/apache/commons/math/transform/RealTransformer.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/FrequencyTest.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/DescriptiveStatisticsTest.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/MultivariateSummaryStatisticsTest.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/StorelessUnivariateStatisticAbstractTest.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialCovarianceTest.java commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialMeanTest.java Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/Frequency.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/Frequency.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/Frequency.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/Frequency.java Mon Jun 1 00:47:02 2009 @@ -498,4 +498,36 @@ return ((Comparable<Object>)o1).compareTo(o2); } } + + /* (non-Javadoc) + * @see java.lang.Object#hashCode() + */ + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((freqTable == null) ? 0 : freqTable.hashCode()); + return result; + } + + /* (non-Javadoc) + * @see java.lang.Object#equals(java.lang.Object) + */ + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (!(obj instanceof Frequency)) + return false; + Frequency other = (Frequency) obj; + if (freqTable == null) { + if (other.freqTable != null) + return false; + } else if (!freqTable.equals(other.freqTable)) + return false; + return true; + } } Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractStorelessUnivariateStatistic.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractStorelessUnivariateStatistic.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractStorelessUnivariateStatistic.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractStorelessUnivariateStatistic.java Mon Jun 1 00:47:02 2009 @@ -33,10 +33,7 @@ */ public abstract class AbstractStorelessUnivariateStatistic extends AbstractUnivariateStatistic - implements StorelessUnivariateStatistic, Serializable { - - /** Serialization UID */ - private static final long serialVersionUID = -44915725420072521L; + implements StorelessUnivariateStatistic { /** * This default implementation calls {...@link #clear}, then invokes Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractUnivariateStatistic.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractUnivariateStatistic.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractUnivariateStatistic.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AbstractUnivariateStatistic.java Mon Jun 1 00:47:02 2009 @@ -16,8 +16,6 @@ */ package org.apache.commons.math.stat.descriptive; -import java.io.Serializable; - import org.apache.commons.math.MathRuntimeException; /** @@ -34,10 +32,7 @@ * @version $Revision$ $Date$ */ public abstract class AbstractUnivariateStatistic - implements UnivariateStatistic, Serializable { - - /** Serialization UID */ - private static final long serialVersionUID = -8007759382851708045L; + implements UnivariateStatistic { /** * {...@inheritdoc} Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AggregateSummaryStatistics.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AggregateSummaryStatistics.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AggregateSummaryStatistics.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/AggregateSummaryStatistics.java Mon Jun 1 00:47:02 2009 @@ -41,10 +41,9 @@ public class AggregateSummaryStatistics implements StatisticalSummary, Serializable { - /** - * The serialization version of this class - */ - private static final long serialVersionUID = 1L; + + /** Serializable version identifier */ + private static final long serialVersionUID = -8207112444016386906L; /** * A SummaryStatistics serving as a prototype for creating SummaryStatistics Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/UnivariateStatistic.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/UnivariateStatistic.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/UnivariateStatistic.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/UnivariateStatistic.java Mon Jun 1 00:47:02 2009 @@ -16,14 +16,13 @@ */ package org.apache.commons.math.stat.descriptive; -import java.io.Serializable; /** * Base interface implemented by all statistics. * * @version $Revision$ $Date$ */ -public interface UnivariateStatistic extends Serializable { +public interface UnivariateStatistic { /** * Returns the result of evaluating the statistic over the input array. Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/FirstMoment.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/FirstMoment.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/FirstMoment.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/FirstMoment.java Mon Jun 1 00:47:02 2009 @@ -48,7 +48,8 @@ implements Serializable { /** Serializable version identifier */ - private static final long serialVersionUID = -803343206421984070L; + private static final long serialVersionUID = 6112755307178490473L; + /** Count of values that have been added */ protected long n; Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/GeometricMean.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/GeometricMean.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/GeometricMean.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/GeometricMean.java Mon Jun 1 00:47:02 2009 @@ -16,6 +16,8 @@ */ package org.apache.commons.math.stat.descriptive.moment; +import java.io.Serializable; + import org.apache.commons.math.MathRuntimeException; import org.apache.commons.math.stat.descriptive.AbstractStorelessUnivariateStatistic; import org.apache.commons.math.stat.descriptive.StorelessUnivariateStatistic; @@ -45,7 +47,7 @@ * * @version $Revision$ $Date$ */ -public class GeometricMean extends AbstractStorelessUnivariateStatistic { +public class GeometricMean extends AbstractStorelessUnivariateStatistic implements Serializable { /** Serializable version identifier */ private static final long serialVersionUID = -8178734905303459453L; Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/Kurtosis.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/Kurtosis.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/Kurtosis.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/Kurtosis.java Mon Jun 1 00:47:02 2009 @@ -16,6 +16,8 @@ */ package org.apache.commons.math.stat.descriptive.moment; +import java.io.Serializable; + import org.apache.commons.math.MathRuntimeException; import org.apache.commons.math.stat.descriptive.AbstractStorelessUnivariateStatistic; @@ -40,7 +42,7 @@ * * @version $Revision$ $Date$ */ -public class Kurtosis extends AbstractStorelessUnivariateStatistic { +public class Kurtosis extends AbstractStorelessUnivariateStatistic implements Serializable { /** Serializable version identifier */ private static final long serialVersionUID = 2784465764798260919L; Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialCovariance.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialCovariance.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialCovariance.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialCovariance.java Mon Jun 1 00:47:02 2009 @@ -118,4 +118,37 @@ Arrays.fill(productsSums, 0.0); } + /** @inheritDoc{} */ + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + (isBiasCorrected ? 1231 : 1237); + result = prime * result + (int) (n ^ (n >>> 32)); + result = prime * result + Arrays.hashCode(productsSums); + result = prime * result + Arrays.hashCode(sums); + return result; + } + + /** @inheritDoc{} */ + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (!(obj instanceof VectorialCovariance)) + return false; + VectorialCovariance other = (VectorialCovariance) obj; + if (isBiasCorrected != other.isBiasCorrected) + return false; + if (n != other.n) + return false; + if (!Arrays.equals(productsSums, other.productsSums)) + return false; + if (!Arrays.equals(sums, other.sums)) + return false; + return true; + } + } \ No newline at end of file Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialMean.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialMean.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialMean.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/moment/VectorialMean.java Mon Jun 1 00:47:02 2009 @@ -17,6 +17,7 @@ package org.apache.commons.math.stat.descriptive.moment; import java.io.Serializable; +import java.util.Arrays; import org.apache.commons.math.DimensionMismatchException; @@ -77,4 +78,28 @@ return (means.length == 0) ? 0 : means[0].getN(); } + /* @inheritDocs{} */ + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + Arrays.hashCode(means); + return result; + } + + /* @inheritDocs{} */ + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (!(obj instanceof VectorialMean)) + return false; + VectorialMean other = (VectorialMean) obj; + if (!Arrays.equals(means, other.means)) + return false; + return true; + } + } \ No newline at end of file Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/rank/Max.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/rank/Max.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/rank/Max.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/stat/descriptive/rank/Max.java Mon Jun 1 00:47:02 2009 @@ -16,6 +16,8 @@ */ package org.apache.commons.math.stat.descriptive.rank; +import java.io.Serializable; + import org.apache.commons.math.stat.descriptive.AbstractStorelessUnivariateStatistic; /** @@ -35,7 +37,7 @@ * * @version $Revision$ $Date$ */ -public class Max extends AbstractStorelessUnivariateStatistic { +public class Max extends AbstractStorelessUnivariateStatistic implements Serializable { /** Serializable version identifier */ private static final long serialVersionUID = -5593383832225844641L; Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastCosineTransformer.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastCosineTransformer.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastCosineTransformer.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastCosineTransformer.java Mon Jun 1 00:47:02 2009 @@ -33,15 +33,13 @@ * Different from FFT and FST, FCT requires the length of data set to be * power of 2 plus one. Users should especially pay attention to the * function transformation on how this affects the sampling.</p> + * <p>As of version 2.0 this no longer implements Serializable</p> * * @version $Revision:670469 $ $Date:2008-06-23 10:01:38 +0200 (lun., 23 juin 2008) $ * @since 1.2 */ public class FastCosineTransformer implements RealTransformer { - /** serializable version identifier */ - private static final long serialVersionUID = -831323620109865380L; - /** * Construct a default transformer. */ Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastHadamardTransformer.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastHadamardTransformer.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastHadamardTransformer.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastHadamardTransformer.java Mon Jun 1 00:47:02 2009 @@ -33,9 +33,6 @@ */ public class FastHadamardTransformer implements RealTransformer { - /** Serializable version identifier. */ - private static final long serialVersionUID = -720498949613305350L; - /** {...@inheritdoc} */ public double[] transform(double f[]) throws IllegalArgumentException { Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastSineTransformer.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastSineTransformer.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastSineTransformer.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/transform/FastSineTransformer.java Mon Jun 1 00:47:02 2009 @@ -33,15 +33,13 @@ * Similar to FFT, we also require the length of data set to be power of 2. * In addition, the first element must be 0 and it's enforced in function * transformation after sampling.</p> - * + * <p>As of version 2.0 this no longer implements Serializable</p> + * * @version $Revision$ $Date$ * @since 1.2 */ public class FastSineTransformer implements RealTransformer { - /** serializable version identifier */ - private static final long serialVersionUID = -7557024407476823001L; - /** * Construct a default transformer. */ Modified: commons/proper/math/trunk/src/java/org/apache/commons/math/transform/RealTransformer.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/transform/RealTransformer.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/java/org/apache/commons/math/transform/RealTransformer.java (original) +++ commons/proper/math/trunk/src/java/org/apache/commons/math/transform/RealTransformer.java Mon Jun 1 00:47:02 2009 @@ -16,8 +16,6 @@ */ package org.apache.commons.math.transform; -import java.io.Serializable; - import org.apache.commons.math.FunctionEvaluationException; import org.apache.commons.math.analysis.UnivariateRealFunction; import org.apache.commons.math.complex.Complex; @@ -34,7 +32,7 @@ * @version $Revision$ $Date$ * @since 2.0 */ -public interface RealTransformer extends Serializable { +public interface RealTransformer { /** * Transform the given real data set. Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/FrequencyTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/FrequencyTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/FrequencyTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/FrequencyTest.java Mon Jun 1 00:47:02 2009 @@ -267,5 +267,13 @@ assertTrue(it.next() instanceof Long); } } + + public void testSerial() { + f.addValue(oneL); + f.addValue(twoL); + f.addValue(oneI); + f.addValue(twoI); + assertEquals(f, TestUtils.serializeAndRecover(f)); + } } Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/DescriptiveStatisticsTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/DescriptiveStatisticsTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/DescriptiveStatisticsTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/DescriptiveStatisticsTest.java Mon Jun 1 00:47:02 2009 @@ -107,7 +107,6 @@ * A new way to compute the mean */ static class deepMean implements UnivariateStatistic { - private static final long serialVersionUID = 9108665370122541953L; public double evaluate(double[] values, int begin, int length) { return 42; @@ -125,7 +124,6 @@ * Test percentile implementation - wraps a Percentile */ static class goodPercentile implements UnivariateStatistic { - private static final long serialVersionUID = 801005145532790795L; private Percentile percentile = new Percentile(); public void setQuantile(double quantile) { percentile.setQuantile(quantile); @@ -168,7 +166,6 @@ * "Bad" test percentile implementation - no setQuantile */ static class badPercentile implements UnivariateStatistic { - private static final long serialVersionUID = -707437653388052183L; private Percentile percentile = new Percentile(); public double evaluate(double[] values, int begin, int length) { return percentile.evaluate(values, begin, length); Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/MultivariateSummaryStatisticsTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/MultivariateSummaryStatisticsTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/MultivariateSummaryStatisticsTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/MultivariateSummaryStatisticsTest.java Mon Jun 1 00:47:02 2009 @@ -86,7 +86,6 @@ * Returns the sum instead of the mean. */ static class sumMean implements StorelessUnivariateStatistic { - private static final long serialVersionUID = 6492471391340853423L; private double sum = 0; private long n = 0; public double evaluate(double[] values, int begin, int length) { Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/StorelessUnivariateStatisticAbstractTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/StorelessUnivariateStatisticAbstractTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/StorelessUnivariateStatisticAbstractTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/StorelessUnivariateStatisticAbstractTest.java Mon Jun 1 00:47:02 2009 @@ -202,4 +202,9 @@ assertTrue(master.equals(replica)); } + public void testSerial() { + StorelessUnivariateStatistic s = + (StorelessUnivariateStatistic) getUnivariateStatistic(); + assertEquals(s, TestUtils.serializeAndRecover(s)); + } } Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialCovarianceTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialCovarianceTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialCovarianceTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialCovarianceTest.java Mon Jun 1 00:47:02 2009 @@ -18,6 +18,7 @@ package org.apache.commons.math.stat.descriptive.moment; import org.apache.commons.math.DimensionMismatchException; +import org.apache.commons.math.TestUtils; import org.apache.commons.math.linear.RealMatrix; import junit.framework.Test; @@ -78,6 +79,11 @@ } + public void testSerial(){ + VectorialCovariance stat = new VectorialCovariance(points[0].length, true); + assertEquals(stat, TestUtils.serializeAndRecover(stat)); + } + @Override public void setUp() { points = new double[][] { Modified: commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialMeanTest.java URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialMeanTest.java?rev=780541&r1=780540&r2=780541&view=diff ============================================================================== --- commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialMeanTest.java (original) +++ commons/proper/math/trunk/src/test/org/apache/commons/math/stat/descriptive/moment/VectorialMeanTest.java Mon Jun 1 00:47:02 2009 @@ -18,6 +18,7 @@ package org.apache.commons.math.stat.descriptive.moment; import org.apache.commons.math.DimensionMismatchException; +import org.apache.commons.math.TestUtils; import junit.framework.Test; import junit.framework.TestCase; @@ -70,6 +71,13 @@ } + public void testSerial() throws DimensionMismatchException { + VectorialMean stat = new VectorialMean(points[0].length); + for (int i = 0; i < points.length; ++i) { + stat.increment(points[i]); + } + assertEquals(stat, TestUtils.serializeAndRecover(stat)); + } @Override public void setUp() { points = new double[][] {