This commit is contained in:
parent
0e9dc61961
commit
ff2bbbc977
|
|
@ -57,6 +57,20 @@ describe('Identity Service E2E Tests', () => {
|
|||
prisma = app.get<PrismaService>(PrismaService);
|
||||
|
||||
await app.init();
|
||||
|
||||
// 清理数据库,为测试准备干净的环境
|
||||
await prisma.userDevice.deleteMany();
|
||||
await prisma.walletAddress.deleteMany();
|
||||
await prisma.userAccount.deleteMany();
|
||||
|
||||
// 初始化账户序列号生成器
|
||||
await prisma.accountSequenceGenerator.deleteMany();
|
||||
await prisma.accountSequenceGenerator.create({
|
||||
data: {
|
||||
id: 1,
|
||||
currentSequence: BigInt(100000),
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
|
|
@ -233,16 +247,30 @@ describe('Identity Service E2E Tests', () => {
|
|||
});
|
||||
|
||||
it('应该限制设备数量为5个', async () => {
|
||||
// 添加5个设备
|
||||
for (let i = 0; i < 5; i++) {
|
||||
// 创建新的独立账户用于测试设备限制(包含1个初始设备)
|
||||
const newAccount = await request(app.getHttpServer())
|
||||
.post('/api/v1/user/auto-create')
|
||||
.send({
|
||||
deviceId: `limit-test-initial-${Date.now()}`,
|
||||
deviceName: 'Initial Device',
|
||||
provinceCode: '110000',
|
||||
cityCode: '110100',
|
||||
})
|
||||
.expect(201);
|
||||
|
||||
const testAccountSequence = newAccount.body.data.accountSequence;
|
||||
const testMnemonic = newAccount.body.data.mnemonic;
|
||||
|
||||
// 再添加4个设备,达到5个限制
|
||||
for (let i = 0; i < 4; i++) {
|
||||
const testDeviceId = `test-device-limit-${Date.now()}-${i}`;
|
||||
const response = await request(app.getHttpServer())
|
||||
.post('/api/v1/user/recover-by-mnemonic')
|
||||
.send({
|
||||
accountSequence,
|
||||
mnemonic,
|
||||
accountSequence: testAccountSequence,
|
||||
mnemonic: testMnemonic,
|
||||
newDeviceId: testDeviceId,
|
||||
deviceName: `设备${i + 1}`,
|
||||
deviceName: `设备${i + 2}`, // 从设备2开始命名(设备1是初始设备)
|
||||
});
|
||||
|
||||
if (response.status !== 201) {
|
||||
|
|
@ -255,13 +283,13 @@ describe('Identity Service E2E Tests', () => {
|
|||
expect(response.status).toBe(201);
|
||||
}
|
||||
|
||||
// 尝试添加第6个设备,应该失败
|
||||
// 现在已经有5个设备了,尝试添加第6个设备,应该失败
|
||||
const sixthDeviceId = `test-device-sixth-${Date.now()}`;
|
||||
await request(app.getHttpServer())
|
||||
.post('/api/v1/user/recover-by-mnemonic')
|
||||
.send({
|
||||
accountSequence,
|
||||
mnemonic,
|
||||
accountSequence: testAccountSequence,
|
||||
mnemonic: testMnemonic,
|
||||
newDeviceId: sixthDeviceId,
|
||||
deviceName: '第6个设备',
|
||||
})
|
||||
|
|
|
|||
Loading…
Reference in New Issue