Assert.assertEquals(failureStackElement.getStackMessage(), "at com/consol/citrus/util/FailureStackExampleTest(sequential:25)");
Assert.assertEquals(failureStackElement.getLineNumberStart().longValue(), 25L);
}
public void testActionFailingInContainerHierarchy() {
TestCase test = new TestCase();
test.setPackageName("com.consol.citrus.util");
test.setName("FailureStackExampleTest");
TestAction failedAction = new MockedTestAction("sleep");
List<TestAction> actions = new ArrayList<TestAction>();
actions.add(new MockedTestAction("sleep"));
actions.add(new MockedActionContainer("parallel",
new MockedTestAction("sleep"),
new MockedTestAction("fail"),
new MockedActionContainer("sequential", new MockedTestAction("sleep"), new MockedTestAction("echo"))));
actions.add(new MockedTestAction("sleep"));
TestAction failedContainer = new MockedActionContainer("iterate", failedAction);
((TestActionContainer)failedContainer).setLastExecutedAction(failedAction);
TestAction nestedContainer = new MockedActionContainer("sequential",
new MockedTestAction("echo"),
new MockedTestAction("sleep"),
failedContainer);
((TestActionContainer)nestedContainer).setLastExecutedAction(failedContainer);
actions.add(nestedContainer);
actions.add(new MockedTestAction("fail"));
actions.add(new MockedTestAction("echo"));
test.setActions(actions);
test.setLastExecutedAction(nestedContainer);
List<FailureStackElement> failureStack = TestUtils.getFailureStack(test);
Assert.assertFalse(failureStack.isEmpty());
Assert.assertTrue(failureStack.size() == 3);