WYSIWYG: 스냅 유틸 공통화(snap8/snapAngle) 및 메인플랜 업데이트

This commit is contained in:
2025-11-16 22:17:43 +09:00
parent 98d33fc0d0
commit 66cb36cd9d
3 changed files with 50 additions and 0 deletions
+24
View File
@@ -0,0 +1,24 @@
import { describe, it, expect } from 'vitest'
import { snap8, snapAngle } from '@/lib/wysiwyg/snap'
describe('snap utils', () => {
it('snap8 rounds to nearest 8', () => {
expect(snap8(0)).toBe(0)
expect(snap8(3)).toBe(0)
expect(snap8(4)).toBe(8)
expect(snap8(11)).toBe(8)
expect(snap8(12)).toBe(16)
})
it('snapAngle snaps to 15deg by default', () => {
expect(snapAngle(0)).toBe(0)
expect(snapAngle(7)).toBe(15)
expect(snapAngle(22)).toBe(15)
expect(snapAngle(30)).toBe(30)
})
it('snapAngle respects fine=true (1deg)', () => {
expect(snapAngle(7, true)).toBe(7)
expect(snapAngle(22, true)).toBe(22)
})
})