Next: , Previous: , Up: API  


1.9 (veritas impact)

1.9.1 Procedures

Procedure: affected-test-files files KEY: #:src-dir #:changed

Return the files from files that the changes in changed can affect.

A test is affected when it imports a module the change reaches, when the change touched the test file itself, when a changed file’s name matches the test’s name, or when the test names the changed file as a string: the last two cover a project whose tests name their subject instead of importing it, and the data a test cannot run without.

Procedure: changed-selection files KEY: #:since #:src-dir

Return the changed files and the subset of files they affect.

Procedure: git-changed-files KEY: #:since

Return the files a change touched, relative to the repository root.

Without since, the working tree and the index are compared with HEAD, and untracked files are included. With since, the working tree is compared with that revision, which is what a CI job wants: the diff of a branch against its base.

Procedure: module-imports text

Return the modules text imports with #:use-module, as lists.

Only the plain form is read - (veritas reporter) - because a #:select list belongs to the importer, not to the dependency.

Procedure: module-name-of-file path KEY: #:root

Return the module path defines, as a list of strings.

"src/veritas/reporter.scm" is ("veritas" "reporter"). root is the directory the path is relative to, so a project with a different layout can say so.

Procedure: referenced-paths text

Return the path-like string literals text mentions.

A test that reads a data file names it as a string, so those strings are the other dependency edge a project has: not a module, but a file the test cannot run without. Only strings that look like a path are kept - one with a slash, a dot or both - because every other literal in a test is prose.


Next: (veritas mock), Previous: (veritas generator), Up: API