fun <T : CharSequence> CharSequenceContains.CheckerStep<T, NoOpSearchBehaviour>.regex(pattern: String, vararg otherPatterns: String): Expect<T>
(source)
Finishes the specification of the sophisticated contains
assertion where the given regular expression pattern
as well as the otherPatterns are expected to have a match, using a non-disjoint search.
By non-disjoint is meant that "aa"
in "aaaa"
is found three times and not only two times.
Also notice, that it does not search for unique matches. Meaning, if the input of the search is "ab"
and pattern
is defined as "a(b)?"
and one of the otherPatterns is defined as "a(b)?"
as well, then both match, even though
they match the same sequence in the input of the search. Use an option such as atLeast, atMost and exactly to
control the number of occurrences you expect.
Meaning you might want to use:
contains.exactly(2).regex("a(b)?")
instead of:
contains.atLeast(1).regex("a(b)?", "a(b)?")
pattern
- The pattern which is expected to have a match against the input of the search.
otherPatterns
- Additional patterns which are expected to have a match against the input of the search.
Return
an Expect for the subject of this
expectation.
fun <T : CharSequence> CharSequenceContains.CheckerStep<T, NoOpSearchBehaviour>.regex(pattern: Regex, vararg otherPatterns: Regex): Expect<T>
(source)
Finishes the specification of the sophisticated contains
assertion where the given Regex
as well as the otherPatterns are expected to have a match, using a non-disjoint search.
By non-disjoint is meant that "aa"
in "aaaa"
is found three times and not only two times.
Also notice, that it does not search for unique matches. Meaning, if the input of the search is "ab"
and pattern
is defined as "a(b)?"
and one of the otherPatterns is defined as "a(b)?"
as well, then both match, even though
they match the same sequence in the input of the search. Use an option such as atLeast, atMost and exactly to
control the number of occurrences you expect.
Meaning you might want to use:
contains.exactly(2).regex(Regex("a(b)?"))
instead of:
contains.atLeast(1).regex(Regex("a(b)?"), Regex("a(b)?"))
pattern
- The pattern which is expected to have a match against the input of the search.
otherPatterns
- Additional patterns which are expected to have a match against the input of the search.
Return
an Expect for the subject of this
expectation.
Since
0.9.0
@JvmName("regexIgnoringCase") fun <T : CharSequence> CharSequenceContains.CheckerStep<T, IgnoringCaseSearchBehaviour>.regex(pattern: String, vararg otherPatterns: String): Expect<T>
(source)
Finishes the specification of the sophisticated contains
assertion where the given regular expression pattern
as well as the otherPatterns are expected to have a match (ignoring case), using a non-disjoint search.
By non-disjoint is meant that "aa"
in "aaaa"
is found three times and not only two times.
Also notice, that it does not search for unique matches. Meaning, if the input of the search is "ab"
and pattern
is defined as "a(b)?"
and one of the otherPatterns is defined as "a(b)?"
as well, then both match, even though
they match the same sequence in the input of the search. Use an option such as atLeast, atMost and exactly to
control the number of occurrences you expect.
Meaning you might want to use:
contains.ignoringCase.exactly(2).regex("a(b)?")
instead of:
contains.ignoringCase.atLeast(1).regex("a(b)?", "a(b)?")
pattern
- The pattern which is expected to have a match against the input of the search.
otherPatterns
- Additional patterns which are expected to have a match against the input of the search.
Return
an Expect for the subject of this
expectation.
fun <T : CharSequence> CharSequenceContains.EntryPointStep<T, IgnoringCaseSearchBehaviour>.regex(pattern: String, vararg otherPatterns: String): Expect<T>
(source)
Finishes the specification of the sophisticated contains
assertion where the given regular expression pattern
as well as the otherPatterns are expected to to have at least one match (ignoring case),
using a non-disjoint search.
Delegates to atLeast(1).regex(pattern, otherPatterns)
By non-disjoint is meant that "aa"
in "aaaa"
is found three times and not only two times.
Also notice, that it does not search for unique matches. Meaning, if the input of the search is "ab"
and pattern
is defined as "a(b)?"
and one of the otherPatterns is defined as "a(b)?"
as well, then both match, even though
they match the same sequence in the input of the search. Use an option such as atLeast, atMost and exactly
to control the number of occurrences you expect.
Meaning you might want to use:
contains.ignoringCase.exactly(2).regex("a(b)?")
instead of:
contains.ignoringCase.atLeast(1).regex("a(b)?", "a(b)?")
pattern
- The pattern which is expected to have a match against the input of the search.
otherPatterns
- Additional patterns which are expected to have a match against the input of the search.
Return
an Expect for the subject of this
expectation.