1 /**
2 * \file TestFormulaUnitsDataMap_map.cpp
3 * \brief fomula units data unit tests
4 * \author Ben Bornstein
5 *
6 * <!--------------------------------------------------------------------------
7 * This file is part of libSBML. Please visit http://sbml.org for more
8 * information about SBML, and the latest version of libSBML.
9 *
10 * Copyright (C) 2020 jointly by the following organizations:
11 * 1. California Institute of Technology, Pasadena, CA, USA
12 * 2. University of Heidelberg, Heidelberg, Germany
13 * 3. University College London, London, UK
14 *
15 * Copyright (C) 2019 jointly by the following organizations:
16 * 1. California Institute of Technology, Pasadena, CA, USA
17 * 2. University of Heidelberg, Heidelberg, Germany
18 *
19 * Copyright (C) 2013-2018 jointly by the following organizations:
20 * 1. California Institute of Technology, Pasadena, CA, USA
21 * 2. EMBL European Bioinformatics Institute (EMBL-EBI), Hinxton, UK
22 * 3. University of Heidelberg, Heidelberg, Germany
23 *
24 * Copyright (C) 2009-2013 jointly by the following organizations:
25 * 1. California Institute of Technology, Pasadena, CA, USA
26 * 2. EMBL European Bioinformatics Institute (EMBL-EBI), Hinxton, UK
27 *
28 * Copyright (C) 2006-2008 by the California Institute of Technology,
29 * Pasadena, CA, USA
30 *
31 * Copyright (C) 2002-2005 jointly by the following organizations:
32 * 1. California Institute of Technology, Pasadena, CA, USA
33 * 2. Japan Science and Technology Agency, Japan
34 *
35 * This library is free software; you can redistribute it and/or modify it
36 * under the terms of the GNU Lesser General Public License as published by
37 * the Free Software Foundation. A copy of the license agreement is provided
38 * in the file named "LICENSE.txt" included with this software distribution
39 * and also available online as http://sbml.org/software/libsbml/license.html
40 * ---------------------------------------------------------------------- -->*/
41
42 #include <sbml/common/common.h>
43 #include <sbml/common/extern.h>
44
45 #include <sbml/SBMLReader.h>
46 #include <sbml/SBMLTypes.h>
47
48 #include <sbml/SBMLDocument.h>
49 #include <sbml/Model.h>
50 #include <sbml/SBMLTypeCodes.h>
51
52 #include <sbml/units/UnitFormulaFormatter.h>
53 #include <sbml/units/FormulaUnitsData.h>
54
55 #include <check.h>
56
57 LIBSBML_CPP_NAMESPACE_USE
58
59 extern char *TestDataDirectory;
60
61 static Model *m;
62 static SBMLDocument* d;
63
64 /*
65 * tests the results from different model
66 * components that have units
67 * e.g. compartment; species; parameter
68 */
69
70
71 void
FormulaUnitsDataMap_setup(void)72 FormulaUnitsDataMap_setup (void)
73 {
74 char *filename = safe_strcat(TestDataDirectory, "formula.xml");
75
76 d = readSBML(filename);
77 m = d->getModel();
78
79 m->populateListFormulaUnitsData();
80
81 safe_free(filename);
82 }
83
84
85 void
FormulaUnitsDataMap_teardown(void)86 FormulaUnitsDataMap_teardown (void)
87 {
88 delete d;
89 }
90 CK_CPPSTART
91
START_TEST(test_FormulaUnitsDataMap_setters)92 START_TEST (test_FormulaUnitsDataMap_setters)
93 {
94 FormulaUnitsData *fud = new FormulaUnitsData();
95 fud->setUnitReferenceId("sarah");
96 fud->setComponentTypecode(SBML_PARAMETER);
97
98 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "sarah"), NULL);
99 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Parameter"), NULL);
100 fail_unless(!fud->getContainsUndeclaredUnits());
101 fail_unless(fud->getCanIgnoreUndeclaredUnits());
102
103 fud->setContainsParametersWithUndeclaredUnits(true);
104 fud->setCanIgnoreUndeclaredUnits(false);
105
106 fail_unless(fud->getContainsUndeclaredUnits());
107 fail_unless(!fud->getCanIgnoreUndeclaredUnits());
108
109 m->addFormulaUnitsData(fud);
110
111 fail_unless(m->getNumFormulaUnitsData() == 30);
112
113 delete fud;
114
115 }
116 END_TEST
117
START_TEST(test_FormulaUnitsDataMap_getdefaults)118 START_TEST (test_FormulaUnitsDataMap_getdefaults)
119 {
120 const FormulaUnitsData *fud = m->getFormulaUnitsData("subs_per_time", SBML_UNKNOWN);
121
122 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "subs_per_time"), NULL);
123 fail_unless(fud->getContainsUndeclaredUnits() == 0);
124 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
125
126 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
127
128 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
129
130 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
131 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
132 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
133 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
134 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
135
136 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
137 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
138 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
139 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
140 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
141
142 }
143 END_TEST
144
145
START_TEST(test_FormulaUnitsDataMap_getcompartment)146 START_TEST (test_FormulaUnitsDataMap_getcompartment)
147 {
148 const FormulaUnitsData *fud = m->getFormulaUnitsData("cell", SBML_COMPARTMENT);
149
150 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "cell"), NULL);
151 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Compartment"), NULL);
152 fail_unless(fud->getContainsUndeclaredUnits() == 0);
153 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
154
155 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
156
157 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
158
159 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
160 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
161 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
162 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
163 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_LITRE);
164
165 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
166
167 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
168
169 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
170 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == 0);
171 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
172 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
173 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_LITRE);
174
175 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
176 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
177 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
178 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
179 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
180
181 fud = m->getFormulaUnitsData("cell1", SBML_COMPARTMENT);
182
183 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "cell1"), NULL);
184 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Compartment"), NULL);
185 fail_unless(fud->getContainsUndeclaredUnits() == 0);
186 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
187
188 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
189
190 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
191
192 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
193 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
194 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
195 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
196 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
197
198 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
199
200 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
201
202 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
203 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == -2);
204 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
205 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
206 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
207
208 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
209 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
210 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
211 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
212 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
213 }
214 END_TEST
215
START_TEST(test_FormulaUnitsDataMap_getspecies)216 START_TEST (test_FormulaUnitsDataMap_getspecies)
217 {
218 FormulaUnitsData *fud = m->getFormulaUnitsData("x", SBML_SPECIES);
219
220 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "x"), NULL);
221 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Species"), NULL);
222 fail_unless(fud->getContainsUndeclaredUnits() == 0);
223 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
224
225 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
226
227 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
228
229 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
230 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
231 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
232 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
233 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
234
235 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
236 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
237 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
238 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
239 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_LITRE);
240
241 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 3);
242
243 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
244
245 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
246 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == 0);
247 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
248 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
249 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
250
251 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
252 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
253 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
254 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
255 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_LITRE);
256
257 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getMultiplier() == 1);
258 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getScale() == 0);
259 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getExponent() == -1);
260 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getOffset() == 0.0);
261 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getKind() == UNIT_KIND_SECOND);
262
263 fud = m->getFormulaUnitsData("y", SBML_SPECIES);
264
265 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "y"), NULL);
266 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Species"), NULL);
267 fail_unless(fud->getContainsUndeclaredUnits() == 0);
268 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
269
270 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
271
272 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
273
274 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
275 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
276 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
277 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
278 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
279
280 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
281
282 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
283
284 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
285 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == -2);
286 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
287 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
288 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
289
290 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
291 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
292 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
293 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
294 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
295
296 fud = m->getFormulaUnitsData("z2", SBML_SPECIES);
297
298 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "z2"), NULL);
299 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Species"), NULL);
300 fail_unless(fud->getContainsUndeclaredUnits() == 0);
301 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
302
303 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
304
305 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
306
307 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
308 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
309 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
310 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
311 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
312
313 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
314 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
315 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
316 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
317 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_LITRE);
318
319 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 3);
320
321 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
322
323 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
324 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == -2);
325 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
326 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
327 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
328
329 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
330 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
331 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
332 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
333 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_LITRE);
334
335 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getMultiplier() == 1);
336 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getScale() == 0);
337 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getExponent() == -1);
338 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getOffset() == 0.0);
339 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(2)->getKind() == UNIT_KIND_SECOND);
340
341 fud = m->getFormulaUnitsData("x1", SBML_SPECIES);
342
343 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "x1"), NULL);
344 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Species"), NULL);
345 fail_unless(fud->getContainsUndeclaredUnits() == 0);
346 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
347
348 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
349
350 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
351
352 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
353 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
354 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
355 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
356 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
357
358 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
359
360 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
361
362 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
363 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == 0);
364 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
365 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
366 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
367
368 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
369 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
370 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
371 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
372 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
373
374 fud = m->getFormulaUnitsData("y1", SBML_SPECIES);
375
376 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "y1"), NULL);
377 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Species"), NULL);
378 fail_unless(fud->getContainsUndeclaredUnits() == 0);
379 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
380
381 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
382
383 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
384
385 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
386 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
387 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
388 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
389 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
390
391 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
392
393 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
394
395 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
396 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == -2);
397 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
398 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
399 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
400
401 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
402 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
403 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -1);
404 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
405 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
406
407 }
408 END_TEST
409
START_TEST(test_FormulaUnitsDataMap_getparameter)410 START_TEST (test_FormulaUnitsDataMap_getparameter)
411 {
412 FormulaUnitsData *fud = m->getFormulaUnitsData("k1", SBML_PARAMETER);
413
414 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k1"), NULL);
415 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Parameter"), NULL);
416 fail_unless(fud->getContainsUndeclaredUnits() == 0);
417 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
418
419 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
420
421 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
422
423 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
424 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
425 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
426 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
427 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
428
429 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
430 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
431 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
432 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
433 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
434
435 fail_unless(fud->getPerTimeUnitDefinition()->getNumUnits() == 2);
436
437 fail_unless(!strcmp(fud->getPerTimeUnitDefinition()->getId().c_str(), ""), NULL);
438
439 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getMultiplier() == 1);
440 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getScale() == 0);
441 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getExponent() == 1);
442 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getOffset() == 0.0);
443 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
444
445 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getMultiplier() == 1);
446 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getScale() == 0);
447 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getExponent() == -2);
448 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getOffset() == 0.0);
449 fail_unless(fud->getPerTimeUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
450
451 fud = m->getFormulaUnitsData("k2", SBML_PARAMETER);
452
453 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k2"), NULL);
454 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Parameter"), NULL);
455 fail_unless(fud->getContainsUndeclaredUnits() == 1);
456 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
457
458 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
459
460 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
461
462 }
463 END_TEST
464
START_TEST(test_FormulaUnitsDataMap_getinitialassignment)465 START_TEST (test_FormulaUnitsDataMap_getinitialassignment)
466 {
467 FormulaUnitsData *fud = m->getFormulaUnitsData("z2", SBML_INITIAL_ASSIGNMENT);
468
469 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "z2"), NULL);
470 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "InitialAssignment"), NULL);
471 fail_unless(fud->getContainsUndeclaredUnits() == 1);
472 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
473
474 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
475
476 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
477
478 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
479 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
480 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
481 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
482 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
483
484 }
485 END_TEST
486
START_TEST(test_FormulaUnitsDataMap_getrule)487 START_TEST (test_FormulaUnitsDataMap_getrule)
488 {
489 FormulaUnitsData *fud = m->getFormulaUnitsData("x", SBML_ASSIGNMENT_RULE);
490
491 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "x"), NULL);
492 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "AssignmentRule"), NULL);
493 fail_unless(fud->getContainsUndeclaredUnits() == 1);
494 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
495
496 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
497
498 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
499
500
501 fud = m->getFormulaUnitsData("cell1", SBML_RATE_RULE);
502
503 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "cell1"), NULL);
504 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "RateRule"), NULL);
505 fail_unless(fud->getContainsUndeclaredUnits() == 1);
506 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 1);
507
508 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
509
510 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
511
512 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
513 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
514 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
515 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
516 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
517
518 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
519 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
520 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
521 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
522 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
523
524 fud = m->getFormulaUnitsData("alg_rule_0", SBML_ALGEBRAIC_RULE);
525
526 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "alg_rule_0"), NULL);
527 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "AlgebraicRule"), NULL);
528 fail_unless(fud->getContainsUndeclaredUnits() == 1);
529 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
530
531 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
532
533 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
534
535 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
536 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
537 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
538 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
539 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_LITRE);
540 }
541 END_TEST
542
543
START_TEST(test_FormulaUnitsDataMap_getreaction)544 START_TEST (test_FormulaUnitsDataMap_getreaction)
545 {
546 FormulaUnitsData *fud = m->getFormulaUnitsData("R", SBML_KINETIC_LAW);
547
548 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "R"), NULL);
549 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "KineticLaw"), NULL);
550 fail_unless(fud->getContainsUndeclaredUnits() == 0);
551 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
552
553 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
554
555 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
556
557 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
558 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
559 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
560 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
561 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
562
563 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
564 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
565 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
566 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
567 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
568
569 fud = m->getFormulaUnitsData("x1", SBML_STOICHIOMETRY_MATH);
570
571 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "x1"), NULL);
572 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "StoichiometryMath"), NULL);
573 fail_unless(fud->getContainsUndeclaredUnits() == 1);
574 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
575
576 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
577
578 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
579
580
581 }
582 END_TEST
583
584
START_TEST(test_FormulaUnitsDataMap_getlocalparameters)585 START_TEST (test_FormulaUnitsDataMap_getlocalparameters)
586 {
587 FormulaUnitsData *fud = m->getFormulaUnitsData("k_1_R", SBML_LOCAL_PARAMETER);
588
589 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k_1_R"), NULL);
590 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "LocalParameter"), NULL);
591 fail_unless(fud->getContainsUndeclaredUnits() == 0);
592 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
593
594 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
595
596 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
597
598 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
599 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
600 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
601 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
602 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_SECOND);
603
604 fud = m->getFormulaUnitsData("k2_R", SBML_LOCAL_PARAMETER);
605
606 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k2_R"), NULL);
607 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "LocalParameter"), NULL);
608 fail_unless(fud->getContainsUndeclaredUnits() == 0);
609 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
610
611 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
612
613 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
614
615 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
616 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == -2);
617 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
618 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
619 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
620
621 fud = m->getFormulaUnitsData("k3_R", SBML_LOCAL_PARAMETER);
622
623 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k3_R"), NULL);
624 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "LocalParameter"), NULL);
625 fail_unless(fud->getContainsUndeclaredUnits() == 1);
626 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
627
628 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
629
630 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
631
632 fud = m->getFormulaUnitsData("h_R", SBML_LOCAL_PARAMETER);
633
634 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "h_R"), NULL);
635 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "LocalParameter"), NULL);
636 fail_unless(fud->getContainsUndeclaredUnits() == 1);
637 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
638
639 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
640
641 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
642 }
643 END_TEST
644
645
646
START_TEST(test_FormulaUnitsDataMap_getevent)647 START_TEST (test_FormulaUnitsDataMap_getevent)
648 {
649 FormulaUnitsData *fud = m->getFormulaUnitsData("event_0", SBML_TRIGGER);
650 //trigger units
651 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "event_0"), NULL);
652 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Trigger"), NULL);
653 fail_unless(fud->getContainsUndeclaredUnits() == 1);
654 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
655
656 fail_unless(fud->getUnitDefinition()->getNumUnits() == 1);
657 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
658 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
659 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
660 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
661 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_DIMENSIONLESS);
662
663
664 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
665
666
667
668
669 fud = m->getFormulaUnitsData("event_0", SBML_EVENT);
670 // delay units
671 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "event_0"), NULL);
672 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "Event"), NULL);
673 fail_unless(fud->getContainsUndeclaredUnits() == 1);
674 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
675
676 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
677
678 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
679
680 fud = m->getFormulaUnitsData("k2event_0", SBML_EVENT_ASSIGNMENT);
681 // event assignment units
682 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "k2event_0"), NULL);
683 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "EventAssignment"), NULL);
684 fail_unless(fud->getContainsUndeclaredUnits() == 1);
685 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
686
687 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
688
689 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
690
691 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
692 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
693 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
694 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
695 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_METRE);
696
697 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
698 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
699 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
700 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
701 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
702
703
704
705 }
706 END_TEST
707
708
START_TEST(test_FormulaUnitsDataMap_getById)709 START_TEST (test_FormulaUnitsDataMap_getById)
710 {
711 const FormulaUnitsData *fud = m->getFormulaUnitsData("R", SBML_KINETIC_LAW);
712
713 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "R"), NULL);
714 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "KineticLaw"), NULL);
715 fail_unless(fud->getContainsUndeclaredUnits() == 0);
716 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
717
718 fail_unless(fud->getUnitDefinition()->getNumUnits() == 2);
719
720 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
721
722 fail_unless(fud->getUnitDefinition()->getUnit(0)->getMultiplier() == 1);
723 fail_unless(fud->getUnitDefinition()->getUnit(0)->getScale() == 0);
724 fail_unless(fud->getUnitDefinition()->getUnit(0)->getExponent() == 1);
725 fail_unless(fud->getUnitDefinition()->getUnit(0)->getOffset() == 0.0);
726 fail_unless(fud->getUnitDefinition()->getUnit(0)->getKind() == UNIT_KIND_MOLE);
727
728 fail_unless(fud->getUnitDefinition()->getUnit(1)->getMultiplier() == 1);
729 fail_unless(fud->getUnitDefinition()->getUnit(1)->getScale() == 0);
730 fail_unless(fud->getUnitDefinition()->getUnit(1)->getExponent() == -1);
731 fail_unless(fud->getUnitDefinition()->getUnit(1)->getOffset() == 0.0);
732 fail_unless(fud->getUnitDefinition()->getUnit(1)->getKind() == UNIT_KIND_SECOND);
733
734 fud = m->getFormulaUnitsData("x1", SBML_STOICHIOMETRY_MATH);
735
736 fail_unless(!strcmp(fud->getUnitReferenceId().c_str(), "x1"), NULL);
737 fail_unless(!strcmp(SBMLTypeCode_toString(fud->getComponentTypecode(), "core"), "StoichiometryMath"), NULL);
738 fail_unless(fud->getContainsUndeclaredUnits() == 1);
739 fail_unless(fud->getCanIgnoreUndeclaredUnits() == 0);
740
741 fail_unless(fud->getUnitDefinition()->getNumUnits() == 0);
742
743 fail_unless(!strcmp(fud->getUnitDefinition()->getId().c_str(), ""), NULL);
744
745
746 }
747 END_TEST
748
749
750
751 Suite *
create_suite_FormulaUnitsDataMap(void)752 create_suite_FormulaUnitsDataMap (void)
753 {
754 Suite *suite = suite_create("FormulaUnitDataMap");
755 TCase *tcase = tcase_create("FormulaUnitsDataMap");
756
757 tcase_add_checked_fixture(tcase,
758 FormulaUnitsDataMap_setup,
759 FormulaUnitsDataMap_teardown);
760
761 tcase_add_test(tcase, test_FormulaUnitsDataMap_getdefaults );
762 tcase_add_test(tcase, test_FormulaUnitsDataMap_getcompartment );
763 tcase_add_test(tcase, test_FormulaUnitsDataMap_getspecies );
764 tcase_add_test(tcase, test_FormulaUnitsDataMap_getparameter );
765 tcase_add_test(tcase, test_FormulaUnitsDataMap_getinitialassignment );
766 tcase_add_test(tcase, test_FormulaUnitsDataMap_getrule );
767 tcase_add_test(tcase, test_FormulaUnitsDataMap_getreaction );
768 tcase_add_test(tcase, test_FormulaUnitsDataMap_getlocalparameters );
769 tcase_add_test(tcase, test_FormulaUnitsDataMap_getevent );
770 tcase_add_test(tcase, test_FormulaUnitsDataMap_getById );
771 tcase_add_test(tcase, test_FormulaUnitsDataMap_setters );
772 suite_add_tcase(suite, tcase);
773
774 return suite;
775 }
776
777
778 CK_CPPEND
779