---
title: "Chip-Level Test Libraries"
---

# Overview

This subtree contains _test libary code_ that could aid in the writing of [chip-level tests]({{< relref "sw/device/tests/index.md" >}}).
Test library code consists of two components:
1. `testutils` libraries, and
2. the [on-device test framework]({{< relref "sw/device/lib/testing/test_framework/index.md" >}}).

Functions in `testutils` libraries are designed to wrap several DIF invocations that are commonly used together across many chip-level tests.
They are _not_ designed to wrap a single DIF call.

The [on-device test framework]({{< relref "sw/device/lib/testing/test_framework/index.md" >}}) provides a generic platform for writing chip-level tests.

# Style Guide

- All `testutils` libraries should be placed in `sw/device/lib/testing/*`
- The [on-device test framework]({{< relref "sw/device/lib/testing/test_framework/index.md" >}})
code will live in: `sw/device/lib/testing/test\_framework`.
- `testutils` libraries will be named: `<IP or functionality name>_testutils.<h,c>`
- All `testutils` function names should take on the following format: `<IP or functionality name>_testutils_<function name>()`.
  This corresponds to the format: `<filename>_<function name>()`.
- There is no strict return typing required, though ideally most `testutils` functions should return **void** or **bool**.
  This is because test errors should be checked in `testutils` functions themselves using the `CHECK()` macros defined in `sw/device/lib/testing/check.h`.
- Try to keep `testutils` libraries toplevel agnostic (e.g., don’t include `hw/top_earlgrey/sw/autogen/top_earlgrey.h` if you can avoid it).
  This means `dif_<ip>_init()` DIFs should be invoked in chip-level tests, *not* `testutils`, and the DIF handles should be passed in as parameters to `testutils` functions.
- Pass-through `sw/device/lib/dif_base.h` types where appropriate.
  This allows testutils functions to easily mix with DIFs within chip-level tests.
- Avoid defining testutils that call a single DIF, and use the DIF directly.
  If a DIF does not exist for your needs, create one by following the [DIF developement guide]({{< relref "sw/device/lib/dif/README.md" >}}).

{{% sectionContent %}}
