/** * @test * @group library */ public function getByIdShouldThrowExceptionIfTemplateSnippetNotExists() { $websiteId = 'SITE-template-snip-pet0-test-000000000001-SITE'; $idOfANotExistingSnippet = 'TPLS-template-snip-pet0-not0-existing0001-TPLS'; $snippetExists = false; $existingTemplateSnippets = $this->service->getAll($websiteId); foreach ($existingTemplateSnippets as $snippet) { if ($idOfANotExistingSnippet == $snippet->getId()) { $snippetExists = true; break; } } $this->assertFalse($snippetExists, sprintf('The TemplateSnippet (%s) exists.', $idOfANotExistingSnippet)); try { $this->service->getById($websiteId, $idOfANotExistingSnippet); } catch (CmsException $e) { if ($e->getCode() == 1602) { return; } $this->fail(sprintf('Wrong CmsException (%s) with code "%d" has been raised, code 1602 expected.', $e->getMessage(), $e->getCode())); } catch (\Exception $e) { $this->fail(sprintf('Wrong exception (%s) has been raised.', $e->getMessage())); } $this->fail('The expected CmsException with code 1602 has not been raised.'); }
/** * @test * @group small * @group dev * @group library */ public function test_updateAllContentsOfWebsite_success() { // ARRANGE $websiteId = 'SITE-update00-defa-ult0-form-values000001-SITE'; $templateSnippetId = 'TPLS-update00-defa-ult0-form-values000001-TPLS'; $templateId = 'TPL-update00-defa-ult0-form-values000001-TPL'; $pageId = 'PAGE-update00-defa-ult0-form-values000001-PAGE'; $orgTemplateContentChecksum = 'theoriginaltemplatechecksum'; $contentUpdaterBusiness = new ContentUpdaterBusiness('ContentUpdater'); $templateSnippetService = new TemplateSnippetService('TemplateSnippet'); $templateService = new TemplateService('Template'); $pageService = new PageService('Page'); $expectedSnippetContent = json_decode(FS::readContentFromFile(FS::joinPath($this->jsonFilesDirectory, 'expected_templatesnippet_content.json'))); $expectedTemplateContent = json_decode(FS::readContentFromFile(FS::joinPath($this->jsonFilesDirectory, 'expected_template_content.json'))); $expectedPageContent = json_decode(FS::readContentFromFile(FS::joinPath($this->jsonFilesDirectory, 'expected_page_1_content.json'))); // ACT $contentUpdaterBusiness->updateAllContentsOfWebsite($websiteId); // ASSERT $snippet = $templateSnippetService->getById($websiteId, $templateSnippetId); $actualSnippetContent = json_decode($snippet->getContent()); $this->assertEquals($expectedSnippetContent, $actualSnippetContent); $template = $templateService->getById($templateId, $websiteId); $this->assertNotSame($orgTemplateContentChecksum, $template->getContentchecksum()); $actualTemplateContent = json_decode($template->getContent()); $this->assertEquals($expectedTemplateContent, $actualTemplateContent); $page = $pageService->getById($pageId, $websiteId); $this->assertNotSame($orgTemplateContentChecksum, $page->getTemplatecontentchecksum()); $actualPageContent = json_decode($page->getContent()); $this->assertFormValuesOfPageContent($expectedPageContent, $actualPageContent); }
/** * @test * @group library */ public function createShouldStoreExpectedTemplateSnippet() { $websiteId = 'SITE-template-snip-pet0-test-000000000001-SITE'; $create = array('name' => __METHOD__, 'description' => 'TEMPLATE_SNIPPET_DESCRIPTION_' . __METHOD__, 'category' => 'TEMPLATE_SNIPPET_CATEGORY_' . __METHOD__, 'content' => '[]'); $snippetId = $this->service->create($websiteId, $create); $createdTemplateSnippet = $this->service->getById($websiteId, $snippetId->getId()); $this->assertInstanceOf('Cms\\Data\\TemplateSnippet', $createdTemplateSnippet); $this->assertSame($create['name'], $createdTemplateSnippet->getName()); $this->assertSame($create['description'], $createdTemplateSnippet->getDescription()); $this->assertSame($create['category'], $createdTemplateSnippet->getCategory()); $this->assertSame($create['content'], $createdTemplateSnippet->getContent()); $uuidValidator = new UniqueIdValidator(\Orm\Data\TemplateSnippet::ID_PREFIX, \Orm\Data\TemplateSnippet::ID_SUFFIX); $this->assertTrue($uuidValidator->isValid($createdTemplateSnippet->getId())); // Timestamp der letzten Aenderung darf nicht aelter sein als ein paar Sekunden $this->assertNotNull($createdTemplateSnippet->getLastupdate()); $currentTime = time(); $this->assertLessThanOrEqual($currentTime, $createdTemplateSnippet->getLastupdate()); $this->assertGreaterThan($currentTime - 2, $createdTemplateSnippet->getLastupdate()); }
/** * @test * @group small * @group dev * @group library */ public function test_updateDefaultFormValuesOfTemplate_success() { // ARRANGE $websiteId = 'SITE-update00-defa-ult0-form-values000001-SITE'; $templateSnippetId = 'TPLS-update00-defa-ult0-form-values000001-TPLS'; $contentUpdaterService = new ContentUpdaterService('ContentUpdater'); $templateSnippetService = new TemplateSnippetService('TemplateSnippet'); $expectedContent = json_decode(FS::readContentFromFile(FS::joinPath($this->jsonFilesDirectory, 'expected_templatesnippet_content.json'))); // ACT $contentUpdaterService->updateDefaultFormValuesOfTemplateSnippet($websiteId, $templateSnippetId); // ASSERT $templateSnippet = $templateSnippetService->getById($websiteId, $templateSnippetId); $actualContent = json_decode($templateSnippet->getContent()); $this->assertEquals($expectedContent, $actualContent); }