21 class AddTest extends \TYPO3\TestingFramework\Core\Functional\FunctionalTestCase
31 protected $testExtensionsToLoad = [
'typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/blog_example'];
51 protected function setUp()
55 $this->objectManager = GeneralUtility::makeInstance(\
TYPO3\CMS\
Extbase\Object\ObjectManager::class);
56 $this->persistentManager = $this->objectManager->get(\
TYPO3\CMS\
Extbase\Persistence\Generic\PersistenceManager::class);
57 $this->blogRepository = $this->objectManager->get(\
ExtbaseTeam\BlogExample\Domain\Repository\BlogRepository::class);
66 $newBlogTitle =
'aDi1oogh';
67 $newBlog = $this->objectManager->get(\
ExtbaseTeam\BlogExample\Domain\Model\Blog::class);
68 $newBlog->setTitle($newBlogTitle);
71 $this->blogRepository->add($newBlog);
72 $this->persistentManager->persistAll();
74 $queryBuilder = (
new ConnectionPool())->getQueryBuilderForTable(
'tx_blogexample_domain_model_blog');
75 $queryBuilder->getRestrictions()
77 $newBlogCount = $queryBuilder
79 ->from(
'tx_blogexample_domain_model_blog')
81 $queryBuilder->expr()->eq(
83 $queryBuilder->createNamedParameter($newBlogTitle, \PDO::PARAM_STR)
88 $this->assertEquals(1, $newBlogCount);
96 $newBlogTitle =
'aDi1oogh';
97 $newBlog = $this->objectManager->get(\
ExtbaseTeam\BlogExample\Domain\Model\Blog::class);
98 $newBlog->setTitle($newBlogTitle);
101 $this->blogRepository->add($newBlog);
102 $this->persistentManager->persistAll();
104 $queryBuilder = (
new ConnectionPool())->getQueryBuilderForTable(
'tx_blogexample_domain_model_blog');
105 $queryBuilder->getRestrictions()
107 $newBlogRecord = $queryBuilder
109 ->from(
'tx_blogexample_domain_model_blog')
111 $queryBuilder->expr()->eq(
113 $queryBuilder->createNamedParameter($newBlogTitle, \PDO::PARAM_STR)
118 $this->assertEquals(0, $newBlogRecord[
'sys_language_uid']);
126 $newBlogTitle =
'aDi1oogh';
127 $newBlog = $this->objectManager->get(\
ExtbaseTeam\BlogExample\Domain\Model\Blog::class);
128 $newBlog->setTitle($newBlogTitle);
129 $newBlog->_setProperty(
'_languageUid', -1);
132 $this->blogRepository->add($newBlog);
133 $this->persistentManager->persistAll();
135 $queryBuilder = (
new ConnectionPool())->getQueryBuilderForTable(
'tx_blogexample_domain_model_blog');
136 $queryBuilder->getRestrictions()
138 $newBlogRecord = $queryBuilder
140 ->from(
'tx_blogexample_domain_model_blog')
142 $queryBuilder->expr()->eq(
144 $queryBuilder->createNamedParameter($newBlogTitle, \PDO::PARAM_STR)
149 $this->assertEquals(-1, $newBlogRecord[
'sys_language_uid']);
157 $newBlogTitle =
'aDi1oogh';
158 $newBlog = $this->objectManager->get(\
ExtbaseTeam\BlogExample\Domain\Model\Blog::class);
159 $newBlog->setTitle($newBlogTitle);
160 $newBlog->setSubtitle(
'subtitle');
163 $this->blogRepository->add($newBlog);
164 $this->persistentManager->persistAll();
167 $insertedBlog = $this->blogRepository->findByUid(1);
168 $insertedBlog->setSubtitle(
null);
169 $this->blogRepository->update($insertedBlog);
170 $this->persistentManager->persistAll();
172 $queryBuilder = (
new ConnectionPool())->getQueryBuilderForTable(
'tx_blogexample_domain_model_blog');
173 $queryBuilder->getRestrictions()
175 $newBlogRecord = $queryBuilder
177 ->from(
'tx_blogexample_domain_model_blog')
179 $queryBuilder->expr()->eq(
181 $queryBuilder->createNamedParameter($newBlogTitle, \PDO::PARAM_STR)
186 $this->assertNull($newBlogRecord[
'subtitle']);