mirror of https://github.com/Ombi-app/Ombi
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
163 lines
4.2 KiB
163 lines
4.2 KiB
import { movieDetailsPage as Page } from '@/integration/page-objects';
|
|
|
|
describe('Movie Details Buttons', () => {
|
|
it('Movie Requested by Admin should be auto approved', () => {
|
|
cy.login();
|
|
|
|
Page.visit('587807');
|
|
Page.requestButton.click();
|
|
Page.adminOptionsDialog.isOpen();
|
|
|
|
Page.adminOptionsDialog.requestButton.click();
|
|
|
|
cy.verifyNotification('Request for Tom & Jerry has been added successfully');
|
|
|
|
Page.requestedButton.should('be.visible');
|
|
});
|
|
|
|
it('Movie Requested by Regular user should be pending', () => {
|
|
cy.generateUniqueId().then((id) => {
|
|
cy.login();
|
|
const roles = [];
|
|
roles.push({ value: 'RequestMovie', enabled: true });
|
|
cy.createUser(id, 'a', roles).then(() => {
|
|
cy.loginWithCreds(id, 'a');
|
|
|
|
Page.visit('651571');
|
|
|
|
Page.requestButton.click();
|
|
cy.verifyNotification('Request for Breach has been added successfully');
|
|
|
|
Page.requestedButton.should('be.visible');
|
|
});
|
|
});
|
|
});
|
|
|
|
it('Movie Requested by Regular with no movie permission', () => {
|
|
cy.generateUniqueId().then((id) => {
|
|
cy.login();
|
|
const roles = [];
|
|
roles.push({ value: 'RequestTv', enabled: true });
|
|
cy.createUser(id, 'a', roles).then(() => {
|
|
cy.loginWithCreds(id, 'a');
|
|
|
|
Page.visit('791373');
|
|
|
|
Page.requestButton.click();
|
|
cy.verifyNotification('You do not have permissions to Request a Movie');
|
|
|
|
Page.requestedButton.should('not.exist');
|
|
});
|
|
});
|
|
});
|
|
|
|
it('Movie Requested by Regular can be approved by admin', () => {
|
|
cy.generateUniqueId().then((id) => {
|
|
cy.login();
|
|
const roles = [];
|
|
roles.push({ value: 'RequestMovie', enabled: true });
|
|
cy.createUser(id, 'a', roles).then(() => {
|
|
cy.loginWithCreds(id, 'a');
|
|
|
|
Page.visit('793723');
|
|
|
|
Page.requestButton.click();
|
|
cy.verifyNotification('Request for Sentinelle has been added successfully');
|
|
|
|
Page.requestedButton.should('be.visible');
|
|
|
|
// Login as admin now
|
|
cy.removeLogin();
|
|
cy.login();
|
|
cy.reload();
|
|
|
|
cy.intercept('GET', '**/Request/movie/info/**').as('requestCall');
|
|
|
|
Page.visit('793723');
|
|
|
|
cy.wait('@requestCall').then((__) => {
|
|
Page.approveButton.should('exist');
|
|
Page.approveButton.click();
|
|
|
|
cy.verifyNotification('Successfully Approved');
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
it('Movie Requested, mark as available', () => {
|
|
cy.login();
|
|
|
|
Page.visit('12444');
|
|
|
|
Page.requestButton.click();
|
|
Page.adminOptionsDialog.isOpen();
|
|
Page.adminOptionsDialog.requestButton.click();
|
|
cy.verifyNotification('Request for Harry Potter and the Deathly Hallows: Part 1 has been added successfully');
|
|
|
|
cy.intercept('GET', '**/Images/banner/movie/**').as('bannerLoad');
|
|
cy.reload();
|
|
|
|
cy.wait('@bannerLoad').then((__) => {
|
|
Page.markAvailableButton.should('exist');
|
|
Page.markAvailableButton.click();
|
|
|
|
cy.verifyNotification('Request is now available');
|
|
Page.availableButton.should('exist');
|
|
});
|
|
});
|
|
|
|
it.skip('Movie Requested, Deny Movie', () => {
|
|
cy.login();
|
|
|
|
Page.visit('671');
|
|
|
|
Page.requestButton.click();
|
|
Page.adminOptionsDialog.isOpen();
|
|
Page.adminOptionsDialog.requestButton.click();
|
|
cy.verifyNotification("Request for Harry Potter and the Philosopher's Stone has been added successfully");
|
|
|
|
cy.reload();
|
|
|
|
Page.denyButton.should('exist');
|
|
Page.denyButton.click();
|
|
|
|
Page.denyModal.denyReason.type('Automation Tests');
|
|
cy.wait(500);
|
|
Page.denyModal.denyButton.click();
|
|
|
|
Page.deniedButton.should('exist');
|
|
|
|
cy.verifyNotification('Denied Request');
|
|
|
|
cy.wait(1000);
|
|
Page.informationPanel.denyReason.should('have.text', 'Automation Tests');
|
|
});
|
|
|
|
it('Movie View Collection should be available', () => {
|
|
cy.login();
|
|
|
|
Page.visit('671');
|
|
|
|
Page.viewCollectionButton.should('be.visible');
|
|
});
|
|
|
|
it('Non requested movie valid buttons', () => {
|
|
cy.login();
|
|
|
|
Page.visit('590706');
|
|
|
|
Page.viewCollectionButton.should('not.exist');
|
|
Page.approveButton.should('not.exist');
|
|
Page.denyButton.should('not.exist');
|
|
Page.deniedButton.should('not.exist');
|
|
Page.markAvailableButton.should('not.exist');
|
|
Page.viewOnEmbyButton.should('not.exist');
|
|
Page.viewOnJellyfinButton.should('not.exist');
|
|
Page.viewOnPlexButton.should('not.exist');
|
|
Page.requestedButton.should('not.exist');
|
|
Page.reportIssueButton.should('not.exist'); // Issuess not enabled
|
|
Page.requestButton.should('exist');
|
|
});
|
|
});
|