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.
102 lines
2.8 KiB
102 lines
2.8 KiB
import { BasePage } from "../../base.page";
|
|
import { AdminRequestDialog } from "../../shared/AdminRequestDialog";
|
|
|
|
class TvRequestPanel {
|
|
|
|
seasonTab(seasonNumber: number): Cypress.Chainable<any> {
|
|
return cy.getByData("classStatus"+seasonNumber);
|
|
}
|
|
|
|
getSeasonMasterCheckbox(seasonNumber: number): Cypress.Chainable<any> {
|
|
return cy.getByData("masterCheckbox"+seasonNumber);
|
|
}
|
|
|
|
getEpisodeSeasonCheckbox(seasonNumber: number, episodeNumber?: number): Cypress.Chainable<any> {
|
|
return cy.getByData("episodeCheckbox"+seasonNumber+episodeNumber);
|
|
}
|
|
|
|
getEpisodeCheckbox(seasonNumber: number): Cypress.Chainable<any> {
|
|
return cy.getByDataLike("episodeCheckbox"+seasonNumber);
|
|
}
|
|
|
|
getEpisodeStatus(seasonNumber: number, episodeNumber?: number): Cypress.Chainable<any> {
|
|
if (episodeNumber) {
|
|
return cy.getByData('episodeStatus'+seasonNumber+episodeNumber);
|
|
}
|
|
return cy.getByDataLike('episodeStatus'+seasonNumber);
|
|
}
|
|
}
|
|
|
|
class RequestFabButton {
|
|
|
|
get requestSelected(): Cypress.Chainable<any> {
|
|
return cy.get('#requestSelected');
|
|
}
|
|
|
|
get requestLatest(): Cypress.Chainable<any> {
|
|
return cy.get('#requestLatest');
|
|
}
|
|
|
|
get requestFirst(): Cypress.Chainable<any> {
|
|
return cy.get('#requestFirst');
|
|
}
|
|
|
|
get fab(): Cypress.Chainable<any> {
|
|
return cy.get('#addFabBtn');
|
|
}
|
|
}
|
|
|
|
class TvDetailsInformationPanel {
|
|
|
|
get status(): Cypress.Chainable<any> {
|
|
return cy.get('#status');
|
|
}
|
|
|
|
getStreaming(streamName: string): Cypress.Chainable<any> {
|
|
return cy.get(`#stream${streamName}`);
|
|
}
|
|
}
|
|
|
|
class TvDetailsPage extends BasePage {
|
|
|
|
get title(): Cypress.Chainable<any> {
|
|
return cy.get('#mediaTitle');
|
|
}
|
|
|
|
get availableButton(): Cypress.Chainable<any> {
|
|
return cy.get('#availableBtn');
|
|
}
|
|
|
|
get requestButton(): Cypress.Chainable<any> {
|
|
return cy.get('#requestBtn');
|
|
}
|
|
|
|
get partiallyAvailableButton(): Cypress.Chainable<any> {
|
|
return cy.get('#partiallyAvailableBtn');
|
|
}
|
|
|
|
get reportIssueButton(): Cypress.Chainable<any> {
|
|
return cy.get('#reportIssueBtn');
|
|
}
|
|
|
|
|
|
informationPanel = new TvDetailsInformationPanel();
|
|
requestFabButton = new RequestFabButton();
|
|
requestPanel = new TvRequestPanel();
|
|
adminOptionsDialog = new AdminRequestDialog();
|
|
|
|
constructor() {
|
|
super();
|
|
}
|
|
|
|
visit(options: Cypress.VisitOptions): Cypress.Chainable<Cypress.AUTWindow>;
|
|
visit(): Cypress.Chainable<Cypress.AUTWindow>;
|
|
visit(id: string): Cypress.Chainable<Cypress.AUTWindow>;
|
|
visit(id: string, options: Cypress.VisitOptions): Cypress.Chainable<Cypress.AUTWindow>;
|
|
visit(id?: any, options?: any) {
|
|
return cy.visit(`/details/tv/` + id, options);
|
|
}
|
|
}
|
|
|
|
export const tvDetailsPage = new TvDetailsPage();
|