Skip to content

Commit 5fafa33

Browse files
pcarletonclaude
andcommitted
[auth] Add metadata suite for running metadata discovery tests
Adds a new 'metadata' suite that runs just the auth/metadata-* scenarios for faster iteration when testing metadata discovery specifically. Usage: node dist/index.mjs client --suite metadata --command "..." 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent de16bea commit 5fafa33

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

src/index.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ import {
1414
listScenarios,
1515
listClientScenarios,
1616
listActiveClientScenarios,
17-
listAuthScenarios
17+
listAuthScenarios,
18+
listMetadataScenarios
1819
} from './scenarios';
1920
import { ConformanceCheck } from './types';
2021
import { ClientOptionsSchema, ServerOptionsSchema } from './schemas';
@@ -51,7 +52,8 @@ program
5152
}
5253

5354
const suites: Record<string, () => string[]> = {
54-
auth: listAuthScenarios
55+
auth: listAuthScenarios,
56+
metadata: listMetadataScenarios
5557
};
5658

5759
const suiteName = options.suite.toLowerCase();
@@ -147,7 +149,7 @@ program
147149
console.error('Either --scenario or --suite is required');
148150
console.error('\nAvailable client scenarios:');
149151
listScenarios().forEach((s) => console.error(` - ${s}`));
150-
console.error('\nAvailable suites: auth');
152+
console.error('\nAvailable suites: auth, metadata');
151153
process.exit(1);
152154
}
153155

src/scenarios/client/auth/discovery-metadata.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,3 +217,8 @@ export const AuthMetadataVar3Scenario = createMetadataScenario(
217217

218218
// Export all scenarios as an array for convenience
219219
export const metadataScenarios = SCENARIO_CONFIGS.map(createMetadataScenario);
220+
221+
// Export function to list metadata scenario names (for suite support)
222+
export function listMetadataScenarios(): string[] {
223+
return metadataScenarios.map((s) => s.name);
224+
}

src/scenarios/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ import {
4646
} from './server/prompts.js';
4747

4848
import { authScenariosList } from './client/auth/index.js';
49+
import { listMetadataScenarios } from './client/auth/discovery-metadata.js';
4950

5051
// Pending client scenarios (not yet fully tested/implemented)
5152
const pendingClientScenariosList: ClientScenario[] = [
@@ -151,3 +152,5 @@ export function listActiveClientScenarios(): string[] {
151152
export function listAuthScenarios(): string[] {
152153
return authScenariosList.map((scenario) => scenario.name);
153154
}
155+
156+
export { listMetadataScenarios };

0 commit comments

Comments
 (0)