Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/*
* Copyright 2015-2024 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 v2.0 which
* accompanies this distribution and is available at
*
* https://www.eclipse.org/legal/epl-v20.html
*/
package org.junit.jupiter.params.provider;
import static org.apiguardian.api.API.Status.STABLE;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.apiguardian.api.API;
import org.junit.jupiter.params.ParameterizedTest;
/**
* {@code @MethodSource} is an {@link ArgumentsSource} which provides access
* to values returned from {@linkplain #value() factory methods} of the class in
* which this annotation is declared or from static factory methods in external
* classes referenced by fully qualified method name.
*
*
Each factory method must generate a stream of arguments,
* and each set of "arguments" within the "stream" will be provided as the physical
* arguments for individual invocations of the annotated
* {@link ParameterizedTest @ParameterizedTest} method. Generally speaking this
* translates to a {@link java.util.stream.Stream Stream} of {@link Arguments}
* (i.e., {@code Stream}); however, the actual concrete return type
* can take on many forms. In this context, a "stream" is anything that JUnit
* can reliably convert into a {@code Stream}, such as
* {@link java.util.stream.Stream Stream},
* {@link java.util.stream.DoubleStream DoubleStream},
* {@link java.util.stream.LongStream LongStream},
* {@link java.util.stream.IntStream IntStream},
* {@link java.util.Collection Collection},
* {@link java.util.Iterator Iterator},
* {@link Iterable}, an array of objects, or an array of primitives. Each set of
* "arguments" within the "stream" can be supplied as an instance of
* {@link Arguments}, an array of objects (e.g., {@code Object[]},
* {@code String[]}, etc.), or a single value if the parameterized test
* method accepts a single argument.
*
*
Please note that a one-dimensional array of objects supplied as a set of
* "arguments" will be handled differently than other types of arguments.
* Specifically, all of the elements of a one-dimensional array of objects will
* be passed as individual physical arguments to the {@code @ParameterizedTest}
* method. This behavior can be seen in the table below for the
* {@code static Stream