mirror of
				https://github.com/excalidraw/excalidraw.git
				synced 2025-10-26 01:14:21 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { makeNextSelectedElementIds } from "../src/selection";
 | |
| 
 | |
| describe("makeNextSelectedElementIds", () => {
 | |
|   const _makeNextSelectedElementIds = (
 | |
|     selectedElementIds: { [id: string]: true },
 | |
|     prevSelectedElementIds: { [id: string]: true },
 | |
|     expectUpdated: boolean,
 | |
|   ) => {
 | |
|     const ret = makeNextSelectedElementIds(selectedElementIds, {
 | |
|       selectedElementIds: prevSelectedElementIds,
 | |
|     });
 | |
|     expect(ret === selectedElementIds).toBe(expectUpdated);
 | |
|   };
 | |
|   it("should return prevState selectedElementIds if no change", () => {
 | |
|     _makeNextSelectedElementIds({}, {}, false);
 | |
|     _makeNextSelectedElementIds({ 1: true }, { 1: true }, false);
 | |
|     _makeNextSelectedElementIds(
 | |
|       { 1: true, 2: true },
 | |
|       { 1: true, 2: true },
 | |
|       false,
 | |
|     );
 | |
|   });
 | |
|   it("should return new selectedElementIds if changed", () => {
 | |
|     // _makeNextSelectedElementIds({ 1: true }, { 1: false }, true);
 | |
|     _makeNextSelectedElementIds({ 1: true }, {}, true);
 | |
|     _makeNextSelectedElementIds({}, { 1: true }, true);
 | |
|     _makeNextSelectedElementIds({ 1: true }, { 2: true }, true);
 | |
|     _makeNextSelectedElementIds({ 1: true }, { 1: true, 2: true }, true);
 | |
|     _makeNextSelectedElementIds(
 | |
|       { 1: true, 2: true },
 | |
|       { 1: true, 3: true },
 | |
|       true,
 | |
|     );
 | |
|   });
 | |
| });
 | 
