mirror of
https://github.com/shoelace-style/webawesome.git
synced 2026-01-12 04:09:12 +00:00
add test for sl-include
This commit is contained in:
28
src/components/include/include.test.ts
Normal file
28
src/components/include/include.test.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import { expect, fixture, html, waitUntil } from '@open-wc/testing';
|
||||
import sinon from 'sinon';
|
||||
|
||||
import '../../../dist/shoelace.js';
|
||||
import type SlInclude from './include';
|
||||
|
||||
describe('<sl-include>', () => {
|
||||
it('should load content and emit sl-load', async () => {
|
||||
const el = await fixture(html` <sl-include src="https://jsonplaceholder.typicode.com/posts/1"></sl-include> `);
|
||||
const loadHandler = sinon.spy();
|
||||
|
||||
el.addEventListener('sl-load', loadHandler);
|
||||
await waitUntil(() => loadHandler.calledOnce);
|
||||
|
||||
expect(el.innerHTML).to.contain('"id": 1');
|
||||
expect(loadHandler).to.have.been.calledOnce;
|
||||
});
|
||||
|
||||
it('should emit sl-error when content cannot be loaded', async () => {
|
||||
const el = await fixture(html` <sl-include src="https://404"></sl-include> `);
|
||||
const loadHandler = sinon.spy();
|
||||
|
||||
el.addEventListener('sl-error', loadHandler);
|
||||
await waitUntil(() => loadHandler.calledOnce);
|
||||
|
||||
expect(loadHandler).to.have.been.calledOnce;
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user