Ignore:
Timestamp:
Mar 16, 2008, 6:21:39 AM (14 years ago)
Author:
Peter
Message:

working on #223

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/test/matrix_lookup_test.cc

    r1170 r1240  
    2222*/
    2323
     24#include "Suite.h"
     25
    2426#include "yat/utility/Matrix.h"
    2527#include "yat/classifier/MatrixLookup.h"
     
    3335utility::Matrix matrix(size_t n);
    3436
    35 int main(const int argc,const char* argv[])
     37int main(int argc, char* argv[])
    3638{
    3739  using namespace theplu::yat::classifier;
    3840
    39   std::ostream* error;
    40   if (argc>1 && argv[1]==std::string("-v"))
    41     error = &std::cerr;
    42   else {
    43     error = new std::ofstream("/dev/null");
    44     if (argc>1)
    45       std::cout << "lookup_test -v : for printing extra information\n";
    46   }
    47   bool ok = true;
     41  test::Suite suite(argc, argv);
    4842
    49   *error << "\nTesting MatrixLookup" << std::endl;
    50   *error << "MatrixLookup::MatrixLookup(const utility::Matrix& data)...";
     43  suite.err() << "\nTesting MatrixLookup" << std::endl;
     44  suite.err() << "MatrixLookup::MatrixLookup(const utility::Matrix& data)...";
    5145  utility::Matrix gsl_m1(matrix(2));
    5246  classifier::MatrixLookup m1(gsl_m1);
     
    5448      m1(0,0)!=gsl_m1(0,0) || m1(0,1)!=gsl_m1(0,1) ||
    5549      m1(1,0)!=gsl_m1(1,0) || m1(1,1)!=gsl_m1(1,1) ) {
    56     ok =false;
    57     *error <<   "ERROR:" << std::endl;
     50    suite.add(false);
     51    suite.err() <<  "ERROR:" << std::endl;
    5852  }
    5953  else
    60     *error << "Ok" << std::endl;
     54    suite.err() << "Ok" << std::endl;
    6155
    6256 
    63   *error << "MatrixLookup::MatrixLookup(const utility::Matrix&,\n"
     57  suite.err() << "MatrixLookup::MatrixLookup(const utility::Matrix&,\n"
    6458         << "                           const std::vector<size_t>&,\n"
    6559         << "                           const std::vector<size_t>&)...";
     
    7771      m2(0,0)!=gsl_m2(1,2) || m2(0,1)!=gsl_m2(1,0) ||
    7872      m2(1,0)!=gsl_m2(3,2) || m2(1,1)!=gsl_m2(3,0) ) {
    79     ok =false;
    80     *error <<   "ERROR:" << std::endl;
    81     *error << "rows: " << m2.rows() << " expected 2\n"
     73    suite.add(false);
     74    suite.err() <<  "ERROR:" << std::endl;
     75    suite.err() << "rows: " << m2.rows() << " expected 2\n"
    8276           << "columns: " << m2.columns() << " expected 2\n"
    8377           << "(0,0): " << m2(0,0) << " expected " << gsl_m2(1,2) << "\n"
     
    8781  }
    8882  else
    89     *error << "Ok" << std::endl;
     83    suite.err() << "Ok" << std::endl;
    9084
    91   *error << "MatrixLookup::MatrixLookup(const utility::Matrix&,\n"
     85  suite.err() << "MatrixLookup::MatrixLookup(const utility::Matrix&,\n"
    9286         << "                           const std::vector<size_t>&,\n"
    9387         << "                           const bool)...";
     
    9690  if (m3.rows()!=1 || m3.columns()!=gsl_m2.columns() || m3(0,0)!=gsl_m2(1,0) ||
    9791      m3(0,1)!=gsl_m2(1,1) || m3(0,2)!=gsl_m2(1,2) || m3(0,3)!=gsl_m2(1,3)) {
    98     ok =false;
    99     *error <<   "ERROR:" << std::endl;
    100     *error << "m3.rows(): " << m3.rows() << " expected 1" << std::endl;
    101     *error << "m3.columns(): " << m3.columns() << " expected "
     92    suite.add(false);
     93    suite.err() <<  "ERROR:" << std::endl;
     94    suite.err() << "m3.rows(): " << m3.rows() << " expected 1" << std::endl;
     95    suite.err() << "m3.columns(): " << m3.columns() << " expected "
    10296           << gsl_m2.columns() << std::endl;
    10397  }
    10498  else
    105     *error << "Ok" << std::endl;
     99    suite.err() << "Ok" << std::endl;
    106100
    107   *error << "MatrixLookup::MatrixLookup(const MatrixLookup&)...";
     101  suite.err() << "MatrixLookup::MatrixLookup(const MatrixLookup&)...";
    108102  classifier::MatrixLookup m4(m2);
    109103  if (m4.rows()!=m2.rows() || m4.columns()!=m2.rows() || m4(0,0)!=m2(0,0) ||
    110104      m4(0,1)!=m2(0,1) || m4(1,0)!=m2(1,0) || m4(1,1)!=m2(1,1) ) {
    111     ok =false;
    112     *error <<   "ERROR:" << std::endl;
     105    suite.add(false);
     106    suite.err() <<  "ERROR:" << std::endl;
    113107  }
    114108  else
    115     *error << "Ok" << std::endl;
     109    suite.err() << "Ok" << std::endl;
    116110
    117   *error << "MatrixLookup::MatrixLookup(const MatrixLookup& data\n"
     111  suite.err() << "MatrixLookup::MatrixLookup(const MatrixLookup& data\n"
    118112         << "                           const std::vector<size_t>&,\n"
    119113         << "                           const std::vector<size_t>&)...";
    120114  classifier::MatrixLookup m5(m2,utility::Index(one),utility::Index(one));
    121115  if (m5.rows()!=1 || m5.columns()!=1 || m5(0,0)!=m2(1,1) ) {
    122     ok =false;
    123     *error <<   "ERROR:" << std::endl;
    124     *error << "MatrixLookup is " << m5(0,0) << " expected " << m2(1,1)
     116    suite.add(false);
     117    suite.err() <<  "ERROR:" << std::endl;
     118    suite.err() << "MatrixLookup is " << m5(0,0) << " expected " << m2(1,1)
    125119           << std::endl;
    126120  }
    127121  else
    128     *error << "Ok" << std::endl;
     122    suite.err() << "Ok" << std::endl;
    129123 
    130   *error << "MatrixLookup::MatrixLookup(const MatrixLookup&,\n"
     124  suite.err() << "MatrixLookup::MatrixLookup(const MatrixLookup&,\n"
    131125         << "                           const std::vector<size_t>&,\n"
    132126         << "                           const bool)...";
     
    134128  if (m6.rows()!=1 || m6.columns()!=m2.columns() || m6(0,0)!=m2(1,0) ||
    135129      m6(0,1)!=m2(1,1)) {
    136     ok =false;
    137     *error << "ERROR:" << std::endl;
     130    suite.add(false);
     131    suite.err() << "ERROR:" << std::endl;
    138132  }
    139133  else
    140     *error << "Ok" << std::endl;
     134    suite.err() << "Ok" << std::endl;
    141135
    142   *error << "MatrixLookup::MatrixLookup(const size_t,const size_t,\n"
     136  suite.err() << "MatrixLookup::MatrixLookup(const size_t,const size_t,\n"
    143137         << "                           const double)...";
    144138  classifier::MatrixLookup m7(103,112,12);
    145139  if (m7.rows()!=103 || m7.columns()!=112 || m7(0,0)!=12) {
    146     ok =false;
    147     *error << "ERROR:" << std::endl;
     140    suite.add(false);
     141    suite.err() << "ERROR:" << std::endl;
    148142  }
    149143  else
    150     *error << "Ok" << std::endl;
     144    suite.err() << "Ok" << std::endl;
    151145
    152146
    153   *error << "MatrixLookup::training_data(const std::vector<size_t>)...";
     147  suite.err() << "MatrixLookup::training_data(const std::vector<size_t>)...";
    154148  const classifier::MatrixLookup* TrnData =
    155149    new MatrixLookup(m2, utility::Index(one), false);
    156150  if (TrnData->rows() != m2.rows() || TrnData->columns()!=one.size()){
    157     ok =false;
    158     *error << "ERROR:" << std::endl;
     151    suite.add(false);
     152    suite.err() << "ERROR:" << std::endl;
    159153  }
    160154  else
    161     *error << "Ok" << std::endl;
     155    suite.err() << "Ok" << std::endl;
    162156  delete TrnData;
    163157
    164   *error << "MatrixLookup::validation_data(const std::vector<size_t>,\n"
     158  suite.err() << "MatrixLookup::validation_data(const std::vector<size_t>,\n"
    165159         << "                              const std::vector<size_t>)...";
    166160  std::vector<size_t> val(23,2);
     
    168162    new MatrixLookup(m2, utility::Index(val), false);
    169163  if (ValData->rows() != m2.rows() || TrnData->columns()!=val.size()){
    170     ok =false;
    171     *error << "ERROR:" << std::endl;
     164    suite.add(false);
     165    suite.err() << "ERROR:" << std::endl;
    172166  }
    173167  else
    174     *error << "Ok" << std::endl;
     168    suite.err() << "Ok" << std::endl;
    175169  delete ValData;
    176170
    177   if (ok)
    178     *error << "Test Ok." << std::endl;
    179   if (error!=&std::cerr)
    180     delete error;
    181   return (ok ? 0 : -1);
     171  return suite.return_value();
    182172}
    183173
Note: See TracChangeset for help on using the changeset viewer.