The expression return preg_match(self::PATTERN, $argumentValue) returns the type integer which is incompatible with the return type mandated by Behat\Behat\Transformati...DefinitionAndArgument() of boolean.
In the issue above, the returned value is violating the contract defined by the
mentioned interface.
Let's take a look at an example:
interfaceHasName{/** @return string */publicfunctiongetName();}className{public$name;}classUserimplementsHasName{/** @return string|Name */publicfunctiongetName(){returnnewName('foo');// This is a violation of the ``HasName`` interface// which only allows a string value to be returned.}}
Loading history...
32
}
33
34
public function transformArgument(DefinitionCall $definitionCall, $argumentIndex, $argumentValue)
In the issue above, the returned value is violating the contract defined by the mentioned interface.
Let's take a look at an example: