public function assertStackString($string)
{
$throwRegex = "\t" . '([0-9 ]*?)\\. \\[throwable\\] ([a-zA-Z0-9\\\\-_\\. ]*?)\\(\\.\\.\\.\\) in ([a-zA-Z0-9\\\\-_\\.," ]*?)(.+)([0-9]*?)';
$callRegex = "\t" . '([0-9 ]*?)\\. \\[call\\] ([a-zA-Z0-9\\\\-_\\. ]*?)(->|::)([a-zA-Z0-9\\\\-_\\. ]*?)\\(([a-zA-Z0-9\\\\-_\\.," ]*?)\\) in ([a-zA-Z0-9\\\\-_\\.," ]*?)(.+)([0-9]*?)';
$mainRegex = "\t" . '([0-9 ]*?)\\. \\[main\\]';
$regex = '(' . implode('|', [$throwRegex, $callRegex, $mainRegex]) . ')';
$this->assertRegExp('#^' . $regex . '$#msi', $string);
}