FORTRAN SOFTWARE CATALOG

Repository owner: GFE (Goddard-Fortran-Ecosystem)

pfunit

Serial pFUnit testing with assertions for scalars, vectors and matrices (maximum rank 2); MPI, OpenMP, robust runners and Hamcrest disabled.

Repository · Pinned source (380524aa4ce4) · Try in playground · Checked package example

GAMS classifications

About this package

Category
Testing
License
Apache-2.0

Topics: assertions, fortran, mpi, object-oriented, serial, software-testing, test-framework, unit-testing, unit-testing-framework

Classification scope and review notes

The pinned serial pFUnit configuration disables MPI, OpenMP, robust/forked runners and Hamcrest, and uses the author-supported MAX_ASSERT_RANK=2 option (scalars, vectors and matrices) to retain the existing 2 MiB generated-source asset limit. The author CMake configuration supplies source selections and compiler-kind definitions; overload_template.py generates the assertions. fArgParse and its gFTL-shared/gFTL submodules are pinned at the exact upstream gitlinks, with only the required shared container instantiations generated. The FPM scanner sees a NAG-only f90_unix_proc USE even on GNU, so that inactive branch is declared external; inactive robust/Hamcrest interfaces are likewise excluded without altering original library code. A plain Fortran main constructs three TestMethod cases in a TestSuite and checks scalar, vector and matrix assertions through TestRunner/SerialContext, requiring exactly three runs and zero errors/failures. No visitor-side Python, CMake or annotation generation is needed. Higher assertion ranks, matcher DSLs, MPI, OpenMP and process-forking runners are not offered by this configuration. S denotes software testing; no numerical solver classification is inferred. Apache-2.0 and dependency notices are retained.

Package dependencies

Resolved GitHub repositories used by the verified playground build, combining direct and indirect dependencies. This list does not describe internal module dependencies or native system libraries.

Required by this build

Build record verified 2026-10-30.

Used by (0 selected packages)

No other selected build records this repository as a dependency. This is not a measure of usage outside the catalog.

Reviewed procedures

These mappings have pinned source evidence. A checked package example may exercise only some of them; source review is not a numerical benchmark.

Uncertain: no procedure-level mapping is recorded yet. These discovery classifications need source review.