Changeset 693 for library/tests
- Timestamp:
- 11/02/09 17:27:29 (15 years ago)
- Location:
- library/tests
- Files:
-
- 11 modified
- 4 moved
Legend:
- Unmodified
- Added
- Removed
-
library/tests/CMakeLists.txt
r691 r693 8 8 9 9 SET(testutil_src epdf_harness.cpp epdf_harness.h mat_checks.cpp mat_checks.h 10 mpdf_harness.cpp mpdf_harness.h square_mat_point.cpp square_mat_point.h test_util.cpp test_util.h)10 pdf_harness.cpp pdf_harness.h square_mat_point.cpp square_mat_point.h test_util.cpp test_util.h) 11 11 12 12 add_library(testutil ${testutil_src}) … … 41 41 # using UnitTest++ 42 42 43 SET(unit_test_configurations mepdf.cfg egiw.cfg mlnorm.cfg edirich.cfg mprod.cfg generator.cfg epdfds.cfg mpdfds.cfg test_user_info_input.cfg merger.cfg erroneous.cfg egamma.cfg test_user_info_external.cfg merger_error.cfg mgamma.cfg enorm.cfg)43 SET(unit_test_configurations mepdf.cfg egiw.cfg mlnorm.cfg edirich.cfg mprod.cfg generator.cfg epdfds.cfg pdfds.cfg test_user_info_input.cfg merger.cfg erroneous.cfg egamma.cfg test_user_info_external.cfg merger_error.cfg mgamma.cfg enorm.cfg) 44 44 45 45 add_executable(testsuite arx_straux_test.cpp datalink_test.cpp datasource_test.cpp egiw_test.cpp emix_test.cpp epdf_test.cpp logger_test.cpp LQG_test.cpp merger_test.cpp 46 mpdf_test.cpp randun_test.cpp rectangular_support_test.cpp rv_test.cpp shared_ptr_test.cpp square_mat_test.cpp testsuite.cpp user_info_test.cpp ${unit_test_configurations} )46 pdf_test.cpp randun_test.cpp rectangular_support_test.cpp rv_test.cpp shared_ptr_test.cpp square_mat_test.cpp testsuite.cpp user_info_test.cpp ${unit_test_configurations} ) 47 47 48 48 set_source_files_properties(${unit_test_configurations} PROPERTIES HEADER_FILE_ONLY TRUE) -
library/tests/datasource_test.cpp
r689 r693 20 20 } 21 21 22 TEST ( MpdfDS_test ) {23 UIFile uif(" mpdfds.cfg");22 TEST ( PdfDS_test ) { 23 UIFile uif("pdfds.cfg"); 24 24 25 shared_ptr< MpdfDS> ds=UI::build<MpdfDS>(uif, "ds", UI::compulsory);25 shared_ptr<PdfDS> ds=UI::build<PdfDS>(uif, "ds", UI::compulsory); 26 26 27 27 vec dt = zeros(2); -
library/tests/emix_test.cpp
r689 r693 37 37 epdf_ptr Mm = M1.marginal ( y ); 38 38 epdf_ptr Am = E1->marginal ( y ); 39 mpdf_ptr Mc = M1.condition ( y );40 mpdf_ptr Ac = E1->condition ( y );39 pdf_ptr Mc = M1.condition ( y ); 40 pdf_ptr Ac = E1->condition ( y ); 41 41 42 42 mlnorm<ldmat> *wacnd = dynamic_cast<mlnorm<ldmat> *>( Ac.get() ); … … 81 81 epdf_ptr Mg = M2.marginal ( y ); 82 82 CHECK ( Mg.get() ); 83 mpdf_ptr Cn = M2.condition ( x );83 pdf_ptr Cn = M2.condition ( x ); 84 84 CHECK ( Cn.get() ); 85 85 -
library/tests/epdf_harness.cpp
r675 r693 67 67 RV crv = hepdf->_rv().subt ( *mrv ); 68 68 epdf_ptr m = hepdf->marginal ( *mrv ); 69 mpdf_ptr c = hepdf->condition ( crv );70 71 mpdf_array aa ( 2 );69 pdf_ptr c = hepdf->condition ( crv ); 70 71 pdf_array aa ( 2 ); 72 72 aa ( 0 ) = c; 73 73 aa ( 1 ) = m; -
library/tests/mepdf.cfg
r675 r693 1 1 data = ( 2 2 { 3 class = " mpdf_harness";4 mpdf = {3 class = "pdf_harness"; 4 pdf = { 5 5 class = "enorm<ldmat>"; 6 6 mu = [ 1.1, -1.0 ]; -
library/tests/merger_2d_test.cpp
r675 r693 31 31 f2->set_parameters ( "1 1", mat ( "0.5 0; 0 0.1" ) ); 32 32 33 mpdf_array A ( 2 );33 pdf_array A ( 2 ); 34 34 A ( 0 ) = f1; 35 35 A ( 1 ) = f2; -
library/tests/merger_iter_test.cpp
r675 r693 32 32 f3->set_parameters ( "2", mat ( "0.4" ) ); 33 33 34 mpdf_array A ( 3 );34 pdf_array A ( 3 ); 35 35 A ( 0 ) = f1; 36 36 A ( 1 ) = f2; -
library/tests/merger_test.cpp
r689 r693 21 21 f2->set_parameters ( "5", mat ( "10" ) ); 22 22 23 mpdf_array A ( 2 );23 pdf_array A ( 2 ); 24 24 A ( 0 ) = f1; 25 25 A ( 1 ) = f2; … … 144 144 UI::build<merger_base> ( in, "Merger", UI::compulsory ); 145 145 146 mpdf_array sources;146 pdf_array sources; 147 147 UI::get ( sources, in, "Sources", UI::compulsory ); 148 148 mb->set_sources ( sources ); … … 160 160 UIFile in ( "merger_error.cfg" ); 161 161 162 mpdf_array sources;162 pdf_array sources; 163 163 try { 164 164 UI::get ( sources, in, "Sources", UI::compulsory ); -
library/tests/mgamma.cfg
r521 r693 1 1 data = ( 2 2 { 3 class = " mpdf_harness";4 mpdf = {3 class = "pdf_harness"; 4 pdf = { 5 5 class = "mgamma"; 6 6 beta = [ 1.5, 1.7 ]; … … 24 24 }, 25 25 { 26 class = " mpdf_harness";27 mpdf = {26 class = "pdf_harness"; 27 pdf = { 28 28 class = "mgamma"; 29 29 beta = [ 1.5, 1.7 ]; -
library/tests/mlnorm.cfg
r489 r693 1 1 data = ( 2 2 { 3 class = " mpdf_harness";4 mpdf = {3 class = "pdf_harness"; 4 pdf = { 5 5 class = "mlnorm<ldmat>"; 6 6 A = ( "matrix", 2, 2, [ 1.0, 0.0, 0.0, 1.0 ] ); … … 15 15 }, 16 16 { 17 class = " mpdf_harness";18 mpdf = {17 class = "pdf_harness"; 18 pdf = { 19 19 class = "mlnorm<chmat>"; 20 20 A = ( "matrix", 2, 2, [ 1.0, 0.0, 0.0, 1.0 ] ); -
library/tests/mprod.cfg
r675 r693 1 1 data = ( 2 2 { 3 class = " mpdf_harness";4 mpdf = {3 class = "pdf_harness"; 4 pdf = { 5 5 class = "mprod"; 6 mpdfs = (6 pdfs = ( 7 7 { 8 8 class = "mgamma"; … … 37 37 }, 38 38 { 39 class = " mpdf_harness";40 mpdf = {39 class = "pdf_harness"; 40 pdf = { 41 41 class = "mprod"; 42 mpdfs = (42 pdfs = ( 43 43 { 44 44 class = "enorm<ldmat>"; -
library/tests/pdf_harness.cpp
r527 r693 1 #include " mpdf_harness.h"1 #include "pdf_harness.h" 2 2 #include "base/bdmbase.h" 3 3 #include "base/user_info.h" … … 9 9 namespace bdm { 10 10 11 void mpdf_harness::test_config ( const char *config_file_name ) {11 void pdf_harness::test_config ( const char *config_file_name ) { 12 12 RV::clear_all(); 13 13 14 14 UIFile in ( config_file_name ); 15 Array<shared_ptr< mpdf_harness> > input;15 Array<shared_ptr<pdf_harness> > input; 16 16 UI::get ( input, in, "data", UI::compulsory ); 17 17 int sz = input.size(); … … 22 22 } 23 23 24 void mpdf_harness::from_setting ( const Setting &set ) {25 h mpdf = UI::build<mpdf> ( set, "mpdf", UI::compulsory );24 void pdf_harness::from_setting ( const Setting &set ) { 25 hpdf = UI::build<pdf> ( set, "pdf", UI::compulsory ); 26 26 UI::get ( mean, set, "mean", UI::compulsory ); 27 27 UI::get ( variance, set, "variance", UI::compulsory ); 28 28 29 29 if ( !UI::get ( cond, set, "cond", UI::optional ) ) { 30 cond = zeros ( h mpdf->dimensionc() );30 cond = zeros ( hpdf->dimensionc() ); 31 31 } 32 32 … … 36 36 } 37 37 38 void mpdf_harness::test ( const char *config_name, int idx ) {38 void pdf_harness::test ( const char *config_name, int idx ) { 39 39 CurrentContext cc ( config_name, idx ); 40 40 check_mean(); … … 44 44 } 45 45 46 void mpdf_harness::check_mean() {46 void pdf_harness::check_mean() { 47 47 vec delta = make_close_tolerance ( variance, nsamples ); 48 48 … … 50 50 Array<vec> actual(CurrentContext::max_trial_count); 51 51 do { 52 mat smp = h mpdf->samplecond_m ( cond, nsamples );52 mat smp = hpdf->samplecond_m ( cond, nsamples ); 53 53 vec emu = smp * ones ( nsamples ) / nsamples; 54 54 actual( tc ) = emu; … … 67 67 } 68 68 69 void mpdf_harness::check_covariance() {69 void pdf_harness::check_covariance() { 70 70 int tc = 0; 71 71 Array<mat> actual(CurrentContext::max_trial_count); 72 72 do { 73 mat smp = h mpdf->samplecond_m ( cond, nsamples );73 mat smp = hpdf->samplecond_m ( cond, nsamples ); 74 74 vec emu = smp * ones ( nsamples ) / nsamples; 75 75 mat er = ( smp * smp.T() ) / nsamples - outer_product ( emu, emu ); -
library/tests/pdf_harness.h
r493 r693 1 1 /*! 2 2 \file 3 \brief Support for testing descendants of mpdf.3 \brief Support for testing descendants of pdf. 4 4 \author Vaclav Barta. 5 5 … … 11 11 */ 12 12 13 #ifndef MPDF_HARNESS_H14 #define MPDF_HARNESS_H13 #ifndef pdf_HARNESS_H 14 #define pdf_HARNESS_H 15 15 16 16 #include "bdmroot.h" … … 22 22 namespace bdm { 23 23 24 class mpdf_harness : public root {24 class pdf_harness : public root { 25 25 private: 26 shared_ptr< mpdf> hmpdf;26 shared_ptr<pdf> hpdf; 27 27 vec cond; 28 28 vec mean; … … 35 35 static void test_config ( const char *config_file_name ); 36 36 37 mpdf_harness() : nsamples ( 1000 ), tolerance ( 0.1 ) { }37 pdf_harness() : nsamples ( 1000 ), tolerance ( 0.1 ) { } 38 38 39 39 virtual void test ( const char *config_name, int idx ); … … 42 42 43 43 protected: 44 mpdf *get_mpdf() {45 return h mpdf.get();44 pdf *get_pdf() { 45 return hpdf.get(); 46 46 } 47 47 … … 52 52 void check_covariance(); 53 53 }; 54 UIREGISTER( mpdf_harness);54 UIREGISTER(pdf_harness); 55 55 56 56 } -
library/tests/pdf_test.cpp
r689 r693 3 3 #include "stat/emix.h" 4 4 #include "itpp_ext.h" 5 #include " mpdf_harness.h"5 #include "pdf_harness.h" 6 6 #include "mat_checks.h" 7 7 #include "UnitTest++.h" … … 9 9 using namespace bdm; 10 10 11 static void check_mean( mpdf &distrib_obj, const vec &mu0, int nsamples, const vec &mean, double tolerance);11 static void check_mean(pdf &distrib_obj, const vec &mu0, int nsamples, const vec &mean, double tolerance); 12 12 13 13 static void check_covariance(mmix &distrib_obj, const vec &mu0, int nsamples, const mat &R, double tolerance); 14 14 15 15 TEST ( mepdf_test ) { 16 mpdf_harness::test_config ( "mepdf.cfg" );16 pdf_harness::test_config ( "mepdf.cfg" ); 17 17 } 18 18 19 19 TEST ( mgamma_test ) { 20 mpdf_harness::test_config ( "mgamma.cfg" );20 pdf_harness::test_config ( "mgamma.cfg" ); 21 21 } 22 22 23 23 TEST ( mlnorm_test ) { 24 mpdf_harness::test_config ( "mlnorm.cfg" );24 pdf_harness::test_config ( "mlnorm.cfg" ); 25 25 } 26 26 27 27 TEST ( mprod_test ) { 28 mpdf_harness::test_config ( "mprod.cfg" );28 pdf_harness::test_config ( "mprod.cfg" ); 29 29 } 30 30 31 // not using mpdf_harness because mmix isn't configurable (yet?)31 // not using pdf_harness because mmix isn't configurable (yet?) 32 32 TEST ( mmix_test ) { 33 33 RV x ( "{mmixx }", "2" ); … … 46 46 47 47 mmix mMix; 48 mpdf_array mComs ( 2 );48 pdf_array mComs ( 2 ); 49 49 50 // mmix::set_parameters requires the first mpdf to be named50 // mmix::set_parameters requires the first pdf to be named 51 51 mG->set_rv(x); 52 52 mG->set_rvc(y); … … 65 65 } 66 66 67 // not using mpdf_harness because emix isn't configurable (yet?)67 // not using pdf_harness because emix isn't configurable (yet?) 68 68 TEST ( mepdf_emix_test ) { 69 69 int N = 10000; //number of samples … … 89 89 } 90 90 91 static void check_mean( mpdf &distrib_obj, const vec &mu0, int nsamples, const vec &mean, double tolerance) {91 static void check_mean(pdf &distrib_obj, const vec &mu0, int nsamples, const vec &mean, double tolerance) { 92 92 int tc = 0; 93 93 Array<vec> actual(CurrentContext::max_trial_count); -
library/tests/pdfds.cfg
r598 r693 1 1 ds={ 2 class = " MpdfDS";3 mpdf = {2 class = "PdfDS"; 3 pdf = { 4 4 class = "mlnorm<ldmat>"; 5 5 A = ( "matrix", 1, 2, [ 0.5, -0.1 ] );