Skip to content

User friendly, flexible and extensible object-oriented Fortran unit testing framework for testing serial, MPI-parallelized and coarray-parallelized applications

License

Notifications You must be signed in to change notification settings

aradi/fortuno.old

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fortuno unit testing framework

Fortuno – Fortran Unit Testing Objects

NOTE: The Fortuno repository had been relocated and this repository is going to be deleted soon. Visit the project in the new Fortuno repository.

The Fortuno project offers an object oriented unit testing framework for the Fortran language. It aims to combine the simplicity of test-drive with the broad range of features offered by pFUnit and to extend upon their capabilities. It is written in Fortran 2018 and can be directly used in Fortran projects without a need for a special pre-processor.

Fortuno provides

  • serial unit testing,
  • parallel unit testing for MPI- and coarray-parallel projects,
  • fixtured tests,
  • parameterized tests
  • seamless integration with the CMake systems (fpm & meson in progress)

Detailed documentation will be soon found on the Fortuno documentation page on Read the Docs. Currently, have a look at some of the example files in the test folder.

The development can be followed on the Fortuno project page on GitHub.

Known issues

In order to be flexible, expressive and simple, Fortuno uses modern Fortran constructs quite extensively. Unfortunately, this seems to be challenging for some compilers, as shown in the compiler table below.

Compiler Status
Intel 2021.7 (x86_64/Linux)
  • serial: OK
  • mpi (with Intel MPI): OK
  • coarray: OK
NAG 7.1 (build 7111, x86_64/Linux)
  • serial: OK (Release mode only)
  • coarray: OK (Release mode only)
GNU 12.2 (x86_64/Linux)
  • serial: Internal compiler error (failureinfo.f90)

If you are aware of other compilers being able to build Fortuno, open an issue or a pull request, so that the table can be updated accordingly.

License

This project is licensed under the BSD-2-Clause Plus Patent License. The SPDX license identifier for this project is BSD-2-Clause-Patent.

About

User friendly, flexible and extensible object-oriented Fortran unit testing framework for testing serial, MPI-parallelized and coarray-parallelized applications

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published