openModeller  Version 1.4.0
test_rules_range.cpp
Go to the documentation of this file.
00001 
00031 #include <TestHarness.h>
00032 #include <rules_range.hh>
00033 #include <test_rules_defs.hh>
00034 
00035 typedef class ExtendedDummyRule<RangeRule> ExtRangeRule;
00036 
00037 
00038 Scalar genes1[8] = {-0.8, +0.8, -0.8, +0.8, -0.8, +0.8, -0.8, +0.8};
00039 Scalar vals11[8] = {-0.5,       -0.5,       -0.5,       -0.5      };
00040 Scalar vals12[8] = {-0.0,       -0.0,       -0.0,       -0.0      };
00041 Scalar vals13[8] = {-0.9,       -1.0,       -1.0,       -1.0      };
00042 
00043 TEST( RangeRule_applies11 , RangeRule )
00044 {
00045   ExtRangeRule * rule = new ExtRangeRule(4);
00046   rule->setGenes(genes1, 4);
00047   Sample sample(4, vals11); 
00048   LONGS_EQUAL(rule->applies(sample), true);
00049 }
00050 
00051 TEST( RangeRule_applies12 , RangeRule )
00052 {
00053   ExtRangeRule * rule = new ExtRangeRule;
00054   rule->setGenes(genes1, 4);
00055   Sample sample(4, vals12); 
00056   LONGS_EQUAL(rule->applies(sample), true);
00057 }
00058 
00059 TEST( RangeRule_applies13 , RangeRule )
00060 {
00061   ExtRangeRule * rule = new ExtRangeRule;
00062   rule->setGenes(genes1, 4);
00063   Sample sample(4, vals13); 
00064   LONGS_EQUAL(rule->applies(sample), false);
00065 }
00066 
00067 
00068 Scalar genes2[8] = {-1.0, +1.0, -1.0, +1.0, -1.0, +1.0, -1.0, +1.0};
00069 Scalar vals21[8] = {-0.5,       -0.5,       -0.5,       -0.5      };
00070 Scalar vals22[8] = {-0.0,       -0.0,       -0.0,       -0.0      };
00071 Scalar vals23[8] = {-2.9,       -1.0,       -1.0,       -1.0      };
00072 
00073 TEST( RangeRule_applies21 , RangeRule )
00074 {
00075   ExtRangeRule * rule = new ExtRangeRule;
00076   rule->setGenes(genes2, 4);
00077   Sample sample(4, vals21); 
00078   LONGS_EQUAL(rule->applies(sample), true);
00079 }
00080 
00081 TEST( RangeRule_applies22 , RangeRule )
00082 {
00083   ExtRangeRule * rule = new ExtRangeRule;
00084   rule->setGenes(genes2, 4);
00085   Sample sample(4, vals22); 
00086   LONGS_EQUAL(rule->applies(sample), true);
00087 }
00088 
00089 TEST( RangeRule_applies23 , RangeRule )
00090 {
00091   ExtRangeRule * rule = new ExtRangeRule;
00092   rule->setGenes(genes2, 4);
00093   Sample sample(4, vals23); 
00094   LONGS_EQUAL(rule->applies(sample), true);
00095 }
00096 
00097 
00098 Scalar genes3[8] = {-1.0, +1.0, -0.1, +0.1, -1.0, +1.0, -1.0, +1.0};
00099 Scalar vals31[8] = {-0.5,       -0.5,       -0.5,       -0.5      };
00100 Scalar vals32[8] = {-0.0,       -0.0,       -0.0,       -0.0      };
00101 Scalar vals33[8] = {-2.9,       -1.0,       -1.0,       -1.0      };
00102 
00103 TEST( RangeRule_applies31 , RangeRule )
00104 {
00105   ExtRangeRule * rule = new ExtRangeRule;
00106   rule->setGenes(genes3, 4);
00107   Sample sample(4, vals31); 
00108   LONGS_EQUAL(rule->applies(sample), false);
00109 }
00110 
00111 TEST( RangeRule_applies32 , RangeRule )
00112 {
00113   ExtRangeRule * rule = new ExtRangeRule;
00114   rule->setGenes(genes3, 4);
00115   Sample sample(4, vals32); 
00116   LONGS_EQUAL(rule->applies(sample), true);
00117 }
00118 
00119 TEST( RangeRule_applies33 , RangeRule )
00120 {
00121   ExtRangeRule * rule = new ExtRangeRule;
00122   rule->setGenes(genes3, 4);
00123   Sample sample(4, vals33); 
00124   LONGS_EQUAL(rule->applies(sample), false);
00125 }