mirror of
https://github.com/xuthus83/pigallery2.git
synced 2024-11-03 21:04:03 +08:00
112 lines
3.4 KiB
TypeScript
112 lines
3.4 KiB
TypeScript
describe('Share', () => {
|
|
beforeEach(() => {
|
|
cy.viewport(1200, 600);
|
|
cy.visit('/');
|
|
cy.get('.card-body');
|
|
cy.get('.col-sm-12').contains('Login');
|
|
/* ==== Generated with Cypress Studio ==== */
|
|
cy.get('#username').type('admin');
|
|
cy.get('#password').clear();
|
|
cy.get('#password').type('admin');
|
|
cy.intercept({
|
|
method: 'Get',
|
|
url: '/pgapi/gallery/content/',
|
|
}).as('getContent');
|
|
cy.get('.col-sm-12 > .btn').click();
|
|
});
|
|
it('Open password protected sharing', () => {
|
|
cy.wait('@getContent');
|
|
|
|
cy.get('button#shareButton').click();
|
|
cy.get('input#share-password').type('secret', {force: true});
|
|
cy.get('button#getShareButton').click();
|
|
|
|
cy.get('input#shareLink').should('contain.value', 'http');
|
|
cy.get('input#shareLink')
|
|
.invoke('val')
|
|
.then((link: string) => {
|
|
cy.get('button.btn-close').click();
|
|
cy.get('button#button-frame-menu').click();
|
|
cy.get('#dropdown-frame-menu ng-icon[name="ionLogOutOutline"]').click({scrollBehavior: false});
|
|
|
|
cy.intercept({
|
|
method: 'Get',
|
|
url: '/pgapi/gallery/content/*',
|
|
}).as('getSharedContent');
|
|
cy.visit(link);
|
|
cy.get('input#password').type('secret');
|
|
cy.get('button#button-share-login').click();
|
|
|
|
|
|
cy.get('.mb-0 > :nth-child(1) > .nav-link').contains('Gallery');
|
|
|
|
cy.wait('@getSharedContent').then((interception) => {
|
|
assert.isNotNull(interception.response.body, '1st API call has data');
|
|
assert.isNull(interception.response.body?.error, '1st API call has data');
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
it('Open password protected sharing with logged in user', () => {
|
|
cy.wait('@getContent');
|
|
|
|
cy.get('button#shareButton').click();
|
|
cy.get('input#share-password').type('secret', {force: true});
|
|
cy.get('button#getShareButton').click();
|
|
|
|
cy.get('input#shareLink').should('contain.value', 'http');
|
|
cy.get('input#shareLink')
|
|
.invoke('val')
|
|
.then((link: string) => {
|
|
|
|
cy.intercept({
|
|
method: 'Get',
|
|
url: '/pgapi/gallery/content/*',
|
|
}).as('getSharedContent');
|
|
cy.visit(link);
|
|
|
|
|
|
cy.get('.mb-0 > :nth-child(1) > .nav-link').contains('Gallery');
|
|
|
|
cy.wait('@getSharedContent').then((interception) => {
|
|
assert.isNotNull(interception.response.body, '1st API call has data');
|
|
assert.isNull(interception.response.body?.error, '1st API call has data');
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
|
|
it('Open no password sharing', () => {
|
|
cy.wait('@getContent');
|
|
|
|
cy.get('button#shareButton').click();
|
|
cy.get('button#getShareButton').click();
|
|
|
|
cy.get('input#shareLink').should('contain.value', 'http');
|
|
cy.get('input#shareLink')
|
|
.invoke('val')
|
|
.then((link: string) => {
|
|
cy.get('button.btn-close').click();
|
|
cy.get('button#button-frame-menu').click();
|
|
cy.get('#dropdown-frame-menu ng-icon[name="ionLogOutOutline"]').click({scrollBehavior: false});
|
|
|
|
|
|
cy.intercept({
|
|
method: 'Get',
|
|
url: '/pgapi/gallery/content/*',
|
|
}).as('getSharedContent');
|
|
cy.visit(link);
|
|
|
|
|
|
cy.get('.mb-0 > :nth-child(1) > .nav-link').contains('Gallery');
|
|
|
|
cy.wait('@getSharedContent').then((interception) => {
|
|
assert.isNotNull(interception.response.body, '1st API call has data');
|
|
assert.isNull(interception.response.body?.error, '1st API call has data');
|
|
});
|
|
});
|
|
});
|
|
});
|