Build slides with Nix

This commit is contained in:
Oliver Davies 2025-04-11 18:13:44 +01:00
parent e80aee1deb
commit 50662bffcc
10 changed files with 175 additions and 153 deletions

View file

@ -1,7 +1,9 @@
..
This file used a mixture of `plain` and `php` languages for code blocks so that `hl_lines` display correctly.
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
@ -12,7 +14,9 @@ Building a blog module
TextAnnotation "Shortened and simplified example."
TextAnnotation "I'd use Views for this in a real situation."
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Acceptance criteria
===================

View file

@ -1,4 +1,6 @@
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle

View file

@ -1,15 +1,21 @@
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
Example
.. page:: imagePage
.. raw:: pdf
PageBreak imagePage
.. image:: images/broadbean-website.png
:width: 20cm
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Specification
=============
@ -27,7 +33,9 @@ Specification
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
.. raw:: pdf
PageBreak imagePage
|
|
@ -35,7 +43,9 @@ Specification
.. image:: images/broadbean-drupal-flow-2.png
:width: 20cm
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Implementation
==============

View file

@ -15,7 +15,9 @@ Oliver Davies (@opdavies)
https://opdavi.es/drupal-london
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
@ -27,7 +29,9 @@ Software Developer, Consultant, open-source maintainer
TextAnnotation "I contribute to and maintain open-source projects including Drupal core."
TextAnnotation "Different perspectives."
.. page:: imagePage
.. raw:: pdf
PageBreak imagePage
.. image:: images/timmillwood-ono.png
:width: 22cm
@ -36,7 +40,9 @@ Software Developer, Consultant, open-source maintainer
TextAnnotation "I saw this tweet by Tim Millwood and become the maintainer in 2012."
.. page:: imagePage
.. raw:: pdf
PageBreak imagePage
.. image:: images/override-node-options-1.png
:width: 18cm
@ -70,7 +76,9 @@ Software Developer, Consultant, open-source maintainer
PageBreak
TextAnnotation "Had some existing tests, crucial to preventing regressions"
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Why write tests?
================
@ -117,7 +125,9 @@ Writing PHPUnit Tests for Drupal
TextAnnotation "PSR-4 autoloading."
TextAnnotation "Different to D7."
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
@ -143,7 +153,9 @@ Given, When, Then
TextAnnotation "When I go to that page..."
TextAnnotation "I should see 'About me' on the page."
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
What to test?
=============
@ -160,14 +172,18 @@ What to test?
TextAnnotation "Examples of some things that I tested on previous projects."
.. page:: imagePage
.. raw:: pdf
PageBreak imagePage
|
.. image:: images/matt-stauffer-tweet.png
:width: 20cm
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
What does a test look like?
===========================
@ -296,13 +312,17 @@ Unit Tests
* Can become tightly coupled
* Can be hard to refactor
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
Running Tests
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Core script
===========
@ -416,13 +436,17 @@ Test Driven Development
TextAnnotation "Refactor if needed."
TextAnnotation "Repeat."
.. page:: titlePage
.. raw:: pdf
PageBreak titlePage
.. class:: centredtitle
Red, Green, Refactor
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Porting Modules From Drupal 7
=============================
@ -465,12 +489,16 @@ Run in 2-3 minutes in a CI pipeline with GitHub Actions.
.. .. include:: demo.rst
.. include:: demo2.rst
.. page:: imagePage
.. raw:: pdf
PageBreak imagePage
.. image:: images/tawny-tweet-2.png
:width: 18cm
.. page:: standardPage
.. raw:: pdf
PageBreak standardPage
Thanks!
=======