Skip to content

Commit f926885

Browse files
Standardize Series 5 sections: remove Summary, rename Key Patterns to Key Design Decisions
1 parent cb19305 commit f926885

2 files changed

Lines changed: 1 addition & 24 deletions

File tree

blogs/series-5-devops-data/5.1-database-seeding.md

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -460,17 +460,6 @@ When an E2E test suite needs a specific dataset before running, this is where yo
460460

461461
---
462462

463-
## 🎓 Summary
464-
465-
The AngularNetTutorial seeding system has four layers:
466-
467-
* **Bogus `Faker<T>`** — fluent rule definitions with `.UseSeed()` for reproducibility, `PickRandom()` for FK references, and two-parameter lambdas for field-to-field dependencies
468-
* **`DatabaseSeeder`** — generates all four collections in dependency order (Departments → SalaryRanges → Positions → Employees)
469-
* **`DbInitializer.SeedData()`** — one-liner that adds all collections and saves
470-
* **`Program.cs`** — gates seeding to development only, respects `SkipDbSeed` flag, skips if data already exists
471-
472-
The result: `dotnet run` produces a fully populated application in three seconds. Every developer starts with the same 1,000 employees, and automated tests can rely on consistent seed data.
473-
474463
## 🌟 Why This Matters
475464

476465
Empty databases make demos unconvincing and make UI bugs invisible — you can't find pagination problems without enough rows to paginate. Starting with a Bogus-powered seeder that generates 1,000 realistic employees in three seconds means the application looks like a real HR system from day one, not a toy.

blogs/series-5-devops-data/5.2-cicd-github-actions.md

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -478,7 +478,7 @@ After a successful run, the Actions page shows:
478478
479479
---
480480
481-
## 💡 Key Patterns
481+
## 🔑 Key Design Decisions
482482
483483
**`fail-fast: false` with browser matrix.** Cross-browser bugs only surface when all browsers run. Cancelling Firefox because Chromium failed hides real issues.
484484
@@ -492,18 +492,6 @@ After a successful run, the Actions page shows:
492492
493493
---
494494
495-
## 🎓 Summary
496-
497-
The GitHub Actions workflow provides three jobs for a complete CI pipeline:
498-
499-
* **`test`** — matrix over Chromium/Firefox/WebKit, `npm ci`, browser install, `CI=true` Playwright run, artifact upload
500-
* **`report`** — `dorny/test-reporter` publishes JUnit results as a GitHub Check
501-
* **`comment-pr`** — `github-script` posts a browser status table to the PR
502-
503-
`playwright.config.ts` adapts to CI automatically via `process.env.CI`: strict `forbidOnly`, two retries, single worker, and `open: 'never'` on the HTML reporter.
504-
505-
The gap to close is service startup — adding `webServer` configuration or Docker Compose steps to start IdentityServer, the .NET API, and Angular before the test run. Once those services are live, the workflow runs the full OIDC-authenticated Playwright suite across all three browsers on every push and pull request.
506-
507495
## 🌟 Why This Matters
508496
509497
A Playwright test suite that only runs locally isn't a CI/CD test suite — it's a manual checklist. GitHub Actions with browser matrix, artifact upload, JUnit reporting, and PR comments turns the same tests into an automated quality gate that runs on every push. The `process.env.CI` adaptations — `forbidOnly`, `retries: 2`, `workers: 1` — make the same test suite stable in CI without changing a single test.

0 commit comments

Comments
 (0)