ClientUtils.Harness.Onboarding.FileIO (client_utils v0.1.23)
View SourceThe default way onboarding touches a working copy: the real filesystem.
Onboarding is mostly decisions, but it has to write four or five things, and
the code that decides should not have to know how. This is the plain answer —
File and System.cmd/3, rooted at a directory — and it is what a generated
application gets without configuring anything.
A host with its own filesystem abstraction passes its own module instead. That
is not hypothetical: CodeMySpec routes every write through Environments so its
specs can drive onboarding against an in-memory working copy, and without a seam
here the only way to exercise onboarding at all is to build a real directory —
temp dir, git repo, plugin tree — which is four fixtures standing in for one
surface.