public function testStaticMethodCall()
{
$this->doAnalysisTest(function () {
\DateTime::createFromFormat('U', 1993);
}, function (ITypeAnalysis $analysis, O\StaticMethodCallExpression $expression) {
$this->assertEqualsObjectType('DateTime', $analysis->getStaticMethod($expression)->getReturnType());
$this->assertEqualsObjectType('DateTime', $analysis->getStaticMethod($expression)->getSourceType());
$this->assertTypeMatchesValue($analysis, $expression->getArguments()[0]->getValue());
$this->assertTypeMatchesValue($analysis, $expression->getArguments()[1]->getValue());
$this->assertSame('createFromFormat', $analysis->getStaticMethod($expression)->getName());
$this->assertSame('createFromFormat', $analysis->getStaticMethod($expression)->getReflection()->getName());
});
}