- IsAdminBootstrapRequired: userRepo.GetByID 循环 → GetByIDs 批量 - AssignRoles: roleRepo.GetByID 循环 → GetByIDs 批量 - 在 userRepositoryInterface 补充 GetByIDs 方法签名
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
import { describe, expect, it } from 'vitest'
|
|
|
|
import { BASE_SCENARIO_NAMES, parseSelectedScenarioNames, selectScenarioNames } from '../../scripts/playwright-e2e-scenarios.mjs'
|
|
|
|
describe('playwright-e2e-scenarios', () => {
|
|
it('prepends admin bootstrap when capabilities require it', () => {
|
|
const scenarioNames = selectScenarioNames({
|
|
requestedScenarioNames: parseSelectedScenarioNames(''),
|
|
expectAdminBootstrap: true,
|
|
})
|
|
|
|
expect(scenarioNames[0]).toBe('admin-bootstrap')
|
|
expect(scenarioNames.slice(1)).toEqual(BASE_SCENARIO_NAMES)
|
|
})
|
|
|
|
it('keeps admin bootstrap when filtering a later scenario', () => {
|
|
const scenarioNames = selectScenarioNames({
|
|
requestedScenarioNames: parseSelectedScenarioNames('email-activation'),
|
|
expectAdminBootstrap: true,
|
|
})
|
|
|
|
expect(scenarioNames).toEqual(['admin-bootstrap', 'email-activation'])
|
|
})
|
|
|
|
it('does not invent admin bootstrap when it is no longer required', () => {
|
|
const scenarioNames = selectScenarioNames({
|
|
requestedScenarioNames: parseSelectedScenarioNames('email-activation'),
|
|
expectAdminBootstrap: false,
|
|
})
|
|
|
|
expect(scenarioNames).toEqual(['email-activation'])
|
|
})
|
|
})
|