loki.transformations.build_system.tests.test_plan module

test_plan_relative_paths(tmp_path, monkeypatch, use_rootpath, use_fullpath)

A test that emulates the use of overlay file systems that may cause issues if paths are resolved prematurely.

This can generate file names in the lists produced by the CMakePlanTransformation that don’t match the internal lists of files in the CMake target, thus breaking the source list update process.

This test creates a file system hierarchy like this:

  • real_path/
    • module/
      • mymod.F90

    • src/
      • mysub.F90

  • overlay_path -> real_path

  • build/

and initiates the Scheduler on the overlay path