Neos\Neos\Tests\Unit\Domain\Service\ContentContextFactoryTest::createWillSetDomainAndSiteFromCurrentRequestIfNotGiven PHP Метод

createWillSetDomainAndSiteFromCurrentRequestIfNotGiven() публичный Метод

    public function createWillSetDomainAndSiteFromCurrentRequestIfNotGiven()
    {
        $mockDomainRepository = $this->getMockBuilder(DomainRepository::class)->disableOriginalConstructor()->getMock();
        $mockSite = $this->getMockBuilder(Site::class)->disableOriginalConstructor()->getMock();
        $mockDomain = $this->getMockBuilder(Domain::class)->disableOriginalConstructor()->getMock();
        $mockDomain->expects($this->atLeastOnce())->method('getSite')->will($this->returnValue($mockSite));
        $mockDomainRepository->expects($this->atLeastOnce())->method('findOneByActiveRequest')->will($this->returnValue($mockDomain));
        $mockSiteRepository = $this->getMockBuilder(SiteRepository::class)->disableOriginalConstructor()->getMock();
        $mockSiteRepository->expects($this->any())->method('findFirstOnline')->will($this->returnValue(null));
        $contentContextFactory = $this->getMockBuilder(ContentContextFactory::class)->setMethods(['validateContextProperties', 'mergeDimensionValues', 'mergeTargetDimensionContextProperties', 'getIdentifier'])->disableOriginalConstructor()->getMock();
        $contentContextFactory->expects($this->atLeastOnce())->method('getIdentifier')->will($this->returnValue('abc'));
        $this->inject($contentContextFactory, 'domainRepository', $mockDomainRepository);
        $this->inject($contentContextFactory, 'siteRepository', $mockSiteRepository);
        $this->inject($contentContextFactory, 'now', new \DateTime());
        /** @var ContentContext $context */
        $context = $contentContextFactory->create(['workspaceName' => 'user-test']);
        $this->assertEquals($mockSite, $context->getCurrentSite());
        $this->assertEquals($mockDomain, $context->getCurrentDomain());
    }