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 valid console.sso loads and is in the output OK console.sso HS256 alg exits 2 naming the path (exit 2) OK console.sso alg none exits 2 naming the path (exit 2) OK console.sso missing slot field exits 2 naming the path (exit 2) OK console.sso slot name outside the pattern exits 2 naming the path (exit 2) OK unknown key under console exits 2 naming the path (exit 2) OK valid federation key loads and is in the output OK federation unknown sub-key exits 2 naming the key (exit 2) OK federation peer unknown sub-key exits 2 naming the key (exit 2) OK federation peer origin over http exits 2 naming the key (exit 2) OK federation peer origin with a path exits 2 naming the key (exit 2) OK federation peer origin with userinfo exits 2 naming the key (exit 2) OK federation peer id equal to self exits 2 naming the key (exit 2) OK federation peer label empty exits 2 naming the key (exit 2) OK federation not an object exits 2 naming the key (exit 2) OK federation self pattern exits 2 naming the key (exit 2) OK federation peers not an array exits 2 naming the key (exit 2) OK federation peer not an object exits 2 naming the key (exit 2) OK federation peer id pattern exits 2 naming the key (exit 2) OK federation peer label over 80 characters exits 2 naming the key (exit 2) OK federation duplicate peer id exits 2 naming the key (exit 2) OK federation peer origin with a trailing slash exits 2 naming the key (exit 2) OK federation self missing exits 2 naming the key (exit 2) OK federation peer id missing exits 2 naming the key (exit 2) OK federation peer label missing exits 2 naming the key (exit 2) OK config without federation loads and has no federation output OK config without console loads with unchanged output OK compactionReadBytes 8388608 loads and is in the output as written OK compactionReadBytes "x" loads and is in the output as written OK compactionStreams 2048 loads and is in the output as written OK compactionStreams "x" loads and is in the output as written OK failed validation modified nothing selftest: 55 passed, 0 failed