---
title: >
    Writing custom assertions in your tests
pubDate: 2023-08-17
permalink: >-
    archive/2023/08/17/writing-custom-assertions-in-your-tests
tags:
    - automated-testing
    - test-driven-development
---

Writing custom assertions is a great way to clean up your test code.

Here's an example from one of my client Drupal projects:

```language-php
private static function assertProductVariationHasPrice(ProductVariationInterface $productVariation, string $expectedPrice): void {
  self::assertSame(
    actual: $productVariation->getPrice()->getNumber(),
    expected: $expectedPrice,
  );
}
```

This one wraps a single assertion, but they could also include multiple assertions or additional steps.

## Here's the thing

A custom assertion is a simple function but it makes the test code more readable and less repetitive.