From 675e89e9d1b5c4cf13d2e807ef94d938b083763a Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Tue, 17 Oct 2023 10:36:46 +0200 Subject: [PATCH] docs: DrupalCon updates --- .gitignore | 2 +- dist/.keep | 0 run | 4 +- test-driven-drupal/code/1.txt | 6 + test-driven-drupal/code/10.txt | 30 ++ test-driven-drupal/code/11.txt | 48 +++ test-driven-drupal/code/12.txt | 34 ++ test-driven-drupal/code/13.txt | 25 ++ test-driven-drupal/code/14.txt | 40 +++ test-driven-drupal/code/15.txt | 49 +++ test-driven-drupal/code/16.txt | 37 ++ test-driven-drupal/code/17.txt | 37 ++ test-driven-drupal/code/18.txt | 54 +++ test-driven-drupal/code/19.txt | 44 +++ test-driven-drupal/code/2.txt | 13 + test-driven-drupal/code/3.txt | 41 +++ test-driven-drupal/code/4.txt | 28 ++ test-driven-drupal/code/5.txt | 21 ++ test-driven-drupal/code/6.txt | 25 ++ test-driven-drupal/code/7.txt | 40 +++ test-driven-drupal/code/8.txt | 46 +++ test-driven-drupal/code/9.txt | 61 ++++ test-driven-drupal/demo.rst | 337 ++++++++++++++++++ test-driven-drupal/example.rst | 107 ++++++ .../images/override-node-options-1.png | Bin 0 -> 77525 bytes .../images/override-node-options-2.png | Bin 0 -> 93333 bytes .../images/override-node-options-3.png | Bin 0 -> 33958 bytes test-driven-drupal/slides.rst | 255 ++++++------- 28 files changed, 1240 insertions(+), 144 deletions(-) create mode 100644 dist/.keep create mode 100644 test-driven-drupal/code/1.txt create mode 100644 test-driven-drupal/code/10.txt create mode 100644 test-driven-drupal/code/11.txt create mode 100644 test-driven-drupal/code/12.txt create mode 100644 test-driven-drupal/code/13.txt create mode 100644 test-driven-drupal/code/14.txt create mode 100644 test-driven-drupal/code/15.txt create mode 100644 test-driven-drupal/code/16.txt create mode 100644 test-driven-drupal/code/17.txt create mode 100644 test-driven-drupal/code/18.txt create mode 100644 test-driven-drupal/code/19.txt create mode 100644 test-driven-drupal/code/2.txt create mode 100644 test-driven-drupal/code/3.txt create mode 100644 test-driven-drupal/code/4.txt create mode 100644 test-driven-drupal/code/5.txt create mode 100644 test-driven-drupal/code/6.txt create mode 100644 test-driven-drupal/code/7.txt create mode 100644 test-driven-drupal/code/8.txt create mode 100644 test-driven-drupal/code/9.txt create mode 100644 test-driven-drupal/demo.rst create mode 100644 test-driven-drupal/example.rst create mode 100644 test-driven-drupal/images/override-node-options-1.png create mode 100644 test-driven-drupal/images/override-node-options-2.png create mode 100644 test-driven-drupal/images/override-node-options-3.png diff --git a/.gitignore b/.gitignore index bd3bc9a..cb76843 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,7 @@ # rst2df. /**/*.pdf /**/*.rst.build_temp -/dist/ +/dist/*.pdf # pdfpc. /**/*.pdfpc diff --git a/dist/.keep b/dist/.keep new file mode 100644 index 0000000..e69de29 diff --git a/run b/run index 538318d..04a2ed1 100755 --- a/run +++ b/run @@ -7,8 +7,8 @@ RST_FILENAME=slides.rst THUMBNAIL_FILENAME=thumbnail.jpg function clean { - mkdir -p dist rm -fr dist/* + touch dist/.keep find . \ -type f \( -name "${PDF_FILENAME}*" -o -name *.build_temp -o -name ${THUMBNAIL_FILENAME} \) \ @@ -34,7 +34,7 @@ function pdf:generate { --fit-background-mode scale \ --font-path ../fonts \ --output "../dist/${DIRECTORY_NAME}.pdf" \ - --stylesheets ../styles/style-light,tango \ + --stylesheets ../styles/style-light,vs \ "${@}" popd diff --git a/test-driven-drupal/code/1.txt b/test-driven-drupal/code/1.txt new file mode 100644 index 0000000..65a11bd --- /dev/null +++ b/test-driven-drupal/code/1.txt @@ -0,0 +1,6 @@ +# drupalcon.info.yml + +name: DrupalCon demo +type: module +core_version_requirement: ^10 +package: DrupalCon diff --git a/test-driven-drupal/code/10.txt b/test-driven-drupal/code/10.txt new file mode 100644 index 0000000..87cfd42 --- /dev/null +++ b/test-driven-drupal/code/10.txt @@ -0,0 +1,30 @@ +// start code +namespace Drupal\drupalcon\Repository; + +final class ArticleRepository { + + public function getAll(): array { + return []; + } + +} +// end code + +// start output +F 1 / 1 (100%) + +Time: 00:00.266, Memory: 6.00 MB + +There was 1 failure: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +Failed asserting that actual size 0 matches expected size 1. +// end output + +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121 +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:55 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:20 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +FAILURES! +Tests: 1, Assertions: 5, Failures: 1. diff --git a/test-driven-drupal/code/11.txt b/test-driven-drupal/code/11.txt new file mode 100644 index 0000000..53a6900 --- /dev/null +++ b/test-driven-drupal/code/11.txt @@ -0,0 +1,48 @@ +nodeStorage = $this->entityTypeManager->getStorage('node'); + } + + + + public function getAll(): array { + return $this->nodeStorage->loadMultiple(); + } + +} +// end code + +--- + +E 1 / 1 (100%) + +Time: 00:00.401, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +ArgumentCountError: Too few arguments to function Drupal\drupalcon\Repository\ArticleR +epository::__construct(), 0 passed and exactly 1 expected + +/app/web/modules/custom/drupalcon/src/Repository/ArticleRepository.php:9 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:1140 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:586 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:531 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:15 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 4, Errors: 1. diff --git a/test-driven-drupal/code/12.txt b/test-driven-drupal/code/12.txt new file mode 100644 index 0000000..2e1c9ef --- /dev/null +++ b/test-driven-drupal/code/12.txt @@ -0,0 +1,34 @@ +// start services +# drupalcon.services.yml + +services: + Drupal\drupalcon\Repository\ArticleRepository: + autowire: true +// end services + +--- + +// start output +E 1 / 1 (100%) + +Time: 00:00.405, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +Drupal\Component\Plugin\Exception\PluginNotFoundException: +The "node" entity type does not exist. +// end output + +/app/web/core/lib/Drupal/Core/Entity/EntityTypeManager.php:139 +/app/web/core/lib/Drupal/Core/Entity/EntityTypeManager.php:253 +/app/web/core/lib/Drupal/Core/Entity/EntityTypeManager.php:192 +/app/web/modules/custom/drupalcon/src/Repository/ArticleRepository.php:12 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:1140 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:586 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:531 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:15 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 4, Errors: 1. diff --git a/test-driven-drupal/code/13.txt b/test-driven-drupal/code/13.txt new file mode 100644 index 0000000..13097c7 --- /dev/null +++ b/test-driven-drupal/code/13.txt @@ -0,0 +1,25 @@ +// start test +public static $modules = [ + 'drupalcon', + 'node', +]; +// end test + +// start output +F 1 / 1 (100%) + +Time: 00:00.421, Memory: 6.00 MB + +There was 1 failure: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +Failed asserting that actual size 0 matches expected size 1. +// end output + +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121 +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:55 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:19 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +FAILURES! +Tests: 1, Assertions: 9, Failures: 1. diff --git a/test-driven-drupal/code/14.txt b/test-driven-drupal/code/14.txt new file mode 100644 index 0000000..b4e7e99 --- /dev/null +++ b/test-driven-drupal/code/14.txt @@ -0,0 +1,40 @@ +namespace Drupal\Tests\drupalcon\Kernel; + +use Drupal\drupalcon\Repository\ArticleRepository; +use Drupal\KernelTests\Core\Entity\EntityKernelTestBase; +use Drupal\Tests\node\Traits\NodeCreationTrait; + +class ArticleRepositoryTest extends EntityKernelTestBase { + + public static $modules = [ + 'drupalcon', + 'node', + ]; + +// start test + use NodeCreationTrait; + + /** @test */ + public function it_returns_blog_posts() { + $this->createNode(['type' => 'article']); + + /** @var ArticleRepository */ + $repository = $this->container->get(ArticleRepository::class); + + $articles = $repository->getAll(); + + $this->assertCount(1, $articles); + } +// end test + +} + +--- + +// start output +. 1 / 1 (100%) + +Time: 00:00.439, Memory: 6.00 MB + +OK (1 test, 11 assertions) +// end output diff --git a/test-driven-drupal/code/15.txt b/test-driven-drupal/code/15.txt new file mode 100644 index 0000000..984fee1 --- /dev/null +++ b/test-driven-drupal/code/15.txt @@ -0,0 +1,49 @@ +createNode([ + 'title' => 'Test post', + 'type' => 'article', + ]); + + $repository = $this->container->get(ArticleRepository::class); + + $articles = $repository->getAll(); + + $this->assertCount(1, $articles); + $this->assertIsObject($articles[1]); + + $this->assertInstanceOf(NodeInterface::class, $articles[1]); + $this->assertSame('article', $articles[1]->bundle()); + $this->assertSame('Test post', $articles[1]->label()); +// end test + } + +} + +--- + +Article Repository (Drupal\Tests\drupalcon\Kernel\ArticleRepository) + ✔ It returns blog posts + +Time: 00:00.449, Memory: 6.00 MB + +OK (1 test, 15 assertions) diff --git a/test-driven-drupal/code/16.txt b/test-driven-drupal/code/16.txt new file mode 100644 index 0000000..e25b91c --- /dev/null +++ b/test-driven-drupal/code/16.txt @@ -0,0 +1,37 @@ +public function only_published_articles_are_returned() { +// start test + $this->createNode(['type' => 'article', 'status' => Node::PUBLISHED]); + $this->createNode(['type' => 'article', 'status' => Node::NOT_PUBLISHED]); + $this->createNode(['type' => 'article', 'status' => Node::PUBLISHED]); + $this->createNode(['type' => 'article', 'status' => Node::NOT_PUBLISHED]); + $this->createNode(['type' => 'article', 'status' => Node::PUBLISHED]); + + $repository = $this->container->get(ArticleRepository::class); + + $articles = $repository->getAll(); + + $this->assertCount(3, $articles); +// end test +} + +--- + +// start output +.F 2 / 2 (100%) + +Time: 00:00.903, Memory: 6.00 MB + +There was 1 failure: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest:: +only_published_articles_are_returned +Failed asserting that actual size 5 matches expected size 3. +// end output + +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121 +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:55 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:40 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +FAILURES! +Tests: 2, Assertions: 22, Failures: 1. diff --git a/test-driven-drupal/code/17.txt b/test-driven-drupal/code/17.txt new file mode 100644 index 0000000..843b65e --- /dev/null +++ b/test-driven-drupal/code/17.txt @@ -0,0 +1,37 @@ +nodeStorage = $this->entityTypeManager->getStorage('node'); + } + +// start code + public function getAll(): array { + return $this->nodeStorage->loadByProperties([ + 'status' => NodeInterface::PUBLISHED, + ]); + } +// end code + +} + +// start output +.. 2 / 2 (100%) + +Time: 00:00.891, Memory: 6.00 MB + +OK (2 tests, 22 assertions) +// end output diff --git a/test-driven-drupal/code/18.txt b/test-driven-drupal/code/18.txt new file mode 100644 index 0000000..3959d8a --- /dev/null +++ b/test-driven-drupal/code/18.txt @@ -0,0 +1,54 @@ +public function nodes_are_ordered_by_date_and_returned_newest_first(): void { +// start test + $this->createNode(['type' => 'article', + 'created' => (new DrupalDateTime('-2 days'))->getTimestamp()]); + $this->createNode(['type' => 'article', + 'created' => (new DrupalDateTime('-1 week'))->getTimestamp()]); + $this->createNode(['type' => 'article', + 'created' => (new DrupalDateTime('-1 hour'))->getTimestamp()]); + $this->createNode(['type' => 'article', + 'created' => (new DrupalDateTime('-1 year'))->getTimestamp()]); + $this->createNode(['type' => 'article', + 'created' => (new DrupalDateTime('-1 month'))->getTimestamp()]); + + $repository = $this->container->get(ArticleRepository::class); + $nodes = $repository->getAll(); + + $this->assertSame([3, 1, 2, 5, 4], array_keys($nodes)); +// end test +} + +// start output +F 1 / 1 (100%) + +Time: 00:00.449, Memory: 8.00 MB + +There was 1 failure: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::nodes_are_ordered_by_date_and_ +returned_newest_first +Failed asserting that two arrays are identical. +--- Expected ++++ Actual +@@ @@ + Array &0 ( +- 0 => 3 +- 1 => 1 +- 2 => 2 +- 3 => 5 +- 4 => 4 ++ 0 => 1 ++ 1 => 2 ++ 2 => 3 ++ 3 => 4 ++ 4 => 5 + ) + +/app/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121 +/app/vendor/phpunit/phpunit/src/Framework/Constraint/IsIdentical.php:79 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:60 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +FAILURES! +Tests: 1, Assertions: 11, Failures: 1. +// end output diff --git a/test-driven-drupal/code/19.txt b/test-driven-drupal/code/19.txt new file mode 100644 index 0000000..054b6f4 --- /dev/null +++ b/test-driven-drupal/code/19.txt @@ -0,0 +1,44 @@ +nodeStorage = $this->entityTypeManager->getStorage('node'); + } + + public function getAll(): array { +// start code + $articles = $this->nodeStorage->loadByProperties([ + 'status' => NodeInterface::PUBLISHED, + ]); + + uasort($articles, fn (NodeInterface $a, NodeInterface $b) => + $b->getCreatedTime() <=> $a->getCreatedTime()); + + return $articles; +// end code + } + +} + +--- + +// start output +. 1 / 1 (100%) + +Time: 00:00.462, Memory: 6.00 MB + +OK (1 test, 11 assertions) +// end output diff --git a/test-driven-drupal/code/2.txt b/test-driven-drupal/code/2.txt new file mode 100644 index 0000000..0528d63 --- /dev/null +++ b/test-driven-drupal/code/2.txt @@ -0,0 +1,13 @@ +// tests/src/Functional/BlogPageTest.php + +namespace Drupal\Tests\drupalcon\Functional; + +use Drupal\Tests\BrowserTestBase; + +final class BlogPageTest extends BrowserTestBase { + + public $defaultTheme = 'stark'; + + public static $modules = []; + +} diff --git a/test-driven-drupal/code/3.txt b/test-driven-drupal/code/3.txt new file mode 100644 index 0000000..d98b96f --- /dev/null +++ b/test-driven-drupal/code/3.txt @@ -0,0 +1,41 @@ +// tests/src/Functional/BlogPageTest.php + +/** @test */ +public function it_loads_the_blog_page(): void { + $this->drupalGet('/blog'); + + $this->assertSession()->statusCodeEquals(200); +} +// end test + +// start output +E 1 / 1 (100%) + +Time: 00:01.379, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Functional\BlogPageTest::it_loads_the_blog_page +Behat\Mink\Exception\ExpectationException: +Current response status code is 404, but 200 expected. + +/app/vendor/behat/mink/src/WebAssert.php:794 +/app/vendor/behat/mink/src/WebAssert.php:130 +/app/web/modules/custom/drupalcon/tests/src/BlogPageTest.php:16 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 2, Errors: 1. +// end output + +// start routing +# drupalcon.routing.yml + +blog.page: + path: /blog + defaults: + _controller: Drupal\drupalcon\Controller\BlogPageController + _title: Blog + requirements: + _permission: access content +// end routing diff --git a/test-driven-drupal/code/4.txt b/test-driven-drupal/code/4.txt new file mode 100644 index 0000000..0dc2a19 --- /dev/null +++ b/test-driven-drupal/code/4.txt @@ -0,0 +1,28 @@ +public static $modules = ['drupalcon'];// output + +E 1 / 1 (100%) + +Time: 00:01.532, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Functional\BlogPageTest::it_loads_the_blog_page +Behat\Mink\Exception\ExpectationException: +Current response status code is 403, but 200 expected. +// end output + +/app/vendor/behat/mink/src/WebAssert.php:794 +/app/vendor/behat/mink/src/WebAssert.php:130 +/app/web/modules/custom/drupalcon/tests/src/BlogPageTest.php:17 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 3, Errors: 1. + + /app/vendor/behat/mink/src/WebAssert.php:794 + /app/vendor/behat/mink/src/WebAssert.php:130 + /app/web/tests/src/Functional/BlogPageTest.php:23 + /app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + + ERRORS! + Tests: 1, Assertions: 3, Errors: 1. diff --git a/test-driven-drupal/code/5.txt b/test-driven-drupal/code/5.txt new file mode 100644 index 0000000..73ccc4a --- /dev/null +++ b/test-driven-drupal/code/5.txt @@ -0,0 +1,21 @@ +public static $modules = ['node', 'drupalcon']; // end code + +// start output +E 1 / 1 (100%) + +Time: 00:01.906, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Functional\BlogPageTest::it_loads_the_blog_page +Behat\Mink\Exception\ExpectationException: +Current response status code is 500, but 200 expected. +// end output + +/app/vendor/behat/mink/src/WebAssert.php:794 +/app/vendor/behat/mink/src/WebAssert.php:130 +/app/web/modules/custom/drupalcon/tests/src/BlogPageTest.php:17 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 3, Errors: 1. diff --git a/test-driven-drupal/code/6.txt b/test-driven-drupal/code/6.txt new file mode 100644 index 0000000..e62f1a8 --- /dev/null +++ b/test-driven-drupal/code/6.txt @@ -0,0 +1,25 @@ +// start code +// src/Controller/BlogPageController.php + +namespace Drupal\drupalcon\Controller; + +class BlogPageController { + + public function __invoke(): array { + return []; + } + +} +// end code + +// start output +. 1 / 1 (100%) + +Time: 00:01.916, Memory: 6.00 MB + +OK (1 test, 3 assertions) + +Task completed in 0m2.147s +// end output + +Task completed in 0m2.124s diff --git a/test-driven-drupal/code/7.txt b/test-driven-drupal/code/7.txt new file mode 100644 index 0000000..f52ccf9 --- /dev/null +++ b/test-driven-drupal/code/7.txt @@ -0,0 +1,40 @@ +// start test +/** @test */ +public function it_loads_the_blog_page(): void { + $this->drupalGet('/blog'); + + $session = $this->assertSession(); + $session->statusCodeEquals(200); + + $session->responseContains('

