+ private static NetconfMessage createMultiErrorResponseMessage(final String messageID) throws Exception {
+ // multiple rpc-errors which simulate actual response like in NETCONF-666
+ String xmlStr = "<nc:rpc-reply xmlns:nc=\"urn:ietf:params:xml:ns:netconf:base:1.0\" xmlns=\"urn:ietf:params:xml:ns:netconf:base:1.0\" xmlns:junos=\"http://xml.juniper.net/junos/18.4R1/junos\""
+ + " message-id=\"" + messageID + "\">"
+ + "<nc:rpc-error>\n"
+ + "<nc:error-type>protocol</nc:error-type>\n"
+ + "<nc:error-tag>operation-failed</nc:error-tag>\n"
+ + "<nc:error-severity>error</nc:error-severity>\n"
+ + "<source-daemon>\n"
+ + "dcd\n"
+ + "</source-daemon>\n"
+ + "<nc:error-message>\n"
+ + "Number of member links configured, i.e [1], "
+ + "for interface [ae0]is lesser than the required minimum [2].\n"
+ + "</nc:error-message>\n"
+ + "</nc:rpc-error>\n"
+ + "<nc:rpc-error>\n"
+ + "<nc:error-type>protocol</nc:error-type>\n"
+ + "<nc:error-tag>operation-failed</nc:error-tag>\n"
+ + "<nc:error-severity>error</nc:error-severity>\n"
+ + "<nc:error-message>\n"
+ + "configuration check-out failed\n"
+ + "</nc:error-message>\n"
+ + "</nc:rpc-error>\n"
+ + "</nc:rpc-reply>";
+
+ ByteArrayInputStream bis = new ByteArrayInputStream(xmlStr.getBytes());
+ Document doc = UntrustedXML.newDocumentBuilder().parse(bis);
+ return new NetconfMessage(doc);
+ }
+