diff --git a/test/check_configurable_requirements.py b/test/check_configurable_requirements.py index d532d98b3..f856c80b7 100644 --- a/test/check_configurable_requirements.py +++ b/test/check_configurable_requirements.py @@ -1,3 +1,19 @@ +""" +This script performs syntax analysis on the volatility3 source tree through a combination of AST analysis and import-time introspection of classes. + +The current checks it implements are: + 1. Ensure that classes derived from `ConfigurableInterface` properly + declare all `VersionableInterface` classes that they make use of in their + `get_requirements()` classmethod. + + :WARNING: a notable exception to this are classes defined within factory + functions. Because these classes are not created until the factory function + is called, they therefore do no exist at import time and cannot be checked + by this script. It is important to keep in mind during code review that + this is a best-effort check and does not make guarantees about the + completeness of declared requirements. +""" + import argparse import ast import importlib