Skip to content

Commit 676b571

Browse files
committed
Add initial onRenameRequest test cases
1 parent bbab0c4 commit 676b571

File tree

1 file changed

+38
-6
lines changed

1 file changed

+38
-6
lines changed

server/src/__tests__/server.test.ts

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1345,12 +1345,7 @@ describe('server', () => {
13451345
const { connection } = await initializeServer()
13461346

13471347
return connection.onPrepareRename.mock.calls[0][0](
1348-
{
1349-
textDocument: {
1350-
uri: FIXTURE_URI.RENAMING,
1351-
},
1352-
position: { line, character },
1353-
},
1348+
{ textDocument: { uri: FIXTURE_URI.RENAMING }, position: { line, character } },
13541349
{} as any,
13551350
)
13561351
}
@@ -1467,4 +1462,41 @@ describe('server', () => {
14671462
`)
14681463
})
14691464
})
1465+
1466+
describe('onRenameRequest', () => {
1467+
async function getRenameRequestResult(
1468+
line: LSP.uinteger,
1469+
character: LSP.uinteger,
1470+
newName = 'newName',
1471+
) {
1472+
const { connection } = await initializeServer()
1473+
1474+
return connection.onRenameRequest.mock.calls[0][0](
1475+
{
1476+
textDocument: { uri: FIXTURE_URI.RENAMING },
1477+
position: { line, character },
1478+
newName,
1479+
},
1480+
{} as any,
1481+
{} as any,
1482+
)
1483+
}
1484+
1485+
// Sanity check; these cases should already be covered by onPrepareRename.
1486+
it('returns null when a renamable symbol is not found', async () => {
1487+
// Comment
1488+
expect(await getRenameRequestResult(2, 9)).toBeNull()
1489+
})
1490+
1491+
it('throws an error when newName is invalid', async () => {
1492+
// Variables
1493+
await expect(getRenameRequestResult(12, 0, '_')).rejects.toThrow()
1494+
await expect(getRenameRequestResult(12, 0, '2')).rejects.toThrow()
1495+
await expect(getRenameRequestResult(12, 0, '1abc')).rejects.toThrow()
1496+
await expect(getRenameRequestResult(12, 0, 'ab%c')).rejects.toThrow()
1497+
// Functions
1498+
await expect(getRenameRequestResult(13, 0, '$')).rejects.toThrow()
1499+
await expect(getRenameRequestResult(13, 0, 'new$name')).rejects.toThrow()
1500+
})
1501+
})
14701502
})

0 commit comments

Comments
 (0)