wisemapping-frontend/packages/editor/cypress/e2e/topicShape.cy.js
2022-10-31 13:48:31 -07:00

52 lines
1.8 KiB
JavaScript

context('Change Topic shape', () => {
beforeEach(() => {
cy.visit('/editor.html');
cy.reload();
cy.contains('Try it Now!').click();
});
it('change to square shape', () => {
cy.get(`[aria-label="Topic Style"]`).trigger('mouseover');
cy.get(`[aria-label="Rectangle shape"]`).click();
cy.get('[test-id=11] > rect').eq(1).invoke('attr', 'rx').should('eq', '0.0');
cy.matchImageSnapshot('changeToSquareShape');
});
it('change to rounded rectangle', () => {
cy.contains('Mind Mapping').click();
cy.get(`[aria-label="Topic Style"]`).trigger('mouseover');
cy.get(`[aria-label="Rounded shape"]`).click();
// Todo: Check how to validate this. Difference when it run in docker vs test:integration
cy.get('[test-id=6] > rect').eq(1).invoke('attr', 'rx').then(parseInt).should('be.a', 'number').should('be.gte', 4);
cy.get('[test-id=6] > rect').eq(1).invoke('attr', 'rx').then(parseInt).should('be.a', 'number').should('be.lt', 5);
cy.matchImageSnapshot('changeToRoundedRectangle');
});
it('change to line', () => {
cy.contains('Try it Now!').click();
cy.get(`[aria-label="Topic Style"]`).trigger('mouseover');
cy.get(`[aria-label="Line shape"]`).click();
cy.matchImageSnapshot('changeToLine');
});
it('change to ellipse shape', () => {
cy.contains('Productivity').click();
cy.get(`[aria-label="Topic Style"]`).trigger('mouseover');
cy.get(`[aria-label="Ellipse shape"]`).click();
// Todo: Check how to validate this. Difference when it run in docker vs test:integration
cy.get('[test-id=2] > rect').eq(1).invoke('attr', 'rx').then(parseInt).should('be.a', 'number').should('be.gte', 12);
cy.get('[test-id=2] > rect').eq(1).invoke('attr', 'rx').then(parseInt).should('be.a', 'number').should('be.lt', 15);
cy.matchImageSnapshot('changeToEllipseShape');
});
});