Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mwpw 154524 announcements page #15

Merged
merged 6 commits into from
Aug 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
256 changes: 254 additions & 2 deletions features/dme/announcements.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,261 @@ module.exports = {
features: [
{
tcid: '1',
name: '@desc-regression-announcements',
name: '@desc-regression-announcements-page-search',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme @regression',
tags: '@dme-announcements @regression @anonymous',
data: {
numberOfPublicCards: 7,
numberOfMatchingDescCards: 6,
numberOfMatchingTitleCards: 1,
firstCardTitle: 'Automation regression announcements card worldwide no1',
secondCardTitle: 'Automation regression announcements card worldwide no2',
searchCards: 'Automation regression',
},
},
{
tcid: '2',
name: '@desc-regression-announcements-page-load-more-sort',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
numberOfPublicCards: 7,
numberOfMatchingDescCards: 6,
searchCards: 'Automation regression',
firstLoadResult: '2 of 6 results',
secondLoadResult: '4 of 6 results',
thirdLoadResult: '6 of 6 results',
},
},
{
tcid: '3',
name: '@desc-regression-announcements-page-pagination',
path: '/channelpartners/drafts/automation/regression/announcements-paginated',
tags: '@dme-announcements @regression @anonymous',
data: {
numberOfPublicCards: 7,
numberOfMatchingDescCards: 6,
searchCards: 'Automation regression',
firstPageResult: '1 - 2 of 6 results',
secondPageResult: '3 - 4 of 6 results',
thirdPageResult: '5 - 6 of 6 results',
pageButtonNumber: 2,
totalPageCount: 3,
},
},
{
tcid: '4',
name: '@desc-regression-announcements-page-filters',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
numberOfPublicCards: 7,
filterDate: 'Date',
filterProduct: 'Product',
filterSales: 'Sales',
filterMarketing: 'Marketing',
filterSolutions: 'Solutions',
filterAdvertising: 'Advertising',
filterAudience: 'Audience',
filterPracticeLead: 'Practice Lead',
filterLastNinetyDays: 'Last 90 days',
cardsWithSalesAndPracticeLead: 2,
cardsWithAdvertisingAndSolutions: 2,
cardsWithAdvertising: 1,
cardsWithLastNinetyDays: 1,
cardsWithProduct: 2,
cardsWithSales: 1,
titleOfDateFilteredCard: 'Automation regression announcements card Worldwide no4',
numberOfAudienceFiltersSelected: 2,
},
},
{
tcid: '5',
name: '@desc-regression-announcements-page-read-article',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
searchCardTitle: 'Automation regression announcements card worldwide no1',
numberOfMatchingTitleCards: 1,
expectedToSeeInURL: '/channelpartners/drafts/automation/regression/Cards/cpp-worldwide-no1',
},
},
{
tcid: '6',
name: '@desc-announcements-page-edge-cases',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
numberOfPublicCards: 7,
specialCharsTitleSearch: '? ! | <> * !@#$%^&*()_+~`<>?\\’|”{}][ уљађз',
cardsWithSpecialChars: 1,
dateInPastTitleSearch: 'Automation regression announcements card worldwide date in past',
cardsWithDateInPast: 0,
eventEndedTitleSearch: 'Automation regression announcements card worldwide event ended',
cardsWithEventEnded: 0,
tooLongTitleSearch: 'Automation regression announcements card worldwide too long title',
cardsWithTooLongTitle: 1,
noCollectionTagTitleSearch: 'Automation regression announcements card worldwide without collection tag',
cardsWithoutCollectionTag: 0,
noTitleSearch: 'Without card title',
cardsWithoutTitle: 0,
},
},
{
tcid: '7',
name: '@desc-regression-announcements-distributor-north-america',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Distributor',
permissionRegion: 'North America',
announcementCardTitle: 'CPP Distributor North America Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '8',
name: '@desc-regression-announcements-distributor-japan',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Distributor',
permissionRegion: 'Japan',
announcementCardTitle: 'CPP Distributor Japan Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '9',
name: '@desc-regression-announcements-distributor-india',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Distributor',
permissionRegion: 'Asia Pacific',
announcementCardTitle: 'CPP Distributor India Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '10',
name: '@desc-regression-announcements-platinum-spain',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Platinum',
permissionRegion: 'Europe West',
announcementCardTitle: 'CPP Platinum Spain Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '11',
name: '@desc-regression-announcements-platinum-latin-america-na-based',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Platinum',
permissionRegion: 'Latin America NA based',
announcementCardTitle: 'CPP Platinum Latin America-North America based Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '12',
name: '@desc-regression-announcements-platinum-emea',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Platinum',
permissionRegion: 'EMEA',
announcementCardTitle: 'CPP Platinum EMEA Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '13',
name: '@desc-regression-announcements-gold-latin-america',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Gold',
permissionRegion: 'Latin America',
announcementCardTitle: 'CPP Gold Latin America Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '13',
name: '@desc-regression-announcements-gold-uk-europe-west',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Gold',
permissionRegion: 'United Kingdom%2CEurope West',
announcementCardTitle: 'CPP Gold UK, Europe West Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '14',
name: '@desc-regression-announcements-certified-europe-east',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Certified',
permissionRegion: 'Europe East',
announcementCardTitle: 'CPP Certified Europe East Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '15',
name: '@desc-regression-announcements-certified-pacific',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Certified',
permissionRegion: 'Pacific',
announcementCardTitle: 'CPP Certified Pacific Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '16',
name: '@desc-regression-announcements-registered-china',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Registered',
permissionRegion: 'China',
announcementCardTitle: 'CPP Registered China Announcement',
numberOfMatchingTitleCards: 1,
},
},
{
tcid: '17',
name: '@desc-regression-announcements-registered-middle-east-and-africa',
path: '/channelpartners/drafts/automation/regression/announcements',
tags: '@dme-announcements @regression @anonymous @kris',
data: {
partnerPortal: 'CPP',
partnerLevel: 'Registered',
permissionRegion: 'Middle East and Africa',
announcementCardTitle: 'CPP Registered Middle East & Africa Announcement',
numberOfMatchingTitleCards: 1,
},
},
],
};
42 changes: 42 additions & 0 deletions selectors/dme/announcements.page.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,47 @@
export default class AnnouncementsPage {
constructor(page) {
this.page = page;
this.signInButton = page.locator('button[daa-ll="Sign In"].feds-signIn');
this.resultNumber = page.locator('.partner-cards-cards-results').nth(0);
this.searchField = page.locator('.input');
this.clearSearchSelector = page.locator('[aria-label="Reset"]');
this.clearAllSelector = page.locator('[aria-label="Clear all"]');
this.firstCardTitle = page.locator('.card-title').nth(0);
this.firstCardDate = page.locator('.card-date').nth(0);
this.lastCardDate = page.locator('.card-date').nth(5);
this.sortBtn = page.locator('.sort-btn');
this.oldestOption = page.getByRole('button', { name: 'oldest' });
this.paginationText = page.locator('.pagination-total-results');
this.loadMore = page.locator('[aria-label="Load more"]');
this.cardCount = page.locator('.card-wrapper');
this.pageCount = page.locator('.page-btn');
this.readCard = page.locator('.card-btn');
this.paginationPrevButton = page.locator('button.pagination-prev-btn');
this.paginationNextButton = page.locator('button.pagination-next-btn');
this.pageNumButton = page.locator('button.page-btn');
}

async clickPageNumButton(pageNum) {
await this.page.locator(`button[aria-label="Page ${pageNum}"]`).click();
}

async expandFilterOptions(filterSection) {
await this.page.locator(`[aria-label="${filterSection}"]`).click();
}

async clickFilterOptions(filterOption) {
await this.page.locator(`sp-checkbox:text-is("${filterOption}")`).click();
}

async clickDateFilterOptions(dateFilterOption) {
await this.page.locator(`button[aria-label="${dateFilterOption}"]`).click();
}

async clearSideBarFilterButton(filterButton) {
await this.page.locator(`[aria-label="${filterButton}"]`).click();
}

async clearFilter(filter, number) {
await this.page.locator(`[aria-label="${filter}"] + [aria-label="${number}"]`).click();
}
}
10 changes: 10 additions & 0 deletions selectors/dme/signin.page.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,4 +39,14 @@ export default class SignInPage {
await expect(pages[1].url())
.toContain(`${expectedToSeeInURL}`);
}

async addCookie(partnerPortal, partnerLevel, permissionRegion, page, context) {
this.context = context;
await this.context.addCookies([{
name: 'partner_data',
value: `{"${partnerPortal}":{"company":"Company"%2C"firstName":"Name"%2C"lastName":"LastName"%2C"level":`
+ `"${partnerLevel}"%2C"permissionRegion":"${permissionRegion}"%2C"status":"MEMBER"}}`,
url: `${page}`,
}]);
}
}
Loading
Loading