46 lines
1.6 KiB
JavaScript
46 lines
1.6 KiB
JavaScript
import { ALL_EMOJI, basicAfterEach, basicBeforeEach, tick } from '../shared.js'
|
|
import Picker from '../../../src/picker/PickerElement.js'
|
|
import * as testingLibrary from '@testing-library/dom'
|
|
import { getByRole, waitFor } from '@testing-library/dom'
|
|
import Database from '../../../src/database/Database.js'
|
|
|
|
describe('Picker custom emojiVersion tests', () => {
|
|
let picker
|
|
|
|
beforeEach(async () => {
|
|
await basicBeforeEach()
|
|
})
|
|
|
|
afterEach(async () => {
|
|
await tick(20)
|
|
document.body.removeChild(picker)
|
|
await tick(20)
|
|
await new Database({ dataSource: ALL_EMOJI, locale: 'en' }).delete()
|
|
await tick(20)
|
|
await basicAfterEach()
|
|
})
|
|
|
|
test('can use the emojiVersion property', async () => {
|
|
picker = new Picker({ dataSource: ALL_EMOJI, locale: 'en', emojiVersion: '10.0' })
|
|
document.body.appendChild(picker)
|
|
|
|
await waitFor(() => expect(
|
|
// Normally this would be 20, but because we set the emoji version to 10.0, the 🥰 is excluded
|
|
testingLibrary.getAllByRole(getByRole(picker.shadowRoot, 'tabpanel'), 'menuitem')).toHaveLength(19),
|
|
{ timeout: 2000 }
|
|
)
|
|
})
|
|
|
|
test('can use the emoji-version attribute', async () => {
|
|
picker = new Picker({ dataSource: ALL_EMOJI, locale: 'en' })
|
|
picker.setAttribute('emoji-version', '10.0')
|
|
document.body.appendChild(picker)
|
|
|
|
await waitFor(() => expect(
|
|
// Normally this would be 20, but because we set the emoji version to 10.0, the 🥰 is excluded
|
|
testingLibrary.getAllByRole(getByRole(picker.shadowRoot, 'tabpanel'), 'menuitem')).toHaveLength(19),
|
|
{ timeout: 2000 }
|
|
)
|
|
})
|
|
})
|