END_TEST START_TEST(test_XMLToken_newSetters_clearAttributes1) { /*-- setup --*/ XMLTriple_t* triple = XMLTriple_createWith("test","",""); XMLAttributes_t* attr = XMLAttributes_create(); XMLToken_t* token = XMLToken_createWithTripleAttr(triple, attr); XMLAttributes_t* nattr = XMLAttributes_create(); XMLTriple_t* xt1 = XMLTriple_createWith("name1", "http://name1.org/", "p1"); XMLAttributes_addWithTriple(nattr, xt1, "val1"); /*-- test of setting attributes -- */ int i = XMLToken_setAttributes(token, nattr); fail_unless ( i == LIBSBML_OPERATION_SUCCESS); fail_unless(XMLToken_isAttributesEmpty(token) == 0 ); i = XMLToken_clearAttributes(token); fail_unless ( i == LIBSBML_OPERATION_SUCCESS); fail_unless(XMLToken_isAttributesEmpty(token) == 1 ); /*-- teardown --*/ XMLAttributes_free(nattr); XMLAttributes_free(attr); XMLTriple_free(triple); XMLToken_free(token); XMLTriple_free(xt1); }
END_TEST START_TEST(test_XMLToken_newSetters_addAttributes1) { /*-- setup --*/ XMLTriple_t* triple = XMLTriple_createWith("test","",""); XMLAttributes_t* attr = XMLAttributes_create(); XMLToken_t* token = XMLToken_createWithTripleAttr(triple, attr); XMLTriple_t* xt2 = XMLTriple_createWith("name3", "http://name3.org/", "p3"); /*-- test of adding attributes --*/ int i = XMLToken_addAttr(token, "name1", "val1"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( XMLToken_getAttributesLength(token) == 1 ); fail_unless( XMLToken_isAttributesEmpty(token) == 0 ); fail_unless( strcmp(XMLToken_getAttrName (token, 0), "name1") == 0 ); fail_unless( strcmp(XMLToken_getAttrValue (token, 0), "val1" ) == 0 ); i = XMLToken_addAttrWithNS(token, "name2", "val2", "http://name1.org/", "p1"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( XMLToken_getAttributesLength(token) == 2 ); fail_unless( XMLToken_isAttributesEmpty(token) == 0 ); fail_unless( strcmp(XMLToken_getAttrName (token, 1), "name2") == 0 ); fail_unless( strcmp(XMLToken_getAttrValue (token, 1), "val2" ) == 0 ); fail_unless( strcmp(XMLToken_getAttrURI (token, 1), "http://name1.org/") == 0 ); fail_unless( strcmp(XMLToken_getAttrPrefix(token, 1), "p1" ) == 0 ); i = XMLToken_addAttrWithTriple(token, xt2, "val2"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( XMLToken_getAttributesLength(token) == 3 ); fail_unless( XMLToken_isAttributesEmpty(token) == 0 ); fail_unless( strcmp(XMLToken_getAttrName (token, 2), "name3") == 0 ); fail_unless( strcmp(XMLToken_getAttrValue (token, 2), "val2" ) == 0 ); fail_unless( strcmp(XMLToken_getAttrURI (token, 2), "http://name3.org/") == 0 ); fail_unless( strcmp(XMLToken_getAttrPrefix(token, 2), "p3" ) == 0 ); /*-- teardown --*/ XMLTriple_free(xt2); XMLTriple_free(triple); XMLAttributes_free(attr); XMLToken_free(token); }
END_TEST START_TEST(test_XMLToken_newSetters_addAttributes2) { /*-- setup --*/ XMLTriple_t* triple = XMLTriple_createWith("test","",""); XMLToken_t* token = XMLToken_createWithTriple(triple); XMLTriple_t* xt2 = XMLTriple_createWith("name3", "http://name3.org/", "p3"); /*-- test of adding attributes --*/ int i = XMLToken_addAttr(token, "name1", "val1"); fail_unless( i == LIBSBML_INVALID_XML_OPERATION ); fail_unless( XMLToken_getAttributesLength(token) == 0 ); fail_unless( XMLToken_isAttributesEmpty(token) == 1 ); i = XMLToken_addAttrWithNS(token, "name2", "val2", "http://name1.org/", "p1"); fail_unless( i == LIBSBML_INVALID_XML_OPERATION ); fail_unless( XMLToken_getAttributesLength(token) == 0 ); fail_unless( XMLToken_isAttributesEmpty(token) == 1 ); i = XMLToken_addAttrWithTriple(token, xt2, "val2"); fail_unless( i == LIBSBML_INVALID_XML_OPERATION ); fail_unless( XMLToken_getAttributesLength(token) == 0 ); fail_unless( XMLToken_isAttributesEmpty(token) == 1 ); /*-- teardown --*/ XMLTriple_free(xt2); XMLTriple_free(triple); XMLToken_free(token); }
END_TEST START_TEST(test_XMLToken_newSetters_setAttributes2) { int i ; /*-- setup --*/ XMLTriple_t* triple = XMLTriple_createWith("test","",""); XMLToken_t* token = XMLToken_createWithTriple(triple); XMLAttributes_t* nattr = XMLAttributes_create(); XMLTriple_t* xt1 = XMLTriple_createWith("name1", "http://name1.org/", "p1"); XMLAttributes_addWithTriple(nattr, xt1, "val1"); /*-- test of setting attributes with NULL value -- */ i = XMLToken_setAttributes(token, NULL); fail_unless ( i == LIBSBML_INVALID_OBJECT); /*-- test of setting attributes -- */ i = XMLToken_setAttributes(token, nattr); fail_unless ( i == LIBSBML_INVALID_XML_OPERATION); fail_unless(XMLToken_isAttributesEmpty(token) == 1 ); /*-- teardown --*/ XMLAttributes_free(nattr); XMLTriple_free(triple); XMLToken_free(token); XMLTriple_free(xt1); }