1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
import com.eviware.soapui.support.GroovyUtils import com.eviware.soapui.support.XmlHolder import org.w3c.dom.Node import org.apache.commons.lang.StringUtils import java.util.HashSet def groovyUtils = new GroovyUtils(context) def xmlHolder = groovyUtils.getXmlHolder(messageExchange.getResponseContent()) def activeEnv = context.expand( '${#Project#activeEnv}' ) log.info "The active environment is $activeEnv" String[] fixClientIdArray if (activeEnv== "LIVE" ){ fixClientIdArray = new String[ 2 ] fixClientIdArray[ 0 ] = "6e2ba3e9-68a4-4c8f-a164-f026e7239cf7" fixClientIdArray[ 1 ] = "dfba4888-348a-4fb1-91f7-8a03fb6aa775" } if (activeEnv== "QA" ){ fixClientIdArray = new String[ 3 ] fixClientIdArray[ 0 ] = "6fe9b969-3711-4083-a8c4-186e75e6e9e7" fixClientIdArray[ 1 ] = "43ec112f-cd57-4d84-a5e8-1d62e1f71244" fixClientIdArray[ 2 ] = "8c8e3e6a-0cb1-41d0-a07b-ca3fff506cee" } def fixSet = new HashSet() for (String clientId : fixClientIdArray){ fixSet.add(clientId) } String xPath = "//clients/client" Node[] nodeArray = xmlHolder.getDomNodes(xPath) int actualCount = nodeArray.length int expectedCount = context.expand( '${#Project#ClientCount}' ).toInteger() assert fixSet.size() == expectedCount log.info "Actual : nodeArray.length of " +xPath+ " : " +actualCount log.info "Expected : nodeArray.length is : " +expectedCount assert actualCount==expectedCount String clientIdPath = xPath + "/@id" String[] valueArray = xmlHolder.getNodeValues(clientIdPath) log.info "valueArray.length of " +clientIdPath+ ":" +valueArray.length assert valueArray != null && valueArray.length> 0 for (String value : valueArray){ log.info "value:" +value assert StringUtils.isNotBlank(value) assert fixSet.contains(value) fixSet.remove(value) } assert fixSet.size() == 0 |