All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.junit.gen5.api.extension.ExtendWith Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2015-2016 the original author or authors.
 *
 * All rights reserved. This program and the accompanying materials are
 * made available under the terms of the Eclipse Public License v1.0 which
 * accompanies this distribution and is available at
 *
 * http://www.eclipse.org/legal/epl-v10.html
 */

package org.junit.gen5.api.extension;

import static org.junit.gen5.commons.meta.API.Usage.Experimental;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import org.junit.gen5.commons.meta.API;

/**
 * {@code @ExtendWith} is a {@linkplain Repeatable repeatable} annotation
 * that is used to register {@linkplain Extension extensions} for the
 * annotated test class or test method.
 *
 * 

Supported Extension APIs

*
    *
  • {@link ContainerExecutionCondition}
  • *
  • {@link TestExecutionCondition}
  • *
  • {@link InstancePostProcessor}
  • *
  • {@link MethodParameterResolver}
  • *
  • {@link BeforeEachExtensionPoint}
  • *
  • {@link AfterEachExtensionPoint}
  • *
  • {@link BeforeAllExtensionPoint}
  • *
  • {@link AfterAllExtensionPoint}
  • *
* * @since 5.0 * @see Extension * @see ExtensionRegistrar */ @Target({ ElementType.TYPE, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @Repeatable(Extensions.class) @API(Experimental) public @interface ExtendWith { Class[]value(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy