OK    absent adapter defaults to pi
OK    adapter mock validates (exit 0)
OK    unsupported adapter exits 2 (exit 2)
OK    env exports adapter
OK    bootstrap creates default when absent (exit 0)
OK    bootstrap wrote config file
OK    bootstrap is idempotent on existing config (exit 0)
OK    bootstrap did not rewrite existing config
OK    validate missing config exits 3 (exit 3)
OK    malformed JSON exits 2 (exit 2)
OK    unsupported configVersion exits 2 (exit 2)
OK    unknown top-level key exits 2 (exit 2)
OK    unknown execution key exits 2 (exit 2)
OK    unsupported backend exits 2 (exit 2)
OK    unsupported environment exits 2 (exit 2)
OK    relative dataRoot exits 2 (exit 2)
OK    non-canonical dataRoot exits 2 (exit 2)
OK    filesystem root dataRoot exits 2 (exit 2)
OK    home directory dataRoot exits 2 (exit 2)
OK    dataRoot containing config dir exits 2 (exit 2)
OK    control character in provider exits 2 (exit 2)
OK    symlinked config file exits 2 (exit 2)
OK    env exports resolve correctly
OK    failed validation modified nothing

selftest: 24 passed, 0 failed