Blog

'); + $session->pageTextContains('Welcome to my blog!'); +} +// end test + +// start code +namespace Drupal\drupalcon\Controller; + +use Drupal\Core\StringTranslation\StringTranslationTrait; + +class BlogPageController { + + use StringTranslationTrait; + + public function __invoke(): array { + return [ + '#markup' => $this->t('Welcome to my blog!'), + ]; + } + +} +// end code + +// start output +. 1 / 1 (100%) + +Time: 00:01.911, Memory: 6.00 MB + +OK (1 test, 3 assertions) +// end output + +Task completed in 0m2.124s diff --git a/test-driven-drupal/code/8.txt b/test-driven-drupal/code/8.txt new file mode 100644 index 0000000..56976dd --- /dev/null +++ b/test-driven-drupal/code/8.txt @@ -0,0 +1,46 @@ +// start code +// tests/src/ArticleRepositoryTest.php + +namespace Drupal\Tests\drupalcon\Kernel; + +use Drupal\KernelTests\Core\Entity\EntityKernelTestBase; + +class ArticleRepositoryTest extends EntityKernelTestBase { + + /** @test */ + public function it_returns_blog_posts(): void { + $repository = $this->container->get(ArticleRepository::class); + + $articles = $repository->getAll(); + + $this->assertCount(1, $articles); + } +// end code + +} + +--- + +// start output +E 1 / 1 (100%) + +Time: 00:00.405, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: +You have requested a non-existent service +"Drupal\Tests\drupalcon\Kernel\ArticleRepository". +// end output + +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:992 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:568 +/app/vendor/symfony/dependency-injection/ContainerBuilder.php:531 +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:11 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 4, Errors: 1. + +Time: 00:00.409, Memory: 8.00 MB diff --git a/test-driven-drupal/code/9.txt b/test-driven-drupal/code/9.txt new file mode 100644 index 0000000..c7ecdde --- /dev/null +++ b/test-driven-drupal/code/9.txt @@ -0,0 +1,61 @@ +// start code +// src/Repository/ArticleNodeRepository.php + +namespace Drupal\drupalcon\Repository; + +final class ArticleRepository { +} +// end code + +--- + +// start services +# drupalcon.services.yml + +services: + Drupal\drupalcon\Repository\ArticleRepository: ~ +// end services + +--- + +namespace Drupal\Tests\drupalcon\Kernel; + +use Drupal\drupalcon\Repository\ArticleRepository; +use Drupal\KernelTests\Core\Entity\EntityKernelTestBase; + +class ArticleRepositoryTest extends EntityKernelTestBase { + +// start test + public static $modules = [ + 'drupalcon', + ]; + + /** @test */ + public function it_returns_blog_posts() { + /** @var ArticleRepository */ + $repository = $this->container->get(ArticleRepository::class); + + $articles = $repository->getAll(); + + $this->assertCount(1, $articles); + } +// end test + +} + +// start output +E 1 / 1 (100%) + +Time: 00:00.403, Memory: 6.00 MB + +There was 1 error: + +1) Drupal\Tests\drupalcon\Kernel\ArticleRepositoryTest::it_returns_blog_posts +Error: Call to undefined method Drupal\drupalcon\Repository\ArticleRepository::getAll() + +/app/web/modules/custom/drupalcon/tests/src/ArticleRepositoryTest.php:18 +/app/vendor/phpunit/phpunit/src/Framework/TestResult.php:728 + +ERRORS! +Tests: 1, Assertions: 4, Errors: 1. +// end output diff --git a/test-driven-drupal/demo.rst b/test-driven-drupal/demo.rst new file mode 100644 index 0000000..6ef6cdc --- /dev/null +++ b/test-driven-drupal/demo.rst @@ -0,0 +1,337 @@ +.. page:: titlePage + +.. class:: centredtitle + +Demo: Building a blog module + +.. raw:: pdf + + TextAnnotation "Shortened and simplified example." + TextAnnotation "I'd use Views for this in a real situation." + +.. page:: standardPage + +Acceptance criteria +=================== + +- As a site visitor +- I want to see a list of published articles at ``/blog`` +- Ordered by post date, most recent first + +Tasks +===== + +- Ensure the blog page exists +- Ensure only published articles are shown +- Ensure the articles are shown in the correct order + +.. page:: + +.. Creating the test class. + +.. code-block:: php + :include: code/2.txt + :linenos: + :startinline: true + +.. page:: + +.. Adding the first test. + +.. code-block:: php + :end-before: // end test + :include: code/3.txt + :linenos: + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/3.txt + :start-after: // start output + :startinline: true + +.. page:: + +.. code-block:: yaml + :end-before: // end routing + :include: code/3.txt + :linenos: + :start-after: // start routing + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/3.txt + :start-after: // start output + :startinline: true + +.. raw:: pdf + + TextAnnotation "Same result as the module isn't enabled." + +.. page:: + +.. code-block:: php + :include: code/4.txt + :end-before: // output + :linenos: + :startinline: true + +| + +.. code-block:: plain + :include: code/4.txt + :end-before: // end output + :start-after: // output + :startinline: true + +.. page:: + +.. Enable the node module. + +.. code-block:: php + :include: code/5.txt + :linenos: + :end-before: // end code + :startinline: true + +| + +.. code-block:: php + :include: code/5.txt + :end-before: // end output + :start-after: // start output + +.. page:: + +.. Create the Controller. + +.. code-block:: php + :end-before: // end code + :include: code/6.txt + :linenos: + :startinline: true + :start-after: // start code + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/6.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end test + :include: code/7.txt + :linenos: + :startinline: true + :start-after: // start test + +.. raw:: pdf + + TextAnnotation "Adding extra assertions." + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/7.txt + :linenos: + :startinline: true + :start-after: // start code + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/7.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/8.txt + :linenos: + :start-after: // start code + :startinline: true + + +.. code-block:: php + :end-before: // end output + :include: code/8.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/9.txt + :linenos: + :start-after: // start code + :startinline: true + +| + +.. code-block:: yaml + :end-before: // end services + :include: code/9.txt + :linenos: + :start-after: // start services + +.. page:: + +.. code-block:: yaml + :end-before: // end output + :include: code/9.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/10.txt + :linenos: + :start-after: // start code + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/10.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/11.txt + :linenos: + :startinline: true + :start-after: // start code + +.. code-block:: yaml + :end-before: // end services + :include: code/12.txt + :linenos: + :start-after: // start services + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/12.txt + :start-after: // start output + +| + +.. code-block:: php + :end-before: // end test + :include: code/13.txt + :linenos: + :start-after: // start test + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/13.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end test + :include: code/14.txt + :linenos: + :start-after: // start test + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/14.txt + :start-after: // start output + +.. page:: + + +.. code-block:: php + :end-before: // end test + :include: code/15.txt + :linenos: + :start-after: // start test + :startinline: true + +.. page:: + +.. code-block:: php + :end-before: // end test + :include: code/16.txt + :linenos: + :start-after: // start test + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/16.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/17.txt + :linenos: + :start-after: // start code + :startinline: true + +| + +.. code-block:: plain + :end-before: // end output + :include: code/17.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end test + :include: code/18.txt + :linenos: + :start-after: // start test + :startinline: true + +.. page:: + +.. code-block:: plain + :end-before: // end output + :include: code/18.txt + :start-after: // start output + +.. page:: + +.. code-block:: php + :end-before: // end code + :include: code/19.txt + :linenos: + :start-after: // start code + :startinline: true + +| + +.. code-block:: plain + :end-before: // end output + :include: code/19.txt + :start-after: // start output + diff --git a/test-driven-drupal/example.rst b/test-driven-drupal/example.rst new file mode 100644 index 0000000..97184ff --- /dev/null +++ b/test-driven-drupal/example.rst @@ -0,0 +1,107 @@ +.. page:: titlePage + +.. class:: centredtitle + +Example + +.. page:: imagePage + +.. image:: images/broadbean-website.png + :width: 20cm + +.. page:: standardPage + +Specification +============= + +* Job adverts created in Broadbean UI, create nodes in Drupal. +* Application URL links users to separate application system. +* Constructed from domain, includes role ID as a GET parameter and optionally UTM parameters. +* Jobs need to be linked to offices. +* Job length specified in number of days. +* Path is specified as a field in the API. + +.. raw:: pdf + + TextAnnotation "Jobs added to a different system by the client, data POSTed to Drupal." + TextAnnotation "Job applicants would visit the job on the Drupal site, click the application URL and go to another (CRM) system to apply." + TextAnnotation "Client wanted to be able to specify the Drupal path in advance." + +.. page:: imagePage + +| +| + +.. image:: images/broadbean-drupal-flow-2.png + :width: 20cm + +.. page:: standardPage + +Implementation +============== + +* Added route to accept data from API as XML +* Added system user with API role to authenticate +* ``active_for`` converted from number of days to UNIX timestamp +* ``branch_name`` and ``locations`` converted from plain text to entity reference (job node to office node) +* ``url_alias`` property mapped to ``path`` + +.. raw:: pdf + + TextAnnotation "Required field missing." + TextAnnotation "Incorrect branch name." + +Incoming data +============= + +.. code-block:: php + :startinline: true + + $data = [ + 'command' => 'add', + 'username' => 'bobsmith', + 'password' => 'p455w0rd', + 'active_for' => '365', + 'details' => 'This is the detailed description.', + 'job_title' => 'Healthcare Assistant (HCA)', + 'locations' => 'Bath, Devizes', + 'role_id' => 'A/52/86', + 'summary' => 'This is the short description.', + 'url_alias' => 'healthcare-assistant-aldershot-june17', + // ... + ]; + +.. raw:: pdf + + TextAnnotation "Some pf the information sent to our endpoint." + +Implementation +============== + +* If no error, create the job node, return OK response to Broadbean +* If an Exception is thrown, return an error code and message + +.. raw:: pdf + + TextAnnotation "Required field missing." + TextAnnotation "Branch name incorrect, Exception caught." + +Types of tests +============== + +* **Functional**: job nodes are created with the correct URL and the correct response code is returned +* **FunctionalJavaScript**: application URL is updated with JavaScript based on UTM parameters (hosting) +* **Kernel**: job nodes can be added and deleted, expired job nodes are deleted, application URL is generated correctly +* **Unit**: ensure number of days are converted to timestamps correctly + +Results +======= + +* 0 bugs! +* Easier to identify where issues occurred and responsibilities +* Reduced debugging time + +.. raw:: pdf + + TextAnnotation "Best case scenario." + TextAnnotation "Just because there are tests, it doesn't mean that everything works and everything's passing - just the tests that you wrote are passing." diff --git a/test-driven-drupal/images/override-node-options-1.png b/test-driven-drupal/images/override-node-options-1.png new file mode 100644 index 0000000000000000000000000000000000000000..2b69070c7a64670384a87a04ba430c7b88abc576 GIT binary patch literal 77525 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 htQ^!~zij=_JbNd5z5B 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 XW-wOyw>@QGU|{fc^>bP0l+XkK6b#s@ literal 0 HcmV?d00001 diff --git a/test-driven-drupal/images/override-node-options-3.png b/test-driven-drupal/images/override-node-options-3.png new file mode 100644 index 0000000000000000000000000000000000000000..07e9ba99b99197e4d696819063975b7ea9ae6ff0 GIT binary patch literal 33958 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 P7#KWV{an^LB{Ts5&aO|q literal 0 HcmV?d00001 diff --git a/test-driven-drupal/slides.rst b/test-driven-drupal/slides.rst index e8b3e6f..d0a7645 100644 --- a/test-driven-drupal/slides.rst +++ b/test-driven-drupal/slides.rst @@ -7,18 +7,23 @@ TDD: Test Driven Drupal .. class:: titleslideinfo -Oliver Davies, Inviqa +Oliver Davies (@opdavies) + +| +.. class:: centred + +https://opdavi.es/tdd-test-driven-drupal .. page:: titlePage .. class:: centredtitle -Software Engineer, open-source maintainer and contributor +Software Engineer, Full Stack Development Consultant, Open-Source Maintainer .. raw:: pdf - TextAnnotation "I develop Drupal applications for clients, including custom modules and themes." - TextAnnotation "I contribute to open source projects including Drupal core." + TextAnnotation "I develop and consult on Drupal applications for clients." + TextAnnotation "I contribute to and maintain open source projects including Drupal core." TextAnnotation "Different perspectives." .. page:: imagePage @@ -29,21 +34,30 @@ Software Engineer, open-source maintainer and contributor .. raw:: pdf TextAnnotation "Become maintainer in 2012" - TextAnnotation "~223 most used module on Drupal.org" - TextAnnotation "~30,000 sites - ~20,000 D7 and ~10,000 D8/9" - - TextAnnotation "Had some existing tests, crucial to preventing regressions" .. page:: imagePage -.. image:: images/override-node-options-2012-4.png +.. image:: images/override-node-options-1.png :width: 18cm .. page:: -.. image:: images/override-node-options-2020-2.png +| + +.. image:: images/override-node-options-2.png :width: 22cm +| + +.. image:: images/override-node-options-3.png + :width: 22cm + +.. raw:: pdf + + TextAnnotation "173rd most used module on Drupal.org" + TextAnnotation "~38,000 sites - ~13,000 D7 and ~24,000 D8/9/10" + TextAnnotation "Had some existing tests, crucial to preventing regressions" + .. page:: standardPage Why write tests? @@ -59,10 +73,10 @@ Why write tests? .. raw:: pdf - TextAnnotation "I don't want to break 30,000 Drupal sites when rolling a new release, or causing a regression in a client codebase." + TextAnnotation "I don't want to break 38,000 Drupal sites when rolling a new release, or causing a regression in a client codebase." TextAnnotation "TDD often results in writing less code as you're figuring things out whilst writing the test, only writing code that's needed for the tests." TextAnnotation "Drupal core gates. Testing gate requires new tests for new features, failing test cases for bug fixes, and code coverage when refactoring code." - TextAnnotation "Same projects can work for Drupal 8 and 9, and in theory 10." + TextAnnotation "Same projects can work for Drupal 8, 9 and 10 etc." Testing in Drupal ================= @@ -71,8 +85,8 @@ Testing in Drupal * **Drupal 8** - PHPUnit added as a core dependency, later became the default via the PHPUnit initiative * **Drupal 9** - SimpleTest removed from core, moved back to contrib -Writing Tests (Drupal 8/9) -========================== +Writing PHPUnit Tests for Drupal +================================ * PHP class with ``.php`` extension * ``tests/src`` directory within each module @@ -83,6 +97,7 @@ Writing Tests (Drupal 8/9) .. raw:: pdf + TextAnnotation "Tests per module." TextAnnotation "PSR-4 autoloading." TextAnnotation "Different to D7." @@ -92,6 +107,10 @@ Writing Tests (Drupal 8/9) Arrange, Act, Assert +.. raw:: pdf + + TextAnnotation "Set up the world, perform an action, then make assertions." + .. page:: .. class:: centredtitle @@ -119,10 +138,12 @@ What to test? .. raw:: pdf - TextAnnotation "Examples of some things that I tested on a previous project." + TextAnnotation "Examples of some things that I tested on previous projects." .. page:: imagePage +| + .. image:: images/matt-stauffer-tweet.png :width: 20cm @@ -151,6 +172,10 @@ Types of Tests * **Kernel** (integration) * **Unit** +.. raw:: pdf + + TextAnnotation "Not just unit tests." + Functional Tests ================ @@ -197,26 +222,80 @@ Core script .. code-block:: shell - $ php core/scripts/run-tests.sh + $ php web/core/scripts/run-tests.sh - $ php core/scripts/run-tests.sh --module example + $ php web/core/scripts/run-tests.sh \ + --all - $ php core/scripts/run-tests.sh --class ExampleTest + $ php web/core/scripts/run-tests.sh \ + --module example + + $ php web/core/scripts/run-tests.sh \ + --class ExampleTest + +Core script +=========== + +.. code-block:: shell + + $ php web/core/scripts/run-tests.sh \ + --module example \ + --sqlite /dev/shm/test.sqlite \ + --url http://web + +.. raw:: pdf + + PageBreak + +.. code-block:: + + Drupal test run + --------------- + + Tests to be run: + - Drupal\Tests\example\Functional\ExamplePageTest + + Test run started: + Saturday, October 14, 2023 - 10:28 + + Test summary + ------------ + + Drupal\Tests\example\Functional\ExamplePageTest 1 passes + + Test run duration: 7 sec PHPUnit ======= .. code-block:: shell - $ vendor/bin/phpunit \ - -c core \ - modules/contrib/examples/phpunit_example + $ export SIMPLETEST_BASE_URL=http://web + + $ web/vendor/bin/phpunit \ + -c web/core \ + modules/contrib/examples/modules/phpunit_example .. raw:: pdf TextAnnotation "Update the phpunit path and config file path for your project." TextAnnotation "-c not needed if the phpunit.xml.dist or phpunit.xml is in the same directory." +.. raw:: pdf + + PageBreak + +.. code-block:: plain + + PHPUnit 9.6.13 by Sebastian Bergmann and contributors. + + Testing /app/web/modules/contrib/examples/modules/phpunit_example + ................................. 33 / 33 (100%) + + Time: 00:08.660, Memory: 10.00 MB + + OK (33 tests, 43 assertions) + Creating a phpunit.xml file =========================== @@ -229,111 +308,11 @@ Creating a phpunit.xml file - ``SIMPLETEST_BASE_URL``, ``SIMPLETEST_DB``, ``BROWSERTEST_OUTPUT_DIRECTORY`` - ``stopOnFailure="true"`` -.. page:: titlePage - -.. class:: centredtitle - -Example - -.. page:: imagePage - -.. image:: images/broadbean-website.png - :width: 20cm - -.. page:: standardPage - -Specification -============= - -* Job adverts created in Broadbean UI, create nodes in Drupal. -* Application URL links users to separate application system. -* Constructed from domain, includes role ID as a GET parameter and optionally UTM parameters. -* Jobs need to be linked to offices. -* Job length specified in number of days. -* Path is specified as a field in the API. - .. raw:: pdf - TextAnnotation "Jobs added to a different system by the client, data POSTed to Drupal." - TextAnnotation "Job applicants would visit the job on the Drupal site, click the application URL and go to another (CRM) system to apply." - TextAnnotation "Client wanted to be able to specify the Drupal path in advance." + TextAnnotation "For core. For projects, I create a customised phpunit.xml.dist in my project." -.. page:: imagePage - -.. image:: images/broadbean-drupal-flow-2.png - :width: 20cm - -.. page:: standardPage - -Implementation -============== - -* Added route to accept data from API as XML -* Added system user with API role to authenticate -* ``active_for`` converted from number of days to UNIX timestamp -* ``branch_name`` and ``locations`` converted from plain text to entity reference (job node to office node) -* ``url_alias`` property mapped to ``path`` - -.. raw:: pdf - - TextAnnotation "Required field missing." - TextAnnotation "Incorrect branch name." - -Incoming data -============= - -.. code-block:: php - :startinline: true - - $data = [ - 'command' => 'add', - 'username' => 'bobsmith', - 'password' => 'p455w0rd', - 'active_for' => '365', - 'details' => 'This is the detailed description.', - 'job_title' => 'Healthcare Assistant (HCA)', - 'locations' => 'Bath, Devizes', - 'role_id' => 'A/52/86', - 'summary' => 'This is the short description.', - 'url_alias' => 'healthcare-assistant-aldershot-june17', - // ... - ]; - -.. raw:: pdf - - TextAnnotation "Some pf the information sent to our endpoint." - -Implementation -============== - -* If no error, create the job node, return OK response to Broadbean -* If an Exception is thrown, return an error code and message - -.. raw:: pdf - - TextAnnotation "Required field missing." - TextAnnotation "Branch name incorrect, Exception caught." - -Types of tests -============== - -* **Functional**: job nodes are created with the correct URL and the correct response code is returned -* **FunctionalJavaScript**: application URL is updated with JavaScript based on UTM parameters (hosting) -* **Kernel**: job nodes can be added and deleted, expired job nodes are deleted, application URL is generated correctly -* **Unit**: ensure number of days are converted to timestamps correctly - -Results -======= - -* 0 bugs! -* Easier to identify where issues occurred and responsibilities -* Reduced debugging time -* Added more tests for any bugs to prevent regressions - -.. raw:: pdf - - TextAnnotation "Best case scenario." - TextAnnotation "Just because there are tests, it doesn't mean that everything works and everything's passing - just the tests that you wrote are passing." +.. include:: example.rst Test Driven Development ======================= @@ -384,27 +363,19 @@ How I Write Tests - "Outside In" TextAnnotation "Write the code in your test that you wish you had, and let the tests tell you what's missing." -.. page:: titlePage -.. class:: centredtitle +How I Write Tests - "Outside In" +================================ -Demo: Building a blog module +* Functional - 57 tests, 180 assertions +* Kernel - 38 tests, 495 assertions +* Unit - 5 tests, 18 assertions -.. page:: standardPage +| -Acceptance criteria -=================== +Run in 2-3 minutes in a CI pipeline with GitHub Actions. -- As a site visitor -- I want to see a list of published articles at ``/blog`` -- Ordered by post date, most recent first - -Tasks -===== - -- Ensure the blog page exists -- Ensure only published articles are shown -- Ensure the articles are shown in the correct order +.. include:: demo.rst .. page:: imagePage @@ -421,11 +392,13 @@ Thanks! References: -* https://opdavi.es/testing-workshop -* https://testdrivendrupal.com +* https://phpunit.de +* https://docs.phpunit.de +* https://www.drupal.org/docs/automated-testing | Me: * https://www.oliverdavies.uk +* https://www.oliverdavies.uk/atdc