@salla.sa/twilight-components
Version:
Salla Web Component
55 lines (54 loc) • 1.79 kB
JavaScript
/*!
* Crafted with ❤ by Salla
*/
import { newSpecPage } from "@stencil/core/testing";
import { SallaLoginModal } from "../salla-login-modal";
describe('salla login modal', () => {
it('should build', () => {
expect(new SallaLoginModal()).toBeTruthy();
});
describe('checking for props', () => {
let page;
let element;
beforeEach(async () => {
page = await newSpecPage({
components: [SallaLoginModal],
html: `<salla-login-modal></salla-login-modal>`
});
element = await page.doc.querySelector('salla-login-modal');
});
it('should work for is-email-allowed prop', async () => {
element.isEmailAllowed = false;
await page.waitForChanges();
expect(element.isEmailAllowed).toBe(false);
});
it('should work for is-mobile-allowed prop', async () => {
element.isMobileAllowed = false;
await page.waitForChanges();
expect(element.isMobileAllowed).toBe(false);
});
it('should work for is-email-required prop', async () => {
element.isEmailRequired = true;
await page.waitForChanges();
expect(element.isEmailRequired).toBe(true);
});
});
describe('checking for method calls', () => {
let page;
//@ts-ignore
let element;
beforeEach(async () => {
page = await newSpecPage({
components: [SallaLoginModal],
html: `<salla-login-modal></salla-login-modal>`
});
element = await page.doc.querySelector('salla-login-modal');
});
it("should be able to call method to open the modal", async () => {
await page.root.open();
await page.waitForChanges();
expect(page.rootInstance.modal).toBeInstanceOf(HTMLSallaModalElement);
});
});
});
//# sourceMappingURL=salla-login-modal.spec.js.map