fix(test): add roleName to login in mock server (#5794)

This commit is contained in:
Junyi 2024-12-05 16:24:25 +08:00 committed by GitHub
parent 331c3002ba
commit 7c6e863c8d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -68,8 +68,8 @@ interface Resource {
} }
interface ExtendedAgent extends SuperAgentTest { interface ExtendedAgent extends SuperAgentTest {
login: (user: any) => ExtendedAgent; login: (user: any, roleName?: string) => ExtendedAgent;
loginUsingId: (userId: number) => ExtendedAgent; loginUsingId: (userId: number, roleName?: string) => ExtendedAgent;
resource: (name: string, resourceOf?: any) => Resource; resource: (name: string, resourceOf?: any) => Resource;
} }
@ -117,13 +117,14 @@ export class MockServer extends Application {
const proxy = new Proxy(agent, { const proxy = new Proxy(agent, {
get(target, method: string, receiver) { get(target, method: string, receiver) {
if (['login', 'loginUsingId'].includes(method)) { if (['login', 'loginUsingId'].includes(method)) {
return (userOrId: any) => { return (userOrId: any, roleName?: string) => {
return proxy return proxy
.auth( .auth(
jwt.sign( jwt.sign(
{ {
userId: typeof userOrId === 'number' ? userOrId : userOrId?.id, userId: typeof userOrId === 'number' ? userOrId : userOrId?.id,
temp: true, temp: true,
roleName,
}, },
process.env.APP_KEY, process.env.APP_KEY,
{ {