Exemplo n.º 1
0
END_TEST


START_TEST (test_L3_Model_conversionFactor)
{
  const char *units = "mole";


  fail_unless( !Model_isSetConversionFactor(M) );

  Model_setConversionFactor(M, units);

  fail_unless( !strcmp(Model_getConversionFactor(M), units) );
  fail_unless( Model_isSetConversionFactor(M) );

  if (Model_getConversionFactor(M) == units)
  {
    fail("Model_setConversionFactor(...) did not make a copy of string.");
  }

  Model_unsetConversionFactor(M);
  
  fail_unless( !Model_isSetConversionFactor(M) );

  if (Model_getConversionFactor(M) != NULL)
  {
    fail("Model_unsetConversionFactor(M) did not clear string.");
  }
}
END_TEST


START_TEST (test_SBMLConvert_convertFromL3_conversionFactor)
{
  SBMLDocument_t *d = SBMLDocument_createWithLevelAndVersion(3, 1);
  Model_t        *m = SBMLDocument_createModel(d);
  const char   *sid = "P";

  Model_setConversionFactor(m, sid);
  Parameter_t  *c = Model_createParameter(m);

  Parameter_setId   ( c, sid );
  Parameter_setConstant( c, 1);

  fail_unless(SBMLDocument_setLevelAndVersion(d, 1, 1) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 1, 2) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 2, 1) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 2, 2) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 2, 3) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 2, 4) == 0);
  fail_unless(SBMLDocument_setLevelAndVersion(d, 3, 1) == 1);

}