Ignore:
Timestamp:
Apr 15, 2010, 3:05:18 PM (16 years ago)
Author:
Frederik Heber <heber@…>
Children:
ce0de8
Parents:
e34098
Message:

BUGFIX: Extended AverageColumnsUnitTest, found one bug in AverageColumns.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • util/src/unittests/AverageColumnsUnitTest.cpp

    re34098 r37ec1b  
    1111#include <cppunit/extensions/TestFactoryRegistry.h>
    1212#include <cppunit/ui/text/TestRunner.h>
     13
     14#include <math.h>
    1315
    1416#include "../average.hpp"
     
    3638/** UnitTest for calculations in AverageColumns().
    3739 */
    38 void AverageColumnsTest::CalculationsTest()
     40void AverageColumnsTest::SimpleCalculationsTest()
    3941{
    40   // fill stream
    4142  input.str("1\n1\n1\n");
    4243  Columns.insert(0);
     
    4748  CPPUNIT_ASSERT_EQUAL( 1., mean );
    4849  CPPUNIT_ASSERT_EQUAL( 0., dev );
    49 };
     50}
     51
     52/** UnitTest for some real calculations in AverageColumns().
     53 */
     54void AverageColumnsTest::CalculationsTest()
     55{
     56  MeanErrorMap::iterator Runner;
     57  input.clear();
     58  input.str("1.\t1.\n2.\t3.\n3.\t5.\n");
     59  Columns.insert(0);
     60  Columns.insert(1);
     61  Results = AverageColumns(input, Columns);
     62  Runner = Results->begin();
     63  CPPUNIT_ASSERT ( Runner != Results->end() );
     64  CPPUNIT_ASSERT_EQUAL( 2., (*Runner).second.first );
     65  CPPUNIT_ASSERT_EQUAL( sqrt(2)/3., (*Runner).second.second );
     66  Runner++;
     67  CPPUNIT_ASSERT ( Runner != Results->end() );
     68  CPPUNIT_ASSERT_EQUAL( 3., (*Runner).second.first );
     69  CPPUNIT_ASSERT_EQUAL( sqrt(8.)/3., (*Runner).second.second );
     70}
    5071
    5172/** UnitTest for too few columns in AverageColumns().
Note: See TracChangeset for help on using the changeset viewer.