Fix test for assignment highlights

This commit is contained in:
Ramon Wenger 2024-03-12 16:45:49 +01:00
parent d13f889131
commit 40fb51fa39
1 changed files with 15 additions and 9 deletions

View File

@ -555,7 +555,7 @@ describe('Highlights', () => {
cy.getByDataCy('highlight-popover').should('not.exist'); cy.getByDataCy('highlight-popover').should('not.exist');
}); });
describe.skip('with paragraphs and lists', () => { describe('with paragraphs and lists', () => {
beforeEach(() => { beforeEach(() => {
const contents = [ const contents = [
{ {
@ -596,8 +596,12 @@ describe('Highlights', () => {
assignment: { assignment: {
id: 'QXNzaWdubWVudE5vZGU6Mzk=', id: 'QXNzaWdubWVudE5vZGU6Mzk=',
title: 'A LF1 A13: Ziele und Vorhaben', title: 'A LF1 A13: Ziele und Vorhaben',
assignment: assignment: `<p data-block-key="6fgwz">Ihr Produkt und Ihre Erkenntnisse aus dem folgenden Lernauftrag können Sie in Ihr persönliches Portfolio aufnehmen.</p><p data-block-key="1l7np">Notieren Sie Ihre Ziele und Vorhaben für Ihre berufliche und private Zukunft. Gestalten Sie anschliessend ein Vision Board als Plakat oder in digitaler Form.</p>
'<p data-block-key="6fgwz">Ihr Produkt und Ihre Erkenntnisse aus dem folgenden Lernauftrag können Sie in Ihr persönliches Portfolio aufnehmen.</p><p data-block-key="1l7np">Notieren Sie Ihre Ziele und Vorhaben für Ihre berufliche und private Zukunft. Gestalten Sie anschliessend ein Vision Board als Plakat oder in digitaler Form.</p><p data-block-key="a0fqk">Zusätzliche Möglichkeit: Sie wählen Ziele und Vorhaben für ein gesellschaftliches Thema wie zum Beispiel Zusammenleben, Weltfrieden, Naturschutz usw.</p><p data-block-key="6kj6a">Hinweis: Im Internet finden Sie zahlreiche Anleitungen zum Erstellen eines Vision Boards. Lassen Sie sich dadurch inspirieren, doch verwenden Sie keine Vorlagen. Vertrauen Sie auf Ihre eigene Kreativität und kreieren Sie Ihr ganz persönliches Vision Board.</p>', <ul>
<li>Ein ListItem</li>
<li>Noch eins</li>
</ul>
<p data-block-key="a0fqk">Zusätzliche Möglichkeit: Sie wählen Ziele und Vorhaben für ein gesellschaftliches Thema wie zum Beispiel Zusammenleben, Weltfrieden, Naturschutz usw.</p><p data-block-key="6kj6a">Hinweis: Im Internet finden Sie zahlreiche Anleitungen zum Erstellen eines Vision Boards. Lassen Sie sich dadurch inspirieren, doch verwenden Sie keine Vorlagen. Vertrauen Sie auf Ihre eigene Kreativität und kreieren Sie Ihr ganz persönliches Vision Board.</p>`,
solution: null, solution: null,
}, },
}, },
@ -610,30 +614,32 @@ describe('Highlights', () => {
}); });
it('highlights a paragraph', () => { it('highlights a paragraph', () => {
markText('assignment-main-text'); markText('assignment-main-text');
const highlightedText = 'rst, there'; const highlightedText = 'r Produkt';
createHighlight(highlightedText, true); createHighlight(highlightedText, true);
updateHighlight(highlightedText); updateHighlight(highlightedText);
addNote(); addNote();
deleteHighlight(); deleteHighlight();
}); });
it('highlights a list item', () => { it('highlights a list item', () => {
cy.getByDataCy('assignment-main-text').should('contain.text', 'Ihr Produkt');
markText('assignment-main-text', 'li'); markText('assignment-main-text', 'li');
const highlightedText = 'en, there'; const highlightedText = 'n ListItem';
createHighlight(highlightedText, true); createHighlight(highlightedText, true);
updateHighlight(highlightedText); updateHighlight(highlightedText);
addNote(); addNote();
deleteHighlight(); deleteHighlight();
}); });
it('highlights a paragraph and a list item', () => { // todo: this test does not handle the cache update correctly when having 2 highlights. This is a test problem, not a code problem
const highlightedText = 'rst, there'; it.skip('highlights a paragraph and a list item', () => {
const highlightedText = 'r Produkt';
markText('assignment-main-text', 'p'); markText('assignment-main-text', 'p');
createHighlight(highlightedText, true); createHighlight(highlightedText, true);
// click outside the created components to make them disappear // click outside the created components to make them disappear
cy.getByDataCy('module-title').click(); cy.getByDataCy('module-title').click();
const secondHighlightedText = 'en, there'; const secondHighlightedText = 'n ListItem';
markText('text-block', 'li'); markText('assignment-main-text', 'li');
createHighlight(secondHighlightedText, true, 2); createHighlight(secondHighlightedText, true, 2);
updateHighlight(secondHighlightedText); updateHighlight(secondHighlightedText);
addNote(); addNote();