@point3/logto-module
Version:
포인트3 내부 logto Authentication 모듈입니다
68 lines • 2.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const testing_1 = require("@nestjs/testing");
const config_1 = require("@nestjs/config");
const point3_common_tool_1 = require("point3-common-tool");
const __1 = require("..");
const token_1 = require("../../token");
const common_1 = require("@nestjs/common");
describe('M2mclient를 이용한 Logto API 테스트', () => {
let m2mClient;
let testUser;
let testUserId = 'bead71jr45u1';
let testRoleId = '0fwcgs8okjy7lav216sb3';
beforeAll(async () => {
const module = await testing_1.Test.createTestingModule({
imports: [
config_1.ConfigModule.forRoot({
envFilePath: `env/.env.${process.env.NODE_ENV}`,
isGlobal: true,
})
],
providers: [
{
provide: token_1.LogtoTokenVerifierToken,
useClass: token_1.LogtoTokenVerifier
},
{
provide: __1.LogtoLoggerServiceToken,
useClass: common_1.ConsoleLogger
}
],
}).compile();
m2mClient = module.get(__1.LogtoM2MClientToken);
const randomNumber = Math.floor(1000 + Math.random() * 9000);
testUser = {
username: point3_common_tool_1.p3Values.Guid.create('test').toString().replace(/-/g, '_'),
name: 'test' + randomNumber,
primaryEmail: 'test' + randomNumber + '@test.com',
password: 'test123',
primaryPhone: '0101111' + randomNumber,
};
});
it('유저 생성', async () => {
const userId = await m2mClient.createUser(testUser);
expect(userId).toBeDefined();
testUserId = userId;
});
it('토큰 발급', async () => {
await m2mClient.fetchAccessToken();
});
it('PAT 추가 및 삭제', async () => {
const tokenName = 'test_pat_' + Math.floor(1000 + Math.random() * 9000);
const newToken = await m2mClient.addPersonalAccessToken(testUserId, tokenName, 3600);
expect(newToken).toBeDefined();
expect(newToken.name).toBe(tokenName);
const tokens = await m2mClient.getPersonalAccessTokens(testUserId);
const foundToken = tokens.find(t => t.name === tokenName);
expect(foundToken).toBeDefined();
await m2mClient.deletePersonalAccessToken(testUserId, tokenName);
const tokensAfterDelete = await m2mClient.getPersonalAccessTokens(testUserId);
const deletedToken = tokensAfterDelete.find(t => t.name === tokenName);
expect(deletedToken).toBeUndefined();
});
it('유저 정보 수정', async () => {
await m2mClient.updateUserClientInfo(testUserId);
});
});
//# sourceMappingURL=m2m-client.spec.js.map