From 89bec5af88171ef31c93ddb60f5d33bce5bb0243 Mon Sep 17 00:00:00 2001 From: Bauke Date: Fri, 18 Mar 2022 00:03:46 +0100 Subject: [PATCH] Test that FeedbackButton returns early. --- tests/buttons/feedback-button.test.ts | 29 +++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/tests/buttons/feedback-button.test.ts b/tests/buttons/feedback-button.test.ts index 2b2f432..f1d8821 100644 --- a/tests/buttons/feedback-button.test.ts +++ b/tests/buttons/feedback-button.test.ts @@ -11,7 +11,7 @@ test.before(() => { }); test('FeedbackButton', async (t) => { - t.plan(5); + t.plan(7); const props: FeedbackButtonProps = { attributes: { @@ -23,7 +23,32 @@ test('FeedbackButton', async (t) => { timeout: 1000, }; - render(html`<${FeedbackButton} ...${props} />`, document); + const noFeedbackProps: FeedbackButtonProps = { + ...props, + attributes: { + id: 'no-feedback-button', + }, + click(event) { + props.click(event); + return false; + }, + }; + + render( + html` + <${FeedbackButton} ...${props} /> + <${FeedbackButton} ...${noFeedbackProps} /> + `, + document, + ); + + const noFeedbackButton = document.querySelector( + '#no-feedback-button', + )!; + + noFeedbackButton.click(); + await sleep(); + t.false(noFeedbackButton.outerHTML.includes(props.feedbackText)); const buttonElement = document.querySelector('#feedback-button')!;