How to use container method of com.consol.citrus.dsl.design.DefaultTestDesigner class

Best Citrus code snippet using com.consol.citrus.dsl.design.DefaultTestDesigner.container

Source:DefaultTestDesigner.java Github

copy

Full Screen

...46import com.consol.citrus.actions.StopTimerAction;47import com.consol.citrus.actions.TraceVariablesAction;48import com.consol.citrus.actions.TransformAction;49import com.consol.citrus.condition.ActionCondition;50import com.consol.citrus.container.Assert;51import com.consol.citrus.container.Async;52import com.consol.citrus.container.Catch;53import com.consol.citrus.container.Conditional;54import com.consol.citrus.container.FinallySequence;55import com.consol.citrus.container.Iterate;56import com.consol.citrus.container.Parallel;57import com.consol.citrus.container.RepeatOnErrorUntilTrue;58import com.consol.citrus.container.RepeatUntilTrue;59import com.consol.citrus.container.Sequence;60import com.consol.citrus.container.Template;61import com.consol.citrus.container.TestActionContainer;62import com.consol.citrus.container.Timer;63import com.consol.citrus.container.Wait;64import com.consol.citrus.container.WaitActionConditionBuilder;65import com.consol.citrus.context.TestContext;66import com.consol.citrus.dsl.builder.AssertSoapFaultBuilder;67import com.consol.citrus.dsl.builder.CamelRouteActionBuilder;68import com.consol.citrus.dsl.builder.DockerExecuteActionBuilder;69import com.consol.citrus.dsl.builder.HttpActionBuilder;70import com.consol.citrus.dsl.builder.KubernetesExecuteActionBuilder;71import com.consol.citrus.dsl.builder.PurgeJmsQueuesActionBuilder;72import com.consol.citrus.dsl.builder.PurgeMessageChannelActionBuilder;73import com.consol.citrus.dsl.builder.ReceiveMessageActionBuilder;74import com.consol.citrus.dsl.builder.SeleniumActionBuilder;75import com.consol.citrus.dsl.builder.SendMessageActionBuilder;76import com.consol.citrus.dsl.builder.SoapActionBuilder;77import com.consol.citrus.dsl.builder.ZooExecuteActionBuilder;78import com.consol.citrus.endpoint.Endpoint;79import com.consol.citrus.exceptions.CitrusRuntimeException;80import com.consol.citrus.script.GroovyAction;81import com.consol.citrus.server.Server;82import org.springframework.core.io.Resource;83/**84 * Default test builder offers builder pattern methods in order to configure a85 * test case with test actions, variables and properties.86 *87 * @author Christoph Deppisch88 * @since 2.389 */90public class DefaultTestDesigner implements TestDesigner {91 /** This builders test case */92 private final DefaultTestCase testCase;93 /** This runners test context */94 private TestContext context;95 /** Optional stack of containers cached for execution */96 protected Stack<TestActionContainerBuilder<? extends TestActionContainer, ?>> containers = new Stack<>();97 /** Default constructor */98 public DefaultTestDesigner() {99 testCase = new DefaultTestCase();100 testClass(this.getClass());101 name(this.getClass().getSimpleName());102 packageName(this.getClass().getPackage().getName());103 }104 /**105 * Constructor initializing test case.106 * @param testCase107 */108 protected DefaultTestDesigner(DefaultTestCase testCase) {109 this.testCase = testCase;110 }111 /**112 * Constructor using Spring bean application context.113 * @param context114 */115 public DefaultTestDesigner(TestContext context) {116 this();117 this.context = context;118 }119 @Override120 public void testClass(Class<?> type) {121 testCase.setTestClass(type);122 }123 @Override124 public void name(String name) {125 testCase.setName(name);126 }127 @Override128 public void description(String description) {129 testCase.setDescription(description);130 }131 @Override132 public void author(String author) {133 testCase.getMetaInfo().setAuthor(author);134 }135 @Override136 public void packageName(String packageName) {137 testCase.setPackageName(packageName);138 }139 @Override140 public void status(TestCaseMetaInfo.Status status) {141 testCase.getMetaInfo().setStatus(status);142 }143 @Override144 public void creationDate(Date date) {145 testCase.getMetaInfo().setCreationDate(date);146 }147 @Override148 public void groups(String[] groups) {149 testCase.setGroups(groups);150 }151 @Override152 public <T> T variable(String name, T value) {153 testCase.getVariableDefinitions().put(name, value);154 return value;155 }156 @Override157 public void action(TestAction testAction) {158 this.action(() -> testAction);159 }160 @Override161 public void action(TestActionBuilder<?> builder) {162 if (builder instanceof TestActionContainerBuilder<?, ?>) {163 if (containers.lastElement().equals(builder)) {164 containers.pop();165 } else {166 throw new CitrusRuntimeException("Invalid use of action containers - the container execution is not expected!");167 }168 if (builder instanceof FinallySequence.Builder) {169 ((FinallySequence.Builder) builder).getActions().forEach(testCase::addFinalAction);170 return;171 }172 }173 if (containers.isEmpty()) {174 testCase.addTestAction(builder);175 } else {176 containers.lastElement().getActions().add(builder);177 }178 }179 @Override180 public ApplyTestBehaviorAction.Builder applyBehavior(TestBehavior behavior) {181 ApplyTestBehaviorAction.Builder builder = new ApplyTestBehaviorAction.Builder()182 .designer(this)183 .behavior(behavior);184 behavior.setTestContext(context);185 builder.build().execute(context);186 return builder;187 }188 @Override189 public <T extends TestActionContainer, B extends TestActionContainerBuilder<T, B>> TestActionContainerBuilder<T, B> container(T container) {190 TestActionContainerBuilder<T, B> builder = new AbstractTestContainerBuilder<T, B>() {191 @Override192 public B actions(TestActionBuilder<?>... actions) {193 B builder = super.actions(actions);194 DefaultTestDesigner.this.action(builder);195 return builder;196 }197 @Override198 protected T doBuild() {199 return container;200 }201 @Override202 public T build() {203 if (container.getActions().size() > 0) {204 return container;205 }206 return super.build();207 }208 };209 return container(builder);210 }211 @Override212 public <T extends TestActionContainerBuilder<? extends TestActionContainer, ?>> T container(T container) {213 containers.push(container);214 return container;215 }216 @Override217 public CreateVariablesAction.Builder createVariable(String variableName, String value) {218 CreateVariablesAction.Builder builder = CreateVariablesAction.Builder.createVariable(variableName, value);219 action(builder);220 return builder;221 }222 @Override223 public AntRunAction.Builder antrun(String buildFilePath) {224 AntRunAction.Builder builder = AntRunAction.Builder.antrun(buildFilePath);225 action(builder);226 return builder;227 }228 @Override229 public EchoAction.Builder echo(String message) {230 EchoAction.Builder builder = EchoAction.Builder.echo(message);231 action(builder);232 return builder;233 }234 @Override235 public ExecutePLSQLAction.Builder plsql(DataSource dataSource) {236 ExecutePLSQLAction.Builder builder = ExecutePLSQLAction.Builder.plsql(dataSource);237 action(builder);238 return builder;239 }240 @Override241 public ExecuteSQLAction.Builder sql(DataSource dataSource) {242 ExecuteSQLAction.Builder builder = ExecuteSQLAction.Builder.sql(dataSource);243 action(builder);244 return builder;245 }246 @Override247 public ExecuteSQLQueryAction.Builder query(DataSource dataSource) {248 ExecuteSQLQueryAction.Builder builder = ExecuteSQLQueryAction.Builder.query(dataSource);249 action(builder);250 return builder;251 }252 @Override253 public ReceiveTimeoutAction.Builder receiveTimeout(Endpoint messageEndpoint) {254 ReceiveTimeoutAction.Builder builder = ReceiveTimeoutAction.Builder.receiveTimeout(messageEndpoint);255 action(builder);256 return builder;257 }258 @Override259 public ReceiveTimeoutAction.Builder receiveTimeout(String messageEndpointUri) {260 ReceiveTimeoutAction.Builder builder = ReceiveTimeoutAction.Builder.receiveTimeout(messageEndpointUri);261 action(builder);262 return builder;263 }264 @Override265 public FailAction.Builder fail(String message) {266 FailAction.Builder builder = FailAction.Builder.fail(message);267 action(builder);268 return builder;269 }270 @Override271 public InputAction.Builder input() {272 InputAction.Builder builder = InputAction.Builder.input();273 action(builder);274 return builder;275 }276 @Override277 public JavaAction.Builder java(String className) {278 JavaAction.Builder builder = JavaAction.Builder.java(className);279 action(builder);280 return builder;281 }282 @Override283 public JavaAction.Builder java(Class<?> clazz) {284 JavaAction.Builder builder = JavaAction.Builder.java(clazz.getSimpleName());285 action(builder);286 return builder;287 }288 @Override289 public JavaAction.Builder java(Object instance) {290 JavaAction.Builder builder = JavaAction.Builder.java(instance);291 action(builder);292 return builder;293 }294 @Override295 public LoadPropertiesAction.Builder load(String filePath) {296 LoadPropertiesAction.Builder builder = LoadPropertiesAction.Builder.load(filePath);297 action(builder);298 return builder;299 }300 @Override301 public PurgeJmsQueuesActionBuilder purgeQueues() {302 PurgeJmsQueuesActionBuilder builder = new PurgeJmsQueuesActionBuilder();303 builder.withReferenceResolver(context.getReferenceResolver());304 action(builder);305 return builder;306 }307 @Override308 public PurgeMessageChannelActionBuilder purgeChannels() {309 PurgeMessageChannelActionBuilder builder = new PurgeMessageChannelActionBuilder();310 builder.channelResolver(context.getReferenceResolver());311 action(builder);312 return builder;313 }314 @Override315 public PurgeEndpointAction.Builder purgeEndpoints() {316 PurgeEndpointAction.Builder builder = PurgeEndpointAction.Builder.purgeEndpoints()317 .withReferenceResolver(context.getReferenceResolver());318 action(builder);319 return builder;320 }321 @Override322 public ReceiveMessageActionBuilder<?> receive(Endpoint messageEndpoint) {323 ReceiveMessageActionBuilder<?> builder = new ReceiveMessageActionBuilder<>(ReceiveMessageAction.Builder.receive(messageEndpoint)324 .withReferenceResolver(context.getReferenceResolver()));325 action(builder);326 return builder;327 }328 @Override329 public ReceiveMessageActionBuilder<?> receive(String messageEndpointUri) {330 ReceiveMessageActionBuilder<?> builder = new ReceiveMessageActionBuilder<>(ReceiveMessageAction.Builder.receive(messageEndpointUri)331 .withReferenceResolver(context.getReferenceResolver()));332 action(builder);333 return builder;334 }335 @Override336 public SendMessageActionBuilder<?> send(Endpoint messageEndpoint) {337 SendMessageActionBuilder<?> builder = new SendMessageActionBuilder<>(SendMessageAction.Builder.send(messageEndpoint)338 .withReferenceResolver(context.getReferenceResolver()));339 action(builder);340 return builder;341 }342 @Override343 public SendMessageActionBuilder<?> send(String messageEndpointUri) {344 SendMessageActionBuilder<?> builder = new SendMessageActionBuilder<>(SendMessageAction.Builder.send(messageEndpointUri)345 .withReferenceResolver(context.getReferenceResolver()));346 action(builder);347 return builder;348 }349 @Override350 public SleepAction.Builder sleep() {351 SleepAction.Builder builder = SleepAction.Builder.sleep();352 action(builder);353 return builder;354 }355 @Override356 public SleepAction.Builder sleep(long milliseconds) {357 SleepAction.Builder builder = SleepAction.Builder.sleep().milliseconds(milliseconds);358 action(builder);359 return builder;360 }361 @Override362 public SleepAction.Builder sleep(double seconds) {363 SleepAction.Builder builder = SleepAction.Builder.sleep().seconds(seconds);364 action(builder);365 return builder;366 }367 @Override368 public Wait.Builder waitFor() {369 Wait.Builder builder = new Wait.Builder() {370 @Override371 public WaitActionConditionBuilder execution() {372 final Sequence.Builder dummy = new Sequence.Builder();373 DefaultTestDesigner.this.containers.push(dummy);374 return condition(new WaitActionConditionBuilder(new ActionCondition(), this) {375 @Override376 public WaitActionConditionBuilder action(TestActionBuilder<?> action) {377 super.action(action);378 DefaultTestDesigner.this.containers.remove(dummy);379 return this;380 }381 });382 }383 };384 action(builder);385 return builder;386 }387 @Override388 public StartServerAction.Builder start(Server... servers) {389 StartServerAction.Builder builder = StartServerAction.Builder.start(servers);390 action(builder);391 return builder;392 }393 @Override394 public StartServerAction.Builder start(Server server) {395 StartServerAction.Builder builder = StartServerAction.Builder.start(server);396 action(builder);397 return builder;398 }399 @Override400 public StopServerAction.Builder stop(Server... servers) {401 StopServerAction.Builder builder = StopServerAction.Builder.stop(servers);402 action(builder);403 return builder;404 }405 @Override406 public StopServerAction.Builder stop(Server server) {407 StopServerAction.Builder builder = StopServerAction.Builder.stop(server);408 action(builder);409 return builder;410 }411 @Override412 public StopTimeAction.Builder stopTime() {413 StopTimeAction.Builder builder = StopTimeAction.Builder.stopTime();414 action(builder);415 return builder;416 }417 @Override418 public StopTimeAction.Builder stopTime(String id) {419 StopTimeAction.Builder builder = StopTimeAction.Builder.stopTime(id);420 action(builder);421 return builder;422 }423 @Override424 public StopTimeAction.Builder stopTime(String id, String suffix) {425 StopTimeAction.Builder builder = StopTimeAction.Builder.stopTime(id, suffix);426 action(builder);427 return builder;428 }429 @Override430 public TraceVariablesAction.Builder traceVariables() {431 TraceVariablesAction.Builder builder = TraceVariablesAction.Builder.traceVariables();432 action(builder);433 return builder;434 }435 @Override436 public TraceVariablesAction.Builder traceVariables(String... variables) {437 TraceVariablesAction.Builder builder = TraceVariablesAction.Builder.traceVariables(variables);438 action(builder);439 return builder;440 }441 @Override442 public GroovyAction.Builder groovy(String script) {443 GroovyAction.Builder builder = GroovyAction.Builder.groovy(script);444 action(builder);445 return builder;446 }447 @Override448 public GroovyAction.Builder groovy(Resource scriptResource) {449 GroovyAction.Builder builder = GroovyAction.Builder.groovy(scriptResource);450 action(builder);451 return builder;452 }453 @Override454 public TransformAction.Builder transform() {455 TransformAction.Builder builder = new TransformAction.Builder();456 action(builder);457 return builder;458 }459 @Override460 public Assert.Builder assertException() {461 Assert.Builder builder = new Assert.Builder() {462 @Override463 public Assert.Builder actions(TestActionBuilder<?>... actions) {464 Assert.Builder builder = super.actions(actions);465 DefaultTestDesigner.this.action(builder);466 return builder;467 }468 };469 return container(builder);470 }471 @Override472 public Catch.Builder catchException() {473 Catch.Builder builder = new Catch.Builder() {474 @Override475 public Catch.Builder actions(TestActionBuilder<?>... actions) {476 Catch.Builder builder = super.actions(actions);477 DefaultTestDesigner.this.action(builder);478 return builder;479 }480 }.exception(CitrusRuntimeException.class.getName());481 return container(builder);482 }483 @Override484 public AssertSoapFaultBuilder assertSoapFault() {485 AssertSoapFaultBuilder builder = new AssertSoapFaultBuilder() {486 @Override487 public AssertSoapFaultBuilder actions(TestActionBuilder<?>... actions) {488 AssertSoapFaultBuilder builder = super.actions(actions);489 DefaultTestDesigner.this.action(builder);490 return builder;491 }492 };493 builder.withReferenceResolver(context.getReferenceResolver());494 return container(builder);495 }496 @Override497 public Conditional.Builder conditional() {498 Conditional.Builder builder = new Conditional.Builder() {499 @Override500 public Conditional.Builder actions(TestActionBuilder<?>... actions) {501 Conditional.Builder builder = super.actions(actions);502 DefaultTestDesigner.this.action(builder);503 return builder;504 }505 };506 return container(builder);507 }508 @Override509 public Iterate.Builder iterate() {510 Iterate.Builder builder = new Iterate.Builder() {511 @Override512 public Iterate.Builder actions(TestActionBuilder<?>... actions) {513 Iterate.Builder builder = super.actions(actions);514 DefaultTestDesigner.this.action(builder);515 return builder;516 }517 };518 return container(builder);519 }520 @Override521 public Parallel.Builder parallel() {522 Parallel.Builder builder = new Parallel.Builder() {523 @Override524 public Parallel.Builder actions(TestActionBuilder<?>... actions) {525 Parallel.Builder builder = super.actions(actions);526 DefaultTestDesigner.this.action(builder);527 return builder;528 }529 };530 return container(builder);531 }532 @Override533 public RepeatOnErrorUntilTrue.Builder repeatOnError() {534 RepeatOnErrorUntilTrue.Builder builder = new RepeatOnErrorUntilTrue.Builder() {535 @Override536 public RepeatOnErrorUntilTrue.Builder actions(TestActionBuilder<?>... actions) {537 RepeatOnErrorUntilTrue.Builder builder = super.actions(actions);538 DefaultTestDesigner.this.action(builder);539 return builder;540 }541 };542 return container(builder);543 }544 @Override545 public RepeatUntilTrue.Builder repeat() {546 RepeatUntilTrue.Builder builder = new RepeatUntilTrue.Builder() {547 @Override548 public RepeatUntilTrue.Builder actions(TestActionBuilder<?>... actions) {549 RepeatUntilTrue.Builder builder = super.actions(actions);550 DefaultTestDesigner.this.action(builder);551 return builder;552 }553 };554 return container(builder);555 }556 @Override557 public Sequence.Builder sequential() {558 Sequence.Builder builder = new Sequence.Builder() {559 @Override560 public Sequence.Builder actions(TestActionBuilder<?>... actions) {561 Sequence.Builder builder = super.actions(actions);562 DefaultTestDesigner.this.action(builder);563 return builder;564 }565 };566 return container(builder);567 }568 @Override569 public Async.Builder async() {570 Async.Builder builder = new Async.Builder() {571 @Override572 public Async.Builder actions(TestActionBuilder<?>... actions) {573 Async.Builder builder = super.actions(actions);574 DefaultTestDesigner.this.action(builder);575 return builder;576 }577 };578 return container(builder);579 }580 @Override581 public Timer.Builder timer() {582 Timer.Builder builder = new Timer.Builder() {583 @Override584 public Timer.Builder actions(TestActionBuilder<?>... actions) {585 Timer.Builder builder = super.actions(actions);586 DefaultTestDesigner.this.action(builder);587 return builder;588 }589 };590 return container(builder);591 }592 @Override593 public StopTimerAction.Builder stopTimer(String timerId) {594 StopTimerAction.Builder builder = StopTimerAction.Builder.stopTimer(timerId);595 action(builder);596 return builder;597 }598 @Override599 public StopTimerAction.Builder stopTimers() {600 StopTimerAction.Builder builder = StopTimerAction.Builder.stopTimers();601 action(builder);602 return builder;603 }604 @Override605 public DockerExecuteActionBuilder docker() {606 DockerExecuteActionBuilder builder = new DockerExecuteActionBuilder();607 action(builder);608 return builder;609 }610 @Override611 public KubernetesExecuteActionBuilder kubernetes() {612 KubernetesExecuteActionBuilder builder = new KubernetesExecuteActionBuilder();613 action(builder);614 return builder;615 }616 @Override617 public SeleniumActionBuilder selenium() {618 SeleniumActionBuilder builder = new SeleniumActionBuilder();619 action(builder);620 return builder;621 }622 @Override623 public HttpActionBuilder http() {624 HttpActionBuilder builder = new HttpActionBuilder();625 builder.withReferenceResolver(context.getReferenceResolver());626 action(builder);627 return builder;628 }629 @Override630 public SoapActionBuilder soap() {631 SoapActionBuilder builder = new SoapActionBuilder();632 builder.withReferenceResolver(context.getReferenceResolver());633 action(builder);634 return builder;635 }636 @Override637 public CamelRouteActionBuilder camel() {638 CamelRouteActionBuilder builder = new CamelRouteActionBuilder();639 builder.withReferenceResolver(context.getReferenceResolver());640 action(builder);641 return builder;642 }643 @Override644 public ZooExecuteActionBuilder zookeeper() {645 ZooExecuteActionBuilder builder = new ZooExecuteActionBuilder();646 builder.withReferenceResolver(context.getReferenceResolver());647 action(builder);648 return builder;649 }650 @Override651 public Template.Builder applyTemplate(String name) {652 Template.Builder builder = Template.Builder.applyTemplate(name)653 .withReferenceResolver(context.getReferenceResolver());654 action(builder);655 return builder;656 }657 @Override658 public FinallySequence.Builder doFinally() {659 FinallySequence.Builder builder = new FinallySequence.Builder() {660 @Override661 public FinallySequence.Builder actions(TestActionBuilder<?>... actions) {662 FinallySequence.Builder builder = super.actions(actions);663 DefaultTestDesigner.this.action(builder);664 return builder;665 }666 };667 return container(builder);668 }669 /**670 * Builds the test case.671 * @return672 */673 public TestCase getTestCase() {674 return testCase;675 }676 /**677 * Get the test variables.678 * @return679 */680 public Map<String, Object> getVariables() {681 return testCase.getVariableDefinitions();...

Full Screen

Full Screen

Source:JUnit4CitrusTestDesigner.java Github

copy

Full Screen

...42import com.consol.citrus.actions.StopTimeAction;43import com.consol.citrus.actions.StopTimerAction;44import com.consol.citrus.actions.TraceVariablesAction;45import com.consol.citrus.actions.TransformAction;46import com.consol.citrus.container.Assert;47import com.consol.citrus.container.Async;48import com.consol.citrus.container.Catch;49import com.consol.citrus.container.Conditional;50import com.consol.citrus.container.FinallySequence;51import com.consol.citrus.container.Iterate;52import com.consol.citrus.container.Parallel;53import com.consol.citrus.container.RepeatOnErrorUntilTrue;54import com.consol.citrus.container.RepeatUntilTrue;55import com.consol.citrus.container.Sequence;56import com.consol.citrus.container.Template;57import com.consol.citrus.container.TestActionContainer;58import com.consol.citrus.container.Timer;59import com.consol.citrus.container.Wait;60import com.consol.citrus.context.TestContext;61import com.consol.citrus.dsl.builder.AssertSoapFaultBuilder;62import com.consol.citrus.dsl.builder.CamelRouteActionBuilder;63import com.consol.citrus.dsl.builder.DockerExecuteActionBuilder;64import com.consol.citrus.dsl.builder.HttpActionBuilder;65import com.consol.citrus.dsl.builder.KubernetesExecuteActionBuilder;66import com.consol.citrus.dsl.builder.PurgeJmsQueuesActionBuilder;67import com.consol.citrus.dsl.builder.PurgeMessageChannelActionBuilder;68import com.consol.citrus.dsl.builder.ReceiveMessageActionBuilder;69import com.consol.citrus.dsl.builder.SeleniumActionBuilder;70import com.consol.citrus.dsl.builder.SendMessageActionBuilder;71import com.consol.citrus.dsl.builder.SoapActionBuilder;72import com.consol.citrus.dsl.builder.ZooExecuteActionBuilder;73import com.consol.citrus.dsl.design.ApplyTestBehaviorAction;74import com.consol.citrus.dsl.design.DefaultTestDesigner;75import com.consol.citrus.dsl.design.TestBehavior;76import com.consol.citrus.dsl.design.TestDesigner;77import com.consol.citrus.endpoint.Endpoint;78import com.consol.citrus.exceptions.TestCaseFailedException;79import com.consol.citrus.junit.CitrusFrameworkMethod;80import com.consol.citrus.script.GroovyAction;81import com.consol.citrus.server.Server;82import org.springframework.core.io.Resource;83/**84 * JUnit Citrus test provides Java DSL access to builder pattern methods in85 * CitrusTestDesigner by simple method delegation.86 *87 * @author Christoph Deppisch88 * @since 2.389 */90public class JUnit4CitrusTestDesigner extends JUnit4CitrusTest implements TestDesigner {91 /** Test builder delegate */92 private TestDesigner testDesigner;93 @Override94 protected TestDesigner createTestDesigner(CitrusFrameworkMethod frameworkMethod, TestContext context) {95 testDesigner = super.createTestDesigner(frameworkMethod, context);96 return testDesigner;97 }98 @Override99 protected void invokeTestMethod(CitrusFrameworkMethod frameworkMethod, TestCase testCase, TestContext context) {100 if (isConfigure(frameworkMethod.getMethod())) {101 try {102 configure();103 } catch (TestCaseFailedException e) {104 throw e;105 } catch (Exception | AssertionError e) {106 testCase.setTestResult(TestResult.failed(testCase.getName(), testCase.getTestClass().getName(), e));107 testCase.finish(context);108 throw new TestCaseFailedException(e);109 }110 citrus.run(testCase, context);111 } else {112 super.invokeTestMethod(frameworkMethod, testCase, context);113 }114 }115 @Override116 protected final boolean isDesignerMethod(Method method) {117 return true;118 }119 @Override120 protected final boolean isRunnerMethod(Method method) {121 return false;122 }123 /**124 * Main entrance method for builder pattern usage. Subclasses may override125 * this method and call Java DSL builder methods for adding test actions and126 * basic test case properties.127 */128 protected void configure() {129 }130 /**131 * Checks if the given method is this designer's configure method.132 * @param method133 * @return134 */135 private boolean isConfigure(Method method) {136 return method.getDeclaringClass().equals(this.getClass()) && method.getName().equals("configure");137 }138 @Override139 public TestCase getTestCase() {140 return testDesigner.getTestCase();141 }142 @Override143 public void testClass(Class<?> type) {144 testDesigner.testClass(type);145 }146 @Override147 public void name(String name) {148 testDesigner.name(name);149 }150 @Override151 public void description(String description) {152 testDesigner.description(description);153 }154 @Override155 public void author(String author) {156 testDesigner.author(author);157 }158 @Override159 public void packageName(String packageName) {160 testDesigner.packageName(packageName);161 }162 @Override163 public void status(TestCaseMetaInfo.Status status) {164 testDesigner.status(status);165 }166 @Override167 public void creationDate(Date date) {168 testDesigner.creationDate(date);169 }170 @Override171 public void groups(String[] groups) {172 testDesigner.groups(groups);173 }174 @Override175 public <T> T variable(String name, T value) {176 return testDesigner.variable(name, value);177 }178 @Override179 public CreateVariablesAction.Builder createVariable(String variableName, String value) {180 return testDesigner.createVariable(variableName, value);181 }182 @Override183 public void action(TestAction testAction) {184 testDesigner.action(testAction);185 }186 @Override187 public void action(TestActionBuilder<?> builder) {188 testDesigner.action(builder);189 }190 @Override191 public ApplyTestBehaviorAction.Builder applyBehavior(TestBehavior behavior) {192 return testDesigner.applyBehavior(behavior);193 }194 @Override195 public <T extends TestActionContainer, B extends TestActionContainerBuilder<T, B>> TestActionContainerBuilder<T, B> container(T container) {196 return testDesigner.container(container);197 }198 @Override199 public <T extends TestActionContainerBuilder<? extends TestActionContainer, ?>> T container(T container) {200 return testDesigner.container(container);201 }202 @Override203 public AntRunAction.Builder antrun(String buildFilePath) {204 return testDesigner.antrun(buildFilePath);205 }206 @Override207 public EchoAction.Builder echo(String message) {208 return testDesigner.echo(message);209 }210 @Override211 public ExecutePLSQLAction.Builder plsql(DataSource dataSource) {212 return testDesigner.plsql(dataSource);213 }214 @Override...

Full Screen

Full Screen

Source:DockerStepsTest.java Github

copy

Full Screen

...97 }98 @Test99 public void testContainerRunning() {100 steps.setClient("dockerClient");101 steps.containerIsRunning("foo");102 Assert.assertEquals(designer.getTestCase().getActionCount(), 1L);103 Assert.assertTrue(designer.getTestCase().getTestAction(0) instanceof DockerExecuteAction);104 DockerExecuteAction action = (DockerExecuteAction) designer.getTestCase().getTestAction(0);105 Assert.assertEquals(action.getDockerClient(), dockerClient);106 Assert.assertTrue(action.getCommand() instanceof ContainerInspect);107 Assert.assertEquals(action.getCommand().getParameters().get(AbstractDockerCommand.CONTAINER_ID), "foo");108 }109 @Test110 public void testContainerStopped() {111 steps.setClient("dockerClient");112 steps.containerIsStopped("foo");113 Assert.assertEquals(designer.getTestCase().getActionCount(), 1L);114 Assert.assertTrue(designer.getTestCase().getTestAction(0) instanceof DockerExecuteAction);115 DockerExecuteAction action = (DockerExecuteAction) designer.getTestCase().getTestAction(0);116 Assert.assertEquals(action.getDockerClient(), dockerClient);117 Assert.assertTrue(action.getCommand() instanceof ContainerInspect);118 Assert.assertEquals(action.getCommand().getParameters().get(AbstractDockerCommand.CONTAINER_ID), "foo");119 }120 @Test121 public void testDefaultClientInitialization() {122 Assert.assertNull(steps.dockerClient);123 steps.before(Mockito.mock(Scenario.class));124 Assert.assertNotNull(steps.dockerClient);125 }126 @Test...

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1import com.consol.citrus.dsl.design.DefaultTestDesigner;2import com.consol.citrus.dsl.runner.TestRunner;3import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;4import com.consol.citrus.http.client.HttpClient;5import com.consol.citrus.message.MessageType;6import com.consol.citrus.testng.CitrusParameters;7import org.springframework.beans.factory.annotation.Autowired;8import org.springframework.http.HttpStatus;9import org.springframework.http.MediaType;10import org.testng.annotations.Test;11import static org.hamcrest.CoreMatchers.is;12import static org.hamcrest.CoreMatchers.notNullValue;13import static org.hamcrest.CoreMatchers.nullValue;14import static org.hamcrest.Matchers.equalTo;15import static org.hamcrest.Matchers.greaterThan;16public class Test1 extends TestNGCitrusTestDesigner {17 private HttpClient httpClient;18 @CitrusParameters({"user", "email"})19 public void test1(@CitrusResource TestRunner runner) {20 runner.container(new DefaultTestDesigner() {21 public void configure() {22 http(action -> action.client(httpClient)23 .send()24 .post("/users")25 .contentType(MediaType.APPLICATION_JSON_VALUE)26 .payload("{\"name\":\"${user}\", \"email\":\"${email}\"}"));27 http(action -> action.client(httpClient)28 .receive()29 .response(HttpStatus.OK)30 .messageType(MessageType.JSON)31 .validate("$.id", notNullValue())32 .validate("$.name", equalTo("${user}"))33 .validate("$.email", equalTo("${email}")));34 http(action -> action.client(httpClient)35 .send()36 .get("/users/${user}")37 .accept(MediaType.APPLICATION_JSON_VALUE));38 http(action -> action.client(httpClient)39 .receive()40 .response(HttpStatus.OK)41 .messageType(MessageType.JSON)42 .validate("$.id", notNullValue())43 .validate("$.name", equalTo("${user}"))44 .validate("$.email", equalTo("${email}")));45 http(action -> action.client(httpClient)46 .send()47 .delete("/users/${user}"));48 http(action -> action.client(httpClient)49 .receive()50 .response(HttpStatus.OK));51 http(action -> action.client(httpClient)52 .send()53 .get("/users/${user}")54 .accept(MediaType.APPLICATION_JSON_VALUE));55 http(action -> action.client(httpClient)56 .receive()57 .response(HttpStatus.NOT_FOUND));58 }

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1import com.consol.citrus.dsl.design.DefaultTestDesigner;2import com.consol.citrus.dsl.design.TestDesigner;3import com.consol.citrus.dsl.runner.TestRunner;4import com.consol.citrus.dsl.runner.TestRunnerSupport;5import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;6import com.consol.citrus.dsl.testng.TestNGCitrusTestRunner;7import com.consol.citrus.dsl.testng.TestNGCitrusTestRunnerSupport;8import com.consol.citrus.dsl.testng.TestNGCitrusTestSupport;9import com.consol.citrus.testng.CitrusParameters;10import com.consol.citrus.testng.CitrusXmlTestNGCitrusTest;11import com.consol.citrus.xml.XsdSchemaRepository;12import java.util.*;13import org.testng.annotations.*;14import com.consol.citrus.*;15import com.consol.citrus.context.TestContext;16import com.consol.citrus

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1import com.consol.citrus.dsl.design.DefaultTestDesigner;2import com.consol.citrus.dsl.junit.JUnit4CitrusTestDesigner;3import com.consol.citrus.dsl.junit.JUnit4CitrusTestRunner;4import com.consol.citrus.dsl.runner.TestRunner;5import com.consol.citrus.dsl.testng.TestNGCitrusTestRunner;6import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;7import org.testng.annotations.Test;8public class 3 extends TestNGCitrusTestRunner {9 public void test() {10 DefaultTestDesigner builder = new DefaultTestDesigner(applicationContext, context) {11 public void configure() {12 container(new TestNGCitrusTestDesigner(applicationContext, context) {13 public void configure() {14 echo("Hello Citrus!");15 }16 });17 }18 };19 builder.execute();20 }21}22import com.consol.citrus.dsl.design.DefaultTestDesigner;23import com.consol.citrus.dsl.junit.JUnit4CitrusTestDesigner;24import com.consol.citrus.dsl.junit.JUnit4CitrusTestRunner;25import com.consol.citrus.dsl.runner.TestRunner;26import com.consol.citrus.dsl.testng.TestNGCitrusTestRunner;27import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;28import org.testng.annotations.Test;29public class 4 extends TestNGCitrusTestRunner {30 public void test() {31 DefaultTestDesigner builder = new DefaultTestDesigner(applicationContext, context) {32 public void configure() {33 container(new TestNGCitrusTestDesigner(applicationContext, context) {34 public void configure() {35 echo("Hello Citrus!");36 }37 });38 }39 };40 builder.execute();41 }42}43import com.consol.citrus.dsl.design.DefaultTestDesigner;44import com.consol.citrus.dsl.junit.JUnit4CitrusTestDesigner;45import com.consol.citrus.dsl.junit.JUnit4CitrusTestRunner;46import com.consol.citrus.dsl.runner.TestRunner;47import

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.dsl.design;2import com.consol.citrus.dsl.junit.JUnit4CitrusTestDesigner;3import com.consol.citrus.dsl.runner.TestRunner;4import com.consol.citrus.http.client.HttpClient;5import com.consol.citrus.http.server.HttpServer;6import com.consol.citrus.message.MessageType;7import org.springframework.context.annotation.Bean;8import org.springframework.context.annotation.Configuration;9import org.testng.annotations.Test;10public class ContainerTest extends JUnit4CitrusTestDesigner {11 public void containerTest() {12 description("Container Test");13 variable("message", "Hello Citrus!");14 container(http().server(httpServer())15 .receive()16 .post()17 .messageType(MessageType.PLAINTEXT)18 .payload("Hello Citrus!"));19 container(http().client(httpClient())20 .send()21 .post()22 .messageType(MessageType.PLAINTEXT)23 .payload("${message}"));24 container(http().client(httpClient())25 .receive()26 .response(HttpStatus.OK)27 .messageType(MessageType.PLAINTEXT)28 .payload("Hello Citrus!"));29 }30 public HttpServer httpServer() {31 return new HttpServer();32 }33 public HttpClient httpClient() {34 return new HttpClient();35 }36}37package com.consol.citrus.dsl.runner;38import com.consol.citrus.container.*;39import com.consol.citrus.dsl.junit.JUnit4CitrusTestDesigner;40import com.consol.citrus.dsl.runner.TestRunner;41import com.consol.citrus.http.client.HttpClient;42import com.consol.citrus.http.server.HttpServer;43import com.consol.citrus.message.MessageType;44import org.springframework.context.annotation.Bean;45import org.springframework.context.annotation.Configuration;46import org.testng.annotations.Test;47public class ContainerTest extends JUnit4CitrusTestDesigner {48 public void containerTest() {49 description("Container Test");50 variable("message", "Hello Citrus!");51 container(http().server(httpServer())52 .receive()53 .post()54 .messageType(MessageType.PLAINTEXT)55 .payload("Hello Citrus!"));56 container(http().client(httpClient())57 .send()58 .post()

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.dsl.design;2import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;3import org.testng.annotations.Test;4public class ContainerMethodTest extends TestNGCitrusTestDesigner {5 public void configure() {6 variable("var1", "value1");7 variable("var2", "value2");8 variable("var3", "value3");9 variable("var4", "value4");10 variable("var5", "value5");11 variable("var6", "value6");12 variable("var7", "value7");13 variable("var8", "value8");14 variable("var9", "value9");15 variable("var10", "value10");16 variable("var11", "value11");17 variable("var12", "value12");18 variable("var13", "value13");19 variable("var14", "value14");20 variable("var15", "value15");21 variable("var16", "value16");22 variable("var17", "value17");23 variable("var18", "value18");24 variable("var19", "value19");25 variable("var20", "value20");26 variable("var21", "value21");27 variable("var22", "value22");28 variable("var23", "value23");29 variable("var24", "value24");30 variable("var25", "value25");31 variable("var26", "value26");32 variable("var27", "value27");33 variable("var28", "value28");34 variable("var29", "value29");35 variable("var30", "value30");36 variable("var31", "value31");37 variable("var32", "value32");38 variable("var33", "value33");39 variable("var34", "value34");40 variable("var35", "value35");41 variable("var36", "value36");42 variable("var37", "value37");43 variable("var38", "value38");44 variable("var39", "value39");45 variable("var40", "value40");46 variable("var41", "value41");47 variable("var42", "value42");48 variable("var43", "value43");49 variable("var44", "value44");

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1package com.consol.citrus.dsl.design;2import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;3import org.testng.annotations.Test;4import javax.xml.bind.JAXBContext;5import javax.xml.bind.JAXBException;6import javax.xml.bind.Marshaller;7import javax.xml.transform.stream.StreamResult;8import java.io.StringWriter;9public class ContainerTest extends TestNGCitrusTestDesigner {10 public void containerTest() {11 container("container").actions(12 echo("Hello Citrus!"),13 echo("Hello Citrus!"),14 echo("Hello Citrus!"),15 echo("Hello Citrus!"),16 echo("Hello Citrus!")17 );18 }19}20package com.consol.citrus.dsl.design;21import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;22import org.testng.annotations.Test;23public class CreateVariableTest extends TestNGCitrusTestDesigner {24 public void createVariableTest() {25 createVariable("message", "Hello Citrus!");26 }27}28package com.consol.citrus.dsl.design;29import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;30import org.testng.annotations.Test;31public class EchoTest extends TestNGCitrusTestDesigner {32 public void echoTest() {33 echo("Hello Citrus!");34 }35}36package com.consol.citrus.dsl.design;37import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;38import org.testng.annotations.Test;39public class FailTest extends TestNGCitrusTestDesigner {40 public void failTest() {41 fail("Oops, something went wrong!");42 }43}44package com.consol.citrus.dsl.design;45import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;46import org.testng.annotations.Test;

Full Screen

Full Screen

container

Using AI Code Generation

copy

Full Screen

1import com.consol.citrus.dsl.design.*;2import com.consol.citrus.dsl.runner.*;3import com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner;4import com.consol.citrus.message.builder.ObjectMappingPayloadBuilder;5import com.consol.citrus.message.builder.PayloadTemplateMessageBuilder;6import com.consol.citrus.message.builder.PayloadVariableMessageBuilder;7import com.consol.citrus.message.builder.StaticMessageContentBuilder;8import com.consol.citrus.testng.CitrusParameters;9import org.springframework.http.HttpMethod;10import org.springframework.http.HttpStatus;11import org.testng.annotations.*;12import com.consol.citrus.dsl

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