public function parseSplitsUpTheExpressionIntoDesignatorsAndPassesTheOperatorsToTheDesginatorParseMethod()
{
$mockMethods = ['parseDesignatorPointcut', 'parseDesignatorClass', 'parseDesignatorMethod', 'parseDesignatorWithin', 'parseDesignatorFilter', 'parseDesignatorSetting'];
$parser = $this->getMockBuilder(PointcutExpressionParser::class)->setMethods($mockMethods)->disableOriginalConstructor()->getMock();
$parser->injectObjectManager($this->mockObjectManager);
$parser->expects($this->once())->method('parseDesignatorClass')->with('&&', 'Foo');
$parser->expects($this->once())->method('parseDesignatorMethod')->with('||', 'Foo->Bar()');
$parser->expects($this->once())->method('parseDesignatorWithin')->with('&&!', 'Bar');
$parser->parse('class(Foo) || method(Foo->Bar()) && !within(Bar)', 'Unit Test');
}