fix: connector label editing (#12282)
Fixes [BS-3373](https://linear.app/affine-design/issue/BS-3373/connector%E7%9A%84%E5%8F%8C%E5%87%BB%E6%B7%BB%E5%8A%A0note%E8%A1%8C%E4%B8%BA%E5%8F%97%E5%88%B0%E4%BA%86%E8%A6%86%E7%9B%96%E8%8C%83%E5%9B%B4%E7%9A%84%E5%BD%B1%E5%93%8D) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Connector label elements now include identity and creator metadata. - **Bug Fixes** - Improved hit-testing for pointer interactions, resulting in more accurate detection of hovered elements. - **Refactor** - Enhanced internal comparison logic for elements, improving sorting and ordering consistency. - Strengthened type definitions for search filters, improving result accuracy and clarity. - **Tests** - Added end-to-end tests to verify correct label entry and retrieval for multiple connectors. - Introduced utility functions to fetch connector labels and improved connector creation in test actions. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
@@ -6,6 +6,7 @@ import {
|
||||
createShapeElement,
|
||||
dragBetweenViewCoords,
|
||||
edgelessCommonSetup as commonSetup,
|
||||
getConnectorLabel,
|
||||
locatorComponentToolbar,
|
||||
setEdgelessTool,
|
||||
Shape,
|
||||
@@ -332,4 +333,30 @@ test.describe('connector label with straight shape', () => {
|
||||
await type(page, 'c');
|
||||
await assertEdgelessCanvasText(page, 'c');
|
||||
});
|
||||
|
||||
test('should enter the correct label', async ({ page }) => {
|
||||
await commonSetup(page);
|
||||
const connector1 = await addBasicConnectorElement(
|
||||
page,
|
||||
{ x: 100, y: 200 },
|
||||
{ x: 300, y: 300 }
|
||||
);
|
||||
const connector2 = await addBasicConnectorElement(
|
||||
page,
|
||||
{ x: 300, y: 200 },
|
||||
{ x: 100, y: 300 }
|
||||
);
|
||||
|
||||
await page.mouse.dblclick(155, 207);
|
||||
await type(page, 'Connector 1');
|
||||
await page.keyboard.press('Escape');
|
||||
|
||||
expect(await getConnectorLabel(page, connector1)).toBe('Connector 1');
|
||||
|
||||
await page.mouse.dblclick(245, 207);
|
||||
await type(page, 'Connector 2');
|
||||
await page.keyboard.press('Escape');
|
||||
|
||||
await expect(await getConnectorLabel(page, connector2)).toBe('Connector 2');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user