Forum Discussion
Equinix_Inc_Sup
15 years agoOccasional Contributor
Above one added the tags only at the end of the Node.Not after the mentioned node.YOu can do that by the following way.
import groovy.xml.dom.DOMCategory
import groovy.xml.QName
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
holder=groovyUtils.getXmlHolder( testRunner.testCase.testSteps["PersistPermissionsForUser"].testRequest.requestContent );
node = holder.getDomNode("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[2]")
node3 = holder.getDomNode("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[2]/ns5:ChildNode[1]")
holder.namespaces["ns5"] = "http://www.equinix.com/gse/service/schema/usermanagement/entity/v2_2"
holder.namespaces["ns4"] = "http://www.equinix.com/gse/service/schema/permission/message/v2_2"
def ps= "PLACE_SMART_HANDS"
def ds= "This is a client admin who has the right to manage finace details"
use( DOMCategory)
{
def permission = node.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Permission"), )
permission.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Code"), ps )
permission.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Description"), ds )
node.insertBefore(permission, node3)
}
holder.put("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[3]/ns5:ChildNode[1]/ns5:ChildNode[1]/ns5:ChildNode[1]",node)
holder.updateProperty()
log.info("Holder detailGGGGGGGGGGG"+ holder.xml)
def secondRequest = testRunner.testCase.getTestStepByName("PersistPermissionsForUserReal")
def property = secondRequest.getProperty("Request")
property.setValue(holder.prettyXml)
import groovy.xml.dom.DOMCategory
import groovy.xml.QName
def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context)
holder=groovyUtils.getXmlHolder( testRunner.testCase.testSteps["PersistPermissionsForUser"].testRequest.requestContent );
node = holder.getDomNode("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[2]")
node3 = holder.getDomNode("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[2]/ns5:ChildNode[1]")
holder.namespaces["ns5"] = "http://www.equinix.com/gse/service/schema/usermanagement/entity/v2_2"
holder.namespaces["ns4"] = "http://www.equinix.com/gse/service/schema/permission/message/v2_2"
def ps= "PLACE_SMART_HANDS"
def ds= "This is a client admin who has the right to manage finace details"
use( DOMCategory)
{
def permission = node.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Permission"), )
permission.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Code"), ps )
permission.appendNode(new QName( "http://www.equinix.com/gse/service/schema/permission/entity/v2_2", "ns5:Description"), ds )
node.insertBefore(permission, node3)
}
holder.put("//ns4:PersistPermissionsRequest[1]/ns4:UserWithAssetPermissions[1]/ns5:PermissionMarkedAssetNode[1]/ns5:ChildNode[3]/ns5:ChildNode[1]/ns5:ChildNode[1]/ns5:ChildNode[1]",node)
holder.updateProperty()
log.info("Holder detailGGGGGGGGGGG"+ holder.xml)
def secondRequest = testRunner.testCase.getTestStepByName("PersistPermissionsForUserReal")
def property = secondRequest.getProperty("Request")
property.setValue(holder.prettyXml)