@Target(value={ANNOTATION_TYPE,METHOD}) @Retention(value=RUNTIME) @Documented @API(status=EXPERIMENTAL, since="5.0") @ArgumentsSource(value=CsvFileArgumentsProvider.class) public @interface CsvFileSource
@CsvFileSource
is an ArgumentsSource
which is used to load
comma-separated value (CSV) files from one or more classpath resources
.
The lines of these CSV files will be provided as arguments to the
annotated @ParameterizedTest
method. Any line beginning with a
#
symbol will be interpreted as a comment and will be ignored.
CsvSource
,
ArgumentsSource
,
ParameterizedTest
Modifier and Type | Required Element and Description |
---|---|
java.lang.String[] |
resources
The CSV classpath resources to use as the sources of arguments; must not be
empty.
|
Modifier and Type | Optional Element and Description |
---|---|
char |
delimiter
The column delimiter character to use when reading the CSV files.
|
java.lang.String |
delimiterString
The column delimiter string to use when reading the CSV files.
|
java.lang.String |
emptyValue
The empty value to use when reading the CSV files.
|
java.lang.String |
encoding
The encoding to use when reading the CSV files; must be a valid charset.
|
java.lang.String |
lineSeparator
The line separator to use when reading the CSV files; must consist of 1
or 2 characters.
|
java.lang.String[] |
nullValues
A list of strings that should be interpreted as
null references. |
int |
numLinesToSkip
The number of lines to skip when reading the CSV files.
|
public abstract java.lang.String[] resources
public abstract java.lang.String encoding
Defaults to "UTF-8"
.
StandardCharsets
public abstract java.lang.String lineSeparator
Defaults to "\n"
.
public abstract char delimiter
This is an alternative to delimiterString()
and cannot be
used in conjunction with delimiterString()
.
Defaults implicitly to ','
, if neither delimiter attribute is
explicitly set.
@API(status=EXPERIMENTAL, since="5.6") public abstract java.lang.String delimiterString
This is an alternative to delimiter()
and cannot be used in
conjunction with delimiter()
.
Defaults implicitly to ","
, if neither delimiter attribute is
explicitly set.
@API(status=EXPERIMENTAL, since="5.1") public abstract int numLinesToSkip
Typically used to skip header lines.
Defaults to 0
.
@API(status=EXPERIMENTAL, since="5.5") public abstract java.lang.String emptyValue
This value replaces quoted empty strings read from the input.
Defaults to ""
.
@API(status=EXPERIMENTAL, since="5.6") public abstract java.lang.String[] nullValues
null
references.
For example, you may wish for certain values such as "N/A"
or
"NIL"
to be converted to null
references.
Please note that unquoted empty values will always be converted
to null
references regardless of the value of this nullValues
attribute; whereas, a quoted empty string will be treated as an
emptyValue()
.
Defaults to {}
.