Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
stat_utils_test.cc File Reference

Comprehensive tests for stat_utils.H. More...

#include <gtest/gtest.h>
#include <vector>
#include <array>
#include <list>
#include <cmath>
#include <stat_utils.H>
Include dependency graph for stat_utils_test.cc:

Go to the source code of this file.

Functions

 TEST (SumTest, EmptyVector)
 
 TEST (SumTest, SingleElement)
 
 TEST (SumTest, MultipleElements)
 
 TEST (SumTest, NegativeNumbers)
 
 TEST (SumTest, IntegerVector)
 
 TEST (MeanTest, EmptyContainerThrows)
 
 TEST (MeanTest, SingleElement)
 
 TEST (MeanTest, MultipleElements)
 
 TEST (MeanTest, NegativeNumbers)
 
 TEST (MeanTest, WithList)
 
 TEST (VarianceTest, EmptyContainerThrows)
 
 TEST (VarianceTest, SingleElementThrows)
 
 TEST (VarianceTest, SingleElementPopulation)
 
 TEST (VarianceTest, TwoElements)
 
 TEST (VarianceTest, SampleVsPopulation)
 
 TEST (VarianceTest, ConstantValues)
 
 TEST (VarianceTest, NumericalStability)
 
 TEST (StddevTest, Basic)
 
 TEST (StddevTest, IsSquareRootOfVariance)
 
 TEST (MinMaxTest, EmptyContainerThrows)
 
 TEST (MinMaxTest, SingleElement)
 
 TEST (MinMaxTest, MultipleElements)
 
 TEST (MinMaxTest, NegativeNumbers)
 
 TEST (PercentileTest, EmptyContainerThrows)
 
 TEST (PercentileTest, OutOfRangeThrows)
 
 TEST (PercentileTest, Percentile0)
 
 TEST (PercentileTest, Percentile100)
 
 TEST (PercentileTest, Percentile50IsMedian)
 
 TEST (PercentileTest, UnsortedInput)
 
 TEST (MedianTest, EmptyContainerThrows)
 
 TEST (MedianTest, SingleElement)
 
 TEST (MedianTest, OddCount)
 
 TEST (MedianTest, EvenCount)
 
 TEST (MedianTest, UnsortedData)
 
 TEST (QuartilesTest, Basic)
 
 TEST (IqrTest, Basic)
 
 TEST (ModeTest, EmptyContainerThrows)
 
 TEST (ModeTest, SingleElement)
 
 TEST (ModeTest, AllDifferent)
 
 TEST (ModeTest, ClearMode)
 
 TEST (ModeTest, Multimodal)
 
 TEST (ModeTest, NotMultimodal)
 
 TEST (SkewnessTest, TooFewElementsThrows)
 
 TEST (SkewnessTest, SymmetricDistribution)
 
 TEST (SkewnessTest, RightSkewed)
 
 TEST (SkewnessTest, LeftSkewed)
 
 TEST (SkewnessTest, ConstantValues)
 
 TEST (KurtosisTest, TooFewElementsThrows)
 
 TEST (KurtosisTest, UniformDistribution)
 
 TEST (KurtosisTest, ConstantValues)
 
 TEST (CoefficientOfVariationTest, ZeroMeanThrows)
 
 TEST (CoefficientOfVariationTest, Basic)
 
 TEST (CoefficientOfVariationTest, PositiveValue)
 
 TEST (CovarianceTest, DifferentSizesThrows)
 
 TEST (CovarianceTest, TooFewElementsThrows)
 
 TEST (CovarianceTest, PerfectPositive)
 
 TEST (CovarianceTest, PerfectNegative)
 
 TEST (CovarianceTest, NoCorrelation)
 
 TEST (CorrelationTest, PerfectPositive)
 
 TEST (CorrelationTest, PerfectNegative)
 
 TEST (CorrelationTest, ZeroVarianceThrows)
 
 TEST (CorrelationTest, PartialCorrelation)
 
 TEST (HistogramTest, ZeroBinsThrows)
 
 TEST (HistogramTest, EmptyContainerThrows)
 
 TEST (HistogramTest, SingleBin)
 
 TEST (HistogramTest, MultipleBins)
 
 TEST (HistogramTest, ConstantValues)
 
 TEST (StatsTest, DefaultConstruction)
 
 TEST (StatsTest, RangeMethod)
 
 TEST (ComputeAllStatsTest, EmptyContainer)
 
 TEST (ComputeAllStatsTest, SingleElement)
 
 TEST (ComputeAllStatsTest, MultipleElements)
 
 TEST (ComputeAllStatsTest, QuartilesComputed)
 
 TEST (ComputeAllStatsTest, HigherMomentsComputed)
 
 TEST (LegacyComputeStatsTest, ArrayVersion)
 
 TEST (LegacyComputeStatsTest, ArrayWithOffset)
 
 TEST (LegacyComputeStatsTest, ContainerVersion)
 
 TEST (LegacyComputeStatsTest, EvenCount)
 
 TEST (LegacyComputeStatsTest, EmptyRange)
 
 TEST (EdgeCaseTest, VeryLargeNumbers)
 
 TEST (EdgeCaseTest, VerySmallNumbers)
 
 TEST (EdgeCaseTest, MixedSigns)
 
 TEST (ContainerTest, WorksWithArray)
 
 TEST (ContainerTest, WorksWithList)
 
 TEST (ContainerTest, WorksWithDynArray)
 
 TEST (TypeTest, WorksWithInt)
 
 TEST (TypeTest, WorksWithFloat)
 
int main (int argc, char **argv)
 

Detailed Description

Comprehensive tests for stat_utils.H.

Definition in file stat_utils_test.cc.

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 793 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp().

◆ TEST() [1/87]

TEST ( CoefficientOfVariationTest  ,
Basic   
)

◆ TEST() [2/87]

TEST ( CoefficientOfVariationTest  ,
PositiveValue   
)

◆ TEST() [3/87]

TEST ( CoefficientOfVariationTest  ,
ZeroMeanThrows   
)

◆ TEST() [4/87]

TEST ( ComputeAllStatsTest  ,
EmptyContainer   
)

◆ TEST() [5/87]

TEST ( ComputeAllStatsTest  ,
HigherMomentsComputed   
)

◆ TEST() [6/87]

TEST ( ComputeAllStatsTest  ,
MultipleElements   
)

◆ TEST() [7/87]

TEST ( ComputeAllStatsTest  ,
QuartilesComputed   
)

◆ TEST() [8/87]

TEST ( ComputeAllStatsTest  ,
SingleElement   
)

◆ TEST() [9/87]

TEST ( ContainerTest  ,
WorksWithArray   
)

◆ TEST() [10/87]

TEST ( ContainerTest  ,
WorksWithDynArray   
)

◆ TEST() [11/87]

TEST ( ContainerTest  ,
WorksWithList   
)

◆ TEST() [12/87]

TEST ( CorrelationTest  ,
PartialCorrelation   
)

◆ TEST() [13/87]

TEST ( CorrelationTest  ,
PerfectNegative   
)

◆ TEST() [14/87]

TEST ( CorrelationTest  ,
PerfectPositive   
)

◆ TEST() [15/87]

TEST ( CorrelationTest  ,
ZeroVarianceThrows   
)

◆ TEST() [16/87]

TEST ( CovarianceTest  ,
DifferentSizesThrows   
)

◆ TEST() [17/87]

TEST ( CovarianceTest  ,
NoCorrelation   
)

◆ TEST() [18/87]

TEST ( CovarianceTest  ,
PerfectNegative   
)

◆ TEST() [19/87]

TEST ( CovarianceTest  ,
PerfectPositive   
)

◆ TEST() [20/87]

TEST ( CovarianceTest  ,
TooFewElementsThrows   
)

◆ TEST() [21/87]

TEST ( EdgeCaseTest  ,
MixedSigns   
)

◆ TEST() [22/87]

TEST ( EdgeCaseTest  ,
VeryLargeNumbers   
)

◆ TEST() [23/87]

TEST ( EdgeCaseTest  ,
VerySmallNumbers   
)

◆ TEST() [24/87]

TEST ( HistogramTest  ,
ConstantValues   
)

◆ TEST() [25/87]

TEST ( HistogramTest  ,
EmptyContainerThrows   
)

◆ TEST() [26/87]

TEST ( HistogramTest  ,
MultipleBins   
)

◆ TEST() [27/87]

TEST ( HistogramTest  ,
SingleBin   
)

◆ TEST() [28/87]

TEST ( HistogramTest  ,
ZeroBinsThrows   
)

◆ TEST() [29/87]

TEST ( IqrTest  ,
Basic   
)

◆ TEST() [30/87]

TEST ( KurtosisTest  ,
ConstantValues   
)

◆ TEST() [31/87]

TEST ( KurtosisTest  ,
TooFewElementsThrows   
)

◆ TEST() [32/87]

TEST ( KurtosisTest  ,
UniformDistribution   
)

◆ TEST() [33/87]

TEST ( LegacyComputeStatsTest  ,
ArrayVersion   
)

◆ TEST() [34/87]

TEST ( LegacyComputeStatsTest  ,
ArrayWithOffset   
)

◆ TEST() [35/87]

TEST ( LegacyComputeStatsTest  ,
ContainerVersion   
)

◆ TEST() [36/87]

TEST ( LegacyComputeStatsTest  ,
EmptyRange   
)

◆ TEST() [37/87]

TEST ( LegacyComputeStatsTest  ,
EvenCount   
)

◆ TEST() [38/87]

TEST ( MeanTest  ,
EmptyContainerThrows   
)

Definition at line 86 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mean().

◆ TEST() [39/87]

TEST ( MeanTest  ,
MultipleElements   
)

Definition at line 98 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mean().

◆ TEST() [40/87]

TEST ( MeanTest  ,
NegativeNumbers   
)

Definition at line 104 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mean().

◆ TEST() [41/87]

TEST ( MeanTest  ,
SingleElement   
)

Definition at line 92 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mean().

◆ TEST() [42/87]

TEST ( MeanTest  ,
WithList   
)

Definition at line 110 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), l, and Aleph::mean().

◆ TEST() [43/87]

TEST ( MedianTest  ,
EmptyContainerThrows   
)

◆ TEST() [44/87]

TEST ( MedianTest  ,
EvenCount   
)

◆ TEST() [45/87]

TEST ( MedianTest  ,
OddCount   
)

◆ TEST() [46/87]

TEST ( MedianTest  ,
SingleElement   
)

◆ TEST() [47/87]

TEST ( MedianTest  ,
UnsortedData   
)

◆ TEST() [48/87]

TEST ( MinMaxTest  ,
EmptyContainerThrows   
)

◆ TEST() [49/87]

TEST ( MinMaxTest  ,
MultipleElements   
)

◆ TEST() [50/87]

TEST ( MinMaxTest  ,
NegativeNumbers   
)

◆ TEST() [51/87]

TEST ( MinMaxTest  ,
SingleElement   
)

◆ TEST() [52/87]

TEST ( ModeTest  ,
AllDifferent   
)

◆ TEST() [53/87]

TEST ( ModeTest  ,
ClearMode   
)

Definition at line 344 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mode().

◆ TEST() [54/87]

TEST ( ModeTest  ,
EmptyContainerThrows   
)

Definition at line 324 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mode().

◆ TEST() [55/87]

TEST ( ModeTest  ,
Multimodal   
)

◆ TEST() [56/87]

TEST ( ModeTest  ,
NotMultimodal   
)

◆ TEST() [57/87]

TEST ( ModeTest  ,
SingleElement   
)

Definition at line 330 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mode().

◆ TEST() [58/87]

TEST ( PercentileTest  ,
EmptyContainerThrows   
)

◆ TEST() [59/87]

TEST ( PercentileTest  ,
OutOfRangeThrows   
)

◆ TEST() [60/87]

TEST ( PercentileTest  ,
Percentile0   
)

◆ TEST() [61/87]

TEST ( PercentileTest  ,
Percentile100   
)

◆ TEST() [62/87]

TEST ( PercentileTest  ,
Percentile50IsMedian   
)

◆ TEST() [63/87]

TEST ( PercentileTest  ,
UnsortedInput   
)

◆ TEST() [64/87]

TEST ( QuartilesTest  ,
Basic   
)

◆ TEST() [65/87]

TEST ( SkewnessTest  ,
ConstantValues   
)

◆ TEST() [66/87]

TEST ( SkewnessTest  ,
LeftSkewed   
)

◆ TEST() [67/87]

TEST ( SkewnessTest  ,
RightSkewed   
)

◆ TEST() [68/87]

TEST ( SkewnessTest  ,
SymmetricDistribution   
)

◆ TEST() [69/87]

TEST ( SkewnessTest  ,
TooFewElementsThrows   
)

◆ TEST() [70/87]

TEST ( StatsTest  ,
DefaultConstruction   
)

◆ TEST() [71/87]

TEST ( StatsTest  ,
RangeMethod   
)

◆ TEST() [72/87]

TEST ( StddevTest  ,
Basic   
)

◆ TEST() [73/87]

TEST ( StddevTest  ,
IsSquareRootOfVariance   
)

◆ TEST() [74/87]

TEST ( SumTest  ,
EmptyVector   
)

Definition at line 52 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::sum().

◆ TEST() [75/87]

TEST ( SumTest  ,
IntegerVector   
)

Definition at line 76 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::sum().

◆ TEST() [76/87]

TEST ( SumTest  ,
MultipleElements   
)

Definition at line 64 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::sum().

◆ TEST() [77/87]

TEST ( SumTest  ,
NegativeNumbers   
)

Definition at line 70 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::sum().

◆ TEST() [78/87]

TEST ( SumTest  ,
SingleElement   
)

Definition at line 58 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::sum().

◆ TEST() [79/87]

TEST ( TypeTest  ,
WorksWithFloat   
)

Definition at line 787 of file stat_utils_test.cc.

References Aleph::divide_and_conquer_partition_dp(), and Aleph::mean().

◆ TEST() [80/87]

TEST ( TypeTest  ,
WorksWithInt   
)

◆ TEST() [81/87]

TEST ( VarianceTest  ,
ConstantValues   
)

◆ TEST() [82/87]

TEST ( VarianceTest  ,
EmptyContainerThrows   
)

◆ TEST() [83/87]

TEST ( VarianceTest  ,
NumericalStability   
)

◆ TEST() [84/87]

TEST ( VarianceTest  ,
SampleVsPopulation   
)

◆ TEST() [85/87]

TEST ( VarianceTest  ,
SingleElementPopulation   
)

◆ TEST() [86/87]

TEST ( VarianceTest  ,
SingleElementThrows   
)

◆ TEST() [87/87]

TEST ( VarianceTest  ,
TwoElements   
)