18 lines
775 B
JavaScript
18 lines
775 B
JavaScript
import assert from 'node:assert/strict'
|
|
import test from 'node:test'
|
|
import { parseIframeEmbedMarkup } from '../lib/markdown-iframe-embed.js'
|
|
|
|
test('iframe allowfullscreen은 allow fullscreen 권한으로 정규화한다', () => {
|
|
const parsed = parseIframeEmbedMarkup('<iframe src="https://example.com/embed" allowfullscreen></iframe>')
|
|
|
|
assert.equal(parsed.src, 'https://example.com/embed')
|
|
assert.match(parsed.allow, /\bfullscreen\b/)
|
|
assert.equal(Object.hasOwn(parsed, 'allowFullscreen'), false)
|
|
})
|
|
|
|
test('iframe allow 속성은 안전한 문자만 보존한다', () => {
|
|
const parsed = parseIframeEmbedMarkup('<iframe src="https://example.com/embed" allow="fullscreen; autoplay; bad()"></iframe>')
|
|
|
|
assert.equal(parsed.allow, 'fullscreen; autoplay; bad')
|
|
})
|