wix-style-react
Version:
wix-style-react
74 lines (62 loc) • 2.92 kB
JavaScript
import { eyesItInstance } from '../../test/utils/eyes-it';
import { breadcrumbsTestkitFactory } from '../../testkit/protractor';
import { waitForVisibilityOf } from 'wix-ui-test-utils/protractor';
import { getStoryUrl } from '../../test/utils/storybook-helpers';
describe('Breadcrumbs', function () {
var storyUrl = getStoryUrl('6. Navigation', '6.2 Breadcrumbs');
var eyes = eyesItInstance();
beforeAll(function () {
browser.get(storyUrl);
});
eyes.it('should display breadcrumbs', function () {
var driverNoLinks = breadcrumbsTestkitFactory({
dataHook: 'story-breadcrumbs-no-links'
});
var driverWithLinks = breadcrumbsTestkitFactory({
dataHook: 'story-breadcrumbs-with-links'
});
var breadcrumbsItems = ['first item', 'second item', 'third item'];
var breadcrumbsLinkItems = ['Wix', 'Google', 'Yahoo'];
waitForVisibilityOf([driverNoLinks.element(), driverWithLinks.element()], 'Cannot find Breadcrumbs').then(function () {
breadcrumbsItems.map(function (item, idx) {
return expect(driverNoLinks.breadcrumbContentAt(idx)).toBe(item);
});
breadcrumbsLinkItems.map(function (item, idx) {
return expect(driverWithLinks.breadcrumbContentAt(idx)).toBe(item);
});
});
}, { version: '<Breadcrumbs/> - documentation fixes' });
eyes.it('should show active item once clicked upon', function () {
var driver = breadcrumbsTestkitFactory({
dataHook: 'story-breadcrumbs-active'
});
var breadcrumbsItems = ['first item', 'second item', 'third item'];
var itemToSelect = 2;
waitForVisibilityOf(driver.element(), 'Cannot find Breadcrumbs').then(function () {
breadcrumbsItems.map(function (item, idx) {
return expect(driver.breadcrumbContentAt(idx)).toBe(item);
});
expect(driver.getActiveItemId()).toBe(-1);
driver.clickBreadcrumbAt(itemToSelect);
expect(driver.getActiveItemId()).toBe(itemToSelect);
});
}, { version: '<Breadcrumbs/> - documentation fixes' });
it('should call func on item click', function () {
var driver = breadcrumbsTestkitFactory({
dataHook: 'story-breadcrumbs-onclick'
});
var breadcrumbsItems = ['first item', 'second item', 'third item'];
var idxToClick = 1;
waitForVisibilityOf(driver.element(), 'Cannot find Breadcrumbs').then(function () {
breadcrumbsItems.map(function (item, idx) {
return expect(driver.breadcrumbContentAt(idx)).toBe(item);
});
driver.clickBreadcrumbAt(idxToClick);
var EC = protractor.ExpectedConditions;
browser.wait(EC.alertIsPresent(), 10000, 'Alert is not getting present :(').then(function () {
expect(browser.switchTo().alert().getText()).toBe('clicked element is: {"id":"' + (idxToClick + 1) + '","value":"' + breadcrumbsItems[idxToClick] + '"}');
browser.switchTo().alert().accept();
});
});
});
});