1 // Copyright (C) 2007-2014 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #ifndef __PMMLBASICSTEST1_HXX__
22 #define __PMMLBASICSTEST1_HXX__
24 #include "PMMLBasicsTest.hxx"
28 //classe test de PMMLlib
30 class PMMLBasicsTest1 : public PMMLBasicsTest
32 CPPUNIT_TEST_SUITE(PMMLBasicsTest1);
34 // test des méthodes communes
35 CPPUNIT_TEST(testMakeLog);
37 CPPUNIT_TEST(testConstructorFileDoesNotExist);
39 CPPUNIT_TEST(testSetCurrentModelWithNameAndTypekANNUnknownModel);
40 CPPUNIT_TEST(testSetCurrentModelWithNameAndTypekLRUnknownModel);
41 CPPUNIT_TEST(testSetCurrentModelWithNameAndTypekUNDEFINEDUnknownModel);
42 CPPUNIT_TEST(testSetCurrentModelWithNameAndType);
43 CPPUNIT_TEST(testSetCurrentModelWithNameAndTypeTwoModelsWithSameNames);
44 CPPUNIT_TEST(testSetCurrentModelWithNameWrongName);
45 CPPUNIT_TEST(testSetCurrentModelWithNameTwoModelsWithSameNames);
46 CPPUNIT_TEST(testSetCurrentModelWithName);
47 CPPUNIT_TEST(testSetCurrentModelNoModel);
48 CPPUNIT_TEST(testSetCurrentModelMoreThanOneModel);
49 CPPUNIT_TEST(testSetCurrentModel);
51 CPPUNIT_TEST(testGetModelsNbkANN);
52 CPPUNIT_TEST(testGetModelsNbkLR);
54 CPPUNIT_TEST( testWrite );
55 CPPUNIT_TEST( testWriteNotExistingFile );
57 CPPUNIT_TEST(testUnlinkNode );
58 CPPUNIT_TEST(testBackupNode );
60 // test des méthodes NeuralNetwork
61 CPPUNIT_TEST( testGetNbInputsForbiddenModelType ) ;
62 CPPUNIT_TEST( testGetNbInputs8 ) ;
64 CPPUNIT_TEST( testGetNbOutputsForbiddenModelType ) ;
65 CPPUNIT_TEST( testGetNbOutputs2 ) ;
67 CPPUNIT_TEST( testGetNameInputForbiddenModelType ) ;
68 CPPUNIT_TEST( testGetNameInputIndexOutOfRange ) ;
69 CPPUNIT_TEST( testGetNameInput ) ;
71 CPPUNIT_TEST( testGetNameOutputForbiddenModelType ) ;
72 CPPUNIT_TEST( testGetNameOutputIndexOutOfRange ) ;
73 CPPUNIT_TEST( testGetNameOutput ) ;
75 CPPUNIT_TEST( testGetNormalisationInputForbiddenType ) ;
76 CPPUNIT_TEST( testGetNormalisationInputIndexUnknown ) ;
77 CPPUNIT_TEST( testGetNormalisationInputkMinusOneOne ) ;
78 CPPUNIT_TEST( testGetNormalisationInputkCRkZeroOne ) ;
80 CPPUNIT_TEST( testGetNormalisationOutputForbiddenType ) ;
81 CPPUNIT_TEST( testGetNormalisationOutputIndexUnknown ) ;
82 CPPUNIT_TEST( testGetNormalisationOutputkMinusOneOne ) ;
83 CPPUNIT_TEST( testGetNormalisationOutputkCRkZeroOne ) ;
85 CPPUNIT_TEST( testGetNbLayersForbiddenType ) ;
86 CPPUNIT_TEST( testGetNbLayers ) ;
88 CPPUNIT_TEST( testGetNbNeuronsAtLayerForbiddenType );
89 CPPUNIT_TEST( testGetNbNeuronsAtLayerFromIndexOutOfRange );
90 CPPUNIT_TEST( testGetNbNeuronsAtLayer );
92 CPPUNIT_TEST( testGetNeuronBiasForbiddenType );
93 CPPUNIT_TEST( testGetNeuronBiasFromLayerIndexOutOfRange );
94 CPPUNIT_TEST( testGetNeuronBiasFromNeuronIndexOutOfRange );
95 CPPUNIT_TEST( testGetNeuronBias );
97 CPPUNIT_TEST( testGetPrecNeuronSynapseForbiddenType );
98 CPPUNIT_TEST( testGetPrecNeuronSynapseFromLayerIndexOutOfRange );
99 CPPUNIT_TEST( testGetPrecNeuronSynapseFromNeuronIndexOutOfRange );
100 CPPUNIT_TEST( testGetPrecNeuronSynapseFromPrecIndexOutOfRange );
101 CPPUNIT_TEST( testGetPrecNeuronSynapse );
103 CPPUNIT_TEST( testReadNetworkStructure );
105 CPPUNIT_TEST( testExportNeuralNetworkCpp );
106 CPPUNIT_TEST( testExportNeuralNetworkFortran );
107 CPPUNIT_TEST( testExportNeuralNetworkPython );
108 CPPUNIT_TEST( testCreatePmmlNeuralNetwork );
110 // test des méthodes RegressionModel
111 CPPUNIT_TEST( testHasInterceptForbiddenType );
112 CPPUNIT_TEST( testHasIntercept );
113 CPPUNIT_TEST( testHasInterceptNo );
114 CPPUNIT_TEST( testGetRegressionTableInterceptForbiddenType );
115 CPPUNIT_TEST( testGetRegressionTableIntercept );
117 CPPUNIT_TEST( testReadRegressionStructure );
119 CPPUNIT_TEST( testGetNumericPredictorNb );
120 CPPUNIT_TEST( testGetNumericPredictorNbForbiddenType );
122 CPPUNIT_TEST( testGetNumericPredictorName );
123 CPPUNIT_TEST( testGetNumericPredictorNameForbiddenType );
124 CPPUNIT_TEST( testGetNumericPredictorNamePredictorOutOfRange );
126 CPPUNIT_TEST( testGetPredictorTermName );
127 CPPUNIT_TEST( testGetPredictorTermNameForbiddenType );
128 CPPUNIT_TEST( testGetPredictorTermNamePredictorOutOfRange );
130 CPPUNIT_TEST( testGetNumericPredictorCoefficient );
131 CPPUNIT_TEST( testGetNumericPredictorCoefficientForbiddenType );
132 CPPUNIT_TEST( testGetNumericPredictorCoefficientPredictorOutOfRange );
134 CPPUNIT_TEST( testGetPredictorTermCoefficient );
135 CPPUNIT_TEST( testGetPredictorTermCoefficientForbiddenType );
136 CPPUNIT_TEST( testGetPredictorTermCoefficientPredictorOutOfRange );
138 CPPUNIT_TEST( testGetPredictorTermFieldRefNb );
139 CPPUNIT_TEST( testGetPredictorTermFieldRefNbForbiddenType );
140 CPPUNIT_TEST( testGetPredictorTermFieldRefNbPredictorOutOfRange );
142 CPPUNIT_TEST( testGetPredictorTermFieldRefName );
143 CPPUNIT_TEST( testGetPredictorTermFieldRefNameForbiddenType );
144 CPPUNIT_TEST( testGetPredictorTermFieldRefNamePredictorOutOfRange );
145 CPPUNIT_TEST( testGetPredictorTermFieldRefNameFieldOutOfRange );
147 CPPUNIT_TEST( testExportLinearRegressionCpp );
148 CPPUNIT_TEST( testExportLinearRegressionFortran );
149 CPPUNIT_TEST( testExportLinearRegressionPython );
150 CPPUNIT_TEST( testCreatePmmlRegression );
152 CPPUNIT_TEST_SUITE_END();
161 void testConstructorFileDoesNotExist();
163 void testSetCurrentModelWithNameAndTypekANNUnknownModel();
164 void testSetCurrentModelWithNameAndTypekLRUnknownModel();
165 void testSetCurrentModelWithNameAndTypekUNDEFINEDUnknownModel();
166 void testSetCurrentModelWithNameAndType();
167 void testSetCurrentModelWithNameAndTypeTwoModelsWithSameNames();
168 void testSetCurrentModelWithNameWrongName();
169 void testSetCurrentModelWithNameTwoModelsWithSameNames();
170 void testSetCurrentModelWithName();
171 void testSetCurrentModelNoModel();
172 void testSetCurrentModelMoreThanOneModel();
173 void testSetCurrentModel();
175 void testGetModelsNbkANN();
176 void testGetModelsNbkLR();
179 void testWriteNotExistingFile();
181 void testUnlinkNode();
182 void testBackupNode();
184 void testGetNbInputsForbiddenModelType();
185 void testGetNbInputs8();
187 void testGetNbOutputsForbiddenModelType();
188 void testGetNbOutputs2();
190 void testGetNameInputForbiddenModelType();
191 void testGetNameInputIndexOutOfRange();
192 void testGetNameInput();
194 void testGetNameOutputForbiddenModelType();
195 void testGetNameOutputIndexOutOfRange();
196 void testGetNameOutput();
198 void testGetNormalisationInputForbiddenType();
199 void testGetNormalisationInputIndexUnknown();
200 void testGetNormalisationInputkMinusOneOne();
201 void testGetNormalisationInputkCRkZeroOne();
203 void testGetNormalisationOutputForbiddenType();
204 void testGetNormalisationOutputIndexUnknown();
205 void testGetNormalisationOutputkMinusOneOne();
206 void testGetNormalisationOutputkCRkZeroOne();
208 void testGetNbLayersForbiddenType();
209 void testGetNbLayers() ;
211 void testGetNbNeuronsAtLayerForbiddenType();
212 void testGetNbNeuronsAtLayerFromIndexOutOfRange();
213 void testGetNbNeuronsAtLayer();
215 void testGetNeuronBiasForbiddenType();
216 void testGetNeuronBiasFromLayerIndexOutOfRange();
217 void testGetNeuronBiasFromNeuronIndexOutOfRange();
218 void testGetNeuronBias();
220 void testGetPrecNeuronSynapseForbiddenType();
221 void testGetPrecNeuronSynapseFromForbiddenTypeName();
222 void testGetPrecNeuronSynapseFromLayerIndexOutOfRange();
223 void testGetPrecNeuronSynapseFromNeuronIndexOutOfRange();
224 void testGetPrecNeuronSynapseFromPrecIndexOutOfRange();
225 void testGetPrecNeuronSynapse();
227 void testReadNetworkStructure();
229 void testExportNeuralNetworkCpp();
230 void testExportNeuralNetworkFortran();
231 void testExportNeuralNetworkPython();
232 void testCreatePmmlNeuralNetwork();
234 void testHasInterceptForbiddenType();
235 void testHasIntercept();
236 void testHasInterceptNo();
237 void testGetRegressionTableInterceptForbiddenType();
238 void testGetRegressionTableIntercept();
240 void testReadRegressionStructure();
242 void testGetNumericPredictorNb();
243 void testGetNumericPredictorNbForbiddenType();
245 void testGetPredictorTermNb();
246 void testGetPredictorTermNbForbiddenType();
248 void testGetNumericPredictorName();
249 void testGetNumericPredictorNameForbiddenType();
250 void testGetNumericPredictorNamePredictorOutOfRange();
252 void testGetPredictorTermName();
253 void testGetPredictorTermNameForbiddenType();
254 void testGetPredictorTermNamePredictorOutOfRange();
256 void testGetNumericPredictorCoefficient();
257 void testGetNumericPredictorCoefficientForbiddenType();
258 void testGetNumericPredictorCoefficientPredictorOutOfRange();
260 void testGetPredictorTermCoefficient();
261 void testGetPredictorTermCoefficientForbiddenType();
262 void testGetPredictorTermCoefficientPredictorOutOfRange();
264 void testGetPredictorTermFieldRefNb();
265 void testGetPredictorTermFieldRefNbForbiddenType();
266 void testGetPredictorTermFieldRefNbPredictorOutOfRange();
268 void testGetPredictorTermFieldRefName();
269 void testGetPredictorTermFieldRefNameForbiddenType();
270 void testGetPredictorTermFieldRefNamePredictorOutOfRange();
271 void testGetPredictorTermFieldRefNameFieldOutOfRange();
273 void testExportLinearRegressionCpp();
274 void testExportLinearRegressionFortran();
275 void testExportLinearRegressionPython();
276 void testCreatePmmlRegression();
279 std::string resourcesDir;