mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-05 19:04:02 +00:00
fix: report keyless OpenSky access in setup doctor
This commit is contained in:
1 parent
0272635f25
commit
7da812eddd
5 files changed
+75
-8
No files matched your search
@@ -12,6 +12,7 @@ import {
|
||||
isConfiguredValue,
|
||||
npmProcessSpec,
|
||||
readDoctorDotenvValue,
|
||||
resolveOpenSkyAuthMode,
|
||||
resolveCredential,
|
||||
} from '../scripts/setup-doctor.mjs';
|
||||
|
||||
@@ -145,6 +146,41 @@ test('doctor reads the dotenv ladder without requiring Vite to be installed', ()
|
||||
}
|
||||
});
|
||||
|
||||
test('doctor resolves OpenSky auth mode with launcher-compatible precedence', () => {
|
||||
const root = mkdtempSync(path.join(tmpdir(), 'gev-doctor-opensky-mode-'));
|
||||
try {
|
||||
writeFileSync(path.join(root, '.env'), 'OPENSKY_AUTH_MODE=anon\n');
|
||||
assert.equal(resolveOpenSkyAuthMode({ environment: {}, rootDir: root }), 'anon');
|
||||
assert.equal(resolveOpenSkyAuthMode({ environment: { OPENSKY_AUTH_MODE: 'oauth' }, rootDir: root }), 'oauth');
|
||||
assert.equal(resolveOpenSkyAuthMode({ environment: { OPENSKY_AUTH_MODE: '' }, rootDir: root }), 'anon');
|
||||
assert.equal(resolveOpenSkyAuthMode({ environment: { OPENSKY_AUTH_MODE: 'invalid' }, rootDir: root }), 'oauth');
|
||||
} finally {
|
||||
rmSync(root, { recursive: true, force: true });
|
||||
}
|
||||
});
|
||||
|
||||
test('doctor reports keyless anonymous OpenSky access for explicit anon mode', () => {
|
||||
const credentials = {
|
||||
OPENSKY_CLIENT_ID: { configured: true },
|
||||
OPENSKY_CLIENT_SECRET: { configured: true },
|
||||
};
|
||||
assert.equal(
|
||||
buildCapabilitySummary(credentials, { openSkyAuthMode: 'anon' }).flights,
|
||||
'OpenSky keyless anonymous access (rate-limited)',
|
||||
);
|
||||
});
|
||||
|
||||
test('doctor retains OAuth capability wording for a complete client pair', () => {
|
||||
const credentials = {
|
||||
OPENSKY_CLIENT_ID: { configured: true },
|
||||
OPENSKY_CLIENT_SECRET: { configured: true },
|
||||
};
|
||||
assert.equal(
|
||||
buildCapabilitySummary(credentials, { openSkyAuthMode: 'oauth' }).flights,
|
||||
'OpenSky OAuth credentials present (runtime mode and validity not verified)',
|
||||
);
|
||||
});
|
||||
|
||||
test('doctor describes the credential ladder without exposing values', () => {
|
||||
const credentials = {
|
||||
GOOGLE_MAPS_API_KEY: { configured: false },
|
||||
@@ -163,7 +199,7 @@ test('doctor describes the credential ladder without exposing values', () => {
|
||||
assert.match(capabilities.map, /Bing and world-terrain stacks/);
|
||||
assert.equal(capabilities.voice, 'available');
|
||||
assert.match(capabilities.missions, /token allowance/);
|
||||
assert.equal(capabilities.flights, 'OpenSky OAuth credentials not configured');
|
||||
assert.equal(capabilities.flights, 'OpenSky keyless anonymous access (rate-limited)');
|
||||
|
||||
const report = formatSetupReport({
|
||||
ready: true,
|
||||
|
||||
Reference in new issue
Block a user