/* * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com * The software in this package is published under the terms of the CPAL v1.0 * license, a copy of which has been included with this distribution in the * LICENSE.txt file. */ package org.mule.test.module.extension; import org.mule.runtime.api.lifecycle.InitialisationException; import org.junit.Assert; import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; /** * An {@link AbstractExtensionFunctionalTestCase} which is expected to point to a somewhat invalid config. The test fails if the config is * parsed correctly. * <p> * This class does not require to implement any method annotation with {@link Test} * * @since 4.0 */ public abstract class InvalidExtensionConfigTestCase extends AbstractExtensionFunctionalTestCase { @Rule public ExpectedException expectedException = ExpectedException.none(); @Override protected void doSetUpBeforeMuleContextCreation() throws Exception { configureExceptionAssertions(); } private void configureExceptionAssertions() { // TODO MULE-10061 - Review once the MuleContext lifecycle is clearly defined expectedException.expect(InitialisationException.class); additionalExceptionAssertions(expectedException); } protected void additionalExceptionAssertions(ExpectedException expectedException) {} @Test public void fail() { Assert.fail("Config should have failed to parse"); } }