How to use setFaultCode method of com.consol.citrus.ws.actions.AssertSoapFault class

Best Citrus code snippet using com.consol.citrus.ws.actions.AssertSoapFault.setFaultCode

Source:AssertSoapFaultTest.java Github

copy

Full Screen

...63 }64 });65 66 assertAction.setFaultString("Internal server error");67 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");68 assertAction.setFaultActor("SERVER");69 70 assertAction.execute(context);71 }72 73 @Test74 public void testAssertSoapFaultWithValidationMatchers() throws Exception {75 AssertSoapFault assertAction = new AssertSoapFault();76 assertAction.setValidator(soapFaultValidator);77 assertAction.setAction(new AbstractTestAction() {78 @Override79 public void doExecute(TestContext context) {80 SoapMessage faultMessage;81 82 faultMessage = messageFactory.createWebServiceMessage();83 84 Soap11Fault fault = ((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 85 "Internal server error", 86 Locale.GERMANY);87 88 fault.setFaultActorOrRole("SERVER");89 90 throw new SoapFaultClientException(faultMessage);91 }92 });93 94 assertAction.setFaultString("@equalsIgnoreCase('internal server error')@");95 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");96 assertAction.setFaultActor("@equalsIgnoreCase('server')@");97 98 assertAction.execute(context);99 }100 101 @Test102 public void testNoPrefix() throws Exception {103 AssertSoapFault assertAction = new AssertSoapFault();104 assertAction.setValidator(soapFaultValidator);105 assertAction.setAction(new AbstractTestAction() {106 @Override107 public void doExecute(TestContext context) {108 SoapMessage faultMessage;109 110 faultMessage = messageFactory.createWebServiceMessage();111 112 ((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}TEC-1001"), 113 "Internal server error", 114 Locale.GERMANY);115 116 throw new SoapFaultClientException(faultMessage);117 }118 });119 120 assertAction.setFaultString("Internal server error");121 assertAction.setFaultCode("{http://citrusframework.org}TEC-1001");122 123 assertAction.execute(context);124 }125 126 @Test127 public void testWrongFaultCode() throws Exception {128 AssertSoapFault assertAction = new AssertSoapFault();129 assertAction.setValidator(soapFaultValidator);130 assertAction.setAction(new AbstractTestAction() {131 @Override132 public void doExecute(TestContext context) {133 SoapMessage faultMessage;134 135 faultMessage = messageFactory.createWebServiceMessage();136 137 ((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-2002"), 138 "Internal server error", 139 Locale.GERMANY);140 141 throw new SoapFaultClientException(faultMessage);142 }143 });144 145 assertAction.setFaultString("Internal server error");146 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");147 148 try {149 assertAction.execute(context);150 } catch(IllegalArgumentException e) {151 Assert.assertEquals(e.getMessage(), "SOAP fault validation failed! Fault code does not match - expected: '{http://citrusframework.org}TEC-1001' but was: '{http://citrusframework.org}TEC-2002'");152 return;153 }154 155 Assert.fail("Missing validation exception");156 }157 158 @Test159 public void testWrongFaultActor() throws Exception {160 AssertSoapFault assertAction = new AssertSoapFault();161 assertAction.setValidator(soapFaultValidator);162 assertAction.setAction(new AbstractTestAction() {163 @Override164 public void doExecute(TestContext context) {165 SoapMessage faultMessage;166 faultMessage = messageFactory.createWebServiceMessage();167 168 Soap11Fault fault = ((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 169 "Internal server error", 170 Locale.GERMANY);171 172 fault.setFaultActorOrRole("CLIENT");173 174 throw new SoapFaultClientException(faultMessage);175 }176 });177 178 assertAction.setFaultString("Internal server error");179 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");180 assertAction.setFaultActor("SERVER");181 182 try {183 assertAction.execute(context);184 } catch(IllegalArgumentException e) {185 Assert.assertEquals(e.getMessage(), "SOAP fault validation failed! Fault actor does not match - expected: 'SERVER' but was: 'CLIENT'");186 return;187 }188 189 Assert.fail("Missing validation exception");190 }191 192 @Test193 public void testWrongFaultString() throws Exception {194 AssertSoapFault assertAction = new AssertSoapFault();195 assertAction.setValidator(soapFaultValidator);196 assertAction.setAction(new AbstractTestAction() {197 @Override198 public void doExecute(TestContext context) {199 SoapMessage faultMessage;200 201 faultMessage = messageFactory.createWebServiceMessage();202 203 ((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 204 "Internal server error", 205 Locale.GERMANY);206 207 throw new SoapFaultClientException(faultMessage);208 }209 });210 211 assertAction.setFaultString("Invalid request");212 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");213 214 try {215 assertAction.execute(context);216 } catch(ValidationException e) {217 Assert.assertEquals(e.getMessage(), "SOAP fault validation failed! Fault string does not match - expected: 'Invalid request' but was: 'Internal server error'");218 return;219 }220 221 Assert.fail("Missing validation exception");222 }223 224 @Test225 public void testAssertSoapFaultDetail() throws Exception {226 AssertSoapFault assertAction = new AssertSoapFault();227 assertAction.setValidator(soapFaultValidator);228 assertAction.setAction(new AbstractTestAction() {229 @Override230 public void doExecute(TestContext context) {231 SoapMessage faultMessage;232 233 faultMessage = messageFactory.createWebServiceMessage();234 235 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 236 "Internal server error", 237 Locale.GERMANY);238 239 try {240 TransformerFactory transformerFactory = TransformerFactory.newInstance();241 Transformer transformer = transformerFactory.newTransformer();242 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), fault.addFaultDetail().getResult());243 } catch (TransformerException e) {244 throw new CitrusRuntimeException(e);245 }246 247 throw new SoapFaultClientException(faultMessage);248 }249 });250 251 assertAction.setFaultString("Internal server error");252 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");253 assertAction.getFaultDetails().add("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>");254 255 assertAction.execute(context);256 }257 258 @Test259 public void testAssertSoapFaultDetailVariableSupport() throws Exception {260 AssertSoapFault assertAction = new AssertSoapFault();261 assertAction.setValidator(soapFaultValidator);262 assertAction.setAction(new AbstractTestAction() {263 @Override264 public void doExecute(TestContext context) {265 SoapMessage faultMessage;266 267 faultMessage = messageFactory.createWebServiceMessage();268 269 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 270 "Internal server error", 271 Locale.GERMANY);272 273 try {274 TransformerFactory transformerFactory = TransformerFactory.newInstance();275 Transformer transformer = transformerFactory.newTransformer();276 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), fault.addFaultDetail().getResult());277 } catch (TransformerException e) {278 throw new CitrusRuntimeException(e);279 }280 281 throw new SoapFaultClientException(faultMessage);282 }283 });284 285 context.setVariable("faultReason", "Invalid request");286 287 assertAction.setFaultString("Internal server error");288 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");289 assertAction.getFaultDetails().add("<FaultDetail><Reason>${faultReason}</Reason></FaultDetail>");290 291 assertAction.execute(context);292 }293 294 @Test295 public void testAssertSoapFaultDetailResource() throws Exception {296 AssertSoapFault assertAction = new AssertSoapFault();297 assertAction.setValidator(soapFaultValidator);298 assertAction.setAction(new AbstractTestAction() {299 @Override300 public void doExecute(TestContext context) {301 SoapMessage faultMessage;302 303 faultMessage = messageFactory.createWebServiceMessage();304 305 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 306 "Internal server error", 307 Locale.GERMANY);308 309 try {310 TransformerFactory transformerFactory = TransformerFactory.newInstance();311 Transformer transformer = transformerFactory.newTransformer();312 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), fault.addFaultDetail().getResult());313 } catch (TransformerException e) {314 throw new CitrusRuntimeException(e);315 }316 317 throw new SoapFaultClientException(faultMessage);318 }319 });320 321 assertAction.setFaultString("Internal server error");322 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");323 assertAction.getFaultDetailResourcePaths().add("classpath:com/consol/citrus/ws/actions/test-fault-detail.xml");324 325 assertAction.execute(context);326 }327 328 @Test329 public void testAssertSoapFaultDetailResourceVariableSupport() throws Exception {330 AssertSoapFault assertAction = new AssertSoapFault();331 assertAction.setValidator(soapFaultValidator);332 assertAction.setAction(new AbstractTestAction() {333 @Override334 public void doExecute(TestContext context) {335 SoapMessage faultMessage;336 337 faultMessage = messageFactory.createWebServiceMessage();338 339 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 340 "Internal server error", 341 Locale.GERMANY);342 343 try {344 TransformerFactory transformerFactory = TransformerFactory.newInstance();345 Transformer transformer = transformerFactory.newTransformer();346 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), fault.addFaultDetail().getResult());347 } catch (TransformerException e) {348 throw new CitrusRuntimeException(e);349 }350 351 throw new SoapFaultClientException(faultMessage);352 }353 });354 355 context.setVariable("faultReason", "Invalid request");356 357 assertAction.setFaultString("Internal server error");358 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");359 assertAction.getFaultDetailResourcePaths().add("classpath:com/consol/citrus/ws/actions/test-fault-detail-with-variables.xml");360 361 assertAction.execute(context);362 }363 364 @Test365 public void testAssertMultipleSoapFaultDetails() throws Exception {366 AssertSoapFault assertAction = new AssertSoapFault();367 assertAction.setValidator(soapFaultValidator);368 assertAction.setAction(new AbstractTestAction() {369 @Override370 public void doExecute(TestContext context) {371 SoapMessage faultMessage;372 373 faultMessage = messageFactory.createWebServiceMessage();374 375 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 376 "Internal server error", 377 Locale.GERMANY);378 379 SoapFaultDetail faultDetail = fault.addFaultDetail();380 try {381 TransformerFactory transformerFactory = TransformerFactory.newInstance();382 Transformer transformer = transformerFactory.newTransformer();383 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), faultDetail.getResult());384 transformer.transform(new StringSource("<ErrorDetail><Code>1001</Code></ErrorDetail>"), faultDetail.getResult());385 } catch (TransformerException e) {386 throw new CitrusRuntimeException(e);387 }388 389 throw new SoapFaultClientException(faultMessage);390 }391 });392 393 assertAction.setFaultString("Internal server error");394 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");395 assertAction.getFaultDetails().add("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>");396 assertAction.getFaultDetails().add("<ErrorDetail><Code>1001</Code></ErrorDetail>");397 398 assertAction.execute(context);399 }400 401 @Test402 public void testAssertMultipleSoapFaultDetailsWithResource() throws Exception {403 AssertSoapFault assertAction = new AssertSoapFault();404 assertAction.setValidator(soapFaultValidator);405 assertAction.setAction(new AbstractTestAction() {406 @Override407 public void doExecute(TestContext context) {408 SoapMessage faultMessage;409 410 faultMessage = messageFactory.createWebServiceMessage();411 412 SoapFault fault =((Soap11Body)faultMessage.getSoapBody()).addFault(QNameUtils.parseQNameString("{http://citrusframework.org}ws:TEC-1001"), 413 "Internal server error", 414 Locale.GERMANY);415 416 SoapFaultDetail faultDetail = fault.addFaultDetail();417 try {418 TransformerFactory transformerFactory = TransformerFactory.newInstance();419 Transformer transformer = transformerFactory.newTransformer();420 transformer.transform(new StringSource("<ErrorDetail><Code>1001</Code></ErrorDetail>"), faultDetail.getResult());421 transformer.transform(new StringSource("<FaultDetail><Reason>Invalid request</Reason></FaultDetail>"), faultDetail.getResult());422 } catch (TransformerException e) {423 throw new CitrusRuntimeException(e);424 }425 426 throw new SoapFaultClientException(faultMessage);427 }428 });429 430 assertAction.setFaultString("Internal server error");431 assertAction.setFaultCode("{http://citrusframework.org}ws:TEC-1001");432 assertAction.getFaultDetails().add("<ErrorDetail><Code>1001</Code></ErrorDetail>");433 assertAction.getFaultDetailResourcePaths().add("classpath:com/consol/citrus/ws/actions/test-fault-detail.xml");434 435 assertAction.execute(context);436 }437}...

Full Screen

Full Screen

Source:AssertSoapFault.java Github

copy

Full Screen

...134 /**135 * Set the fault code.136 * @param faultCode the faultCode to set137 */138 public AssertSoapFault setFaultCode(String faultCode) {139 this.faultCode = faultCode;140 return this;141 }142 /**143 * Set the fault string.144 * @param faultString the faultString to set145 */146 public AssertSoapFault setFaultString(String faultString) {147 this.faultString = faultString;148 return this;149 }150 /**151 * @param validator the validator to set152 */...

Full Screen

Full Screen

Source:AssertSoapFaultBuilder.java Github

copy

Full Screen

...75 * @param code76 * @return77 */78 public AssertSoapFaultBuilder faultCode(String code) {79 action.setFaultCode(code);80 return this;81 }82 83 /**84 * Expect fault string in SOAP fault message.85 * @param faultString86 * @return87 */88 public AssertSoapFaultBuilder faultString(String faultString) {89 action.setFaultString(faultString);90 return this;91 }92 93 /**...

Full Screen

Full Screen

setFaultCode

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.ws.actions;2import com.consol.citrus.context.TestContext;3import com.consol.citrus.testng.AbstractTestNGUnitTest;4import com.consol.citrus.ws.message.SoapFault;5import org.springframework.ws.soap.SoapFaultDetail;6import org.testng.Assert;7import org.testng.annotations.Test;8import javax.xml.namespace.QName;9import java.util.HashMap;10import java.util.Map;11public class AssertSoapFaultTest extends AbstractTestNGUnitTest {12 private AssertSoapFault action = new AssertSoapFault();13 public void testAssertFaultCode() {14 SoapFault soapFault = new SoapFault();15 soapFault.setFaultCode(new QName("Client"));16 action.setFaultCode("Client");17 action.setFault(soapFault);18 action.execute(context);19 }20 public void testAssertFaultCodeWithNamespace() {21 SoapFault soapFault = new SoapFault();22 action.setFaultCode("Client");23 action.setFault(soapFault);24 action.execute(context);25 }26 public void testAssertFaultCodeWithFaultCodeExpression() {27 SoapFault soapFault = new SoapFault();28 soapFault.setFaultCode(new QName("Client"));29 action.setFaultCode("${faultCode}");30 action.setFault(soapFault);31 TestContext context = new TestContext();32 context.setVariable("faultCode", "Client");33 action.execute(context);34 }35 public void testAssertFaultCodeWithFaultCodeNamespaceExpression() {36 SoapFault soapFault = new SoapFault();37 action.setFaultCode("Client");38 action.setFaultCodeNamespace("${faultCodeNamespace}");39 action.setFault(soapFault);40 TestContext context = new TestContext();41 action.execute(context);42 }43 public void testAssertFaultCodeWithFaultCodeAndFaultCodeNamespaceExpression() {

Full Screen

Full Screen

setFaultCode

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.samples;2import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;3import org.testng.annotations.Test;4public class 3 extends TestNGCitrusTestDesigner {5public void 3() {6.send()7.post("/sayHello")8.contentType("text/xml")9.soap()10"</soapenv:Envelope>");11.receive()12.response(HttpStatus.BAD_REQUEST)13.soap()14"</soapenv:Envelope>");15}16}17package com.consol.citrus.samples;18import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;19import org.testng.annotations.Test;20public class 4 extends TestNGCitrusTestDesigner {21public void 4() {22.send()23.post("/sayHello")24.contentType("text/xml")25.soap()

Full Screen

Full Screen

setFaultCode

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.ws.actions;2import com.consol.citrus.TestAction;3import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;4import com.consol.citrus.ws.client.WebServiceClient;5import com.consol.citrus.ws.server.WebServiceServer;6import org.springframework.beans.factory.annotation.Autowired;7import org.testng.annotations.Test;8public class AssertSoapFaultJavaIT extends TestNGCitrusTestDesigner {9 private WebServiceClient webServiceClient;10 private WebServiceServer webServiceServer;11 public void configure() {12 variable("faultCode", "Server");13 variable("faultString", "Server error");14 variable("faultDetail", "Server detail");15 variable("faultActor", "Server actor");16 http(httpActionBuilder -> httpActionBuilder17 .client(webServiceClient)18 .send()19 .soap()20 .fault()21 .faultCode("${faultCode}")22 .faultString("${faultString}")23 .faultDetail("${faultDetail}")24 .faultActor("${faultActor}")25 );26 http(httpActionBuilder -> httpActionBuilder27 .server(webServiceServer)28 .receive()29 .soap()30 .fault()31 );32 soap(soapActionBuilder -> soapActionBuilder33 .client(webServiceClient)34 .receive()35 .fault()36 );37 soap(soapActionBuilder -> soapActionBuilder38 .client(webServiceClient)39 .send()40 .fault()41 .faultCode("${faultCode}")42 .faultString("${faultString}")43 .faultDetail("${faultDetail}")44 .faultActor("${faultActor}")45 );46 soap(soapActionBuilder -> soapActionBuilder47 .client(webServiceClient)48 .receive()49 .fault()50 .faultCode("${faultCode}")51 .faultString("${faultString}")52 .faultDetail("${faultDetail}")53 .faultActor("${faultActor}")54 );55 soap(soapActionBuilder -> soapActionBuilder56 .client(webServiceClient)57 .receive()58 .fault()59 .faultCode("${faultCode}")60 .faultString("${faultString}")61 );62 soap(soapActionBuilder -> soapActionBuilder63 .client(webServiceClient)64 .receive()65 .fault()66 .faultCode("${faultCode}")67 );68 soap(soapActionBuilder -> soap

Full Screen

Full Screen

setFaultCode

Using AI Code Generation

copy

Full Screen

1public class 3 extends AbstractTestNGCitrusTest {2 public void 3() {3 variable("faultCode", "soapenv:Client");4 variable("faultString", "Error in request");5 variable("faultDetail", "Request is invalid");6 send("sendRequest");7 receive("receiveResponse");8 assertSoapFault("assertSoapFault")9 .setFaultCode("${faultCode}")10 .setFaultString("${faultString}")11 .setFaultActor("${faultActor}")12 .setFaultDetail("${faultDetail}");13 }14}

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful