mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
47 lines
1.8 KiB
TypeScript
47 lines
1.8 KiB
TypeScript
|
import {assert, driver} from 'mocha-webdriver';
|
||
|
import * as gu from 'test/nbrowser/gristUtils';
|
||
|
|
||
|
export async function closeExpandedSection() {
|
||
|
await driver.find(".test-viewLayout-overlay .test-close-button").click();
|
||
|
await gu.waitToPass(async () => {
|
||
|
assert.isFalse(await driver.find(".test-viewLayout-overlay").matches("[class*=-active]"));
|
||
|
});
|
||
|
}
|
||
|
|
||
|
export async function sectionIsExpanded() {
|
||
|
// Check that we see the overlay
|
||
|
assert.isTrue(await driver.find(".test-viewLayout-overlay").matches("[class*=-active]"));
|
||
|
|
||
|
// Visually check that the section is expanded.
|
||
|
assert.isTrue(await driver.find(".active_section").isDisplayed());
|
||
|
const section = await driver.find(".active_section").getRect();
|
||
|
const doc = await driver.find(".test-gristdoc").getRect();
|
||
|
assert.isTrue(Math.abs(section.height + 48 - doc.height) < 4);
|
||
|
assert.isTrue(Math.abs(section.width + 112 - doc.width) < 4);
|
||
|
|
||
|
// Get all other sections on the page and make sure they are hidden.
|
||
|
const otherSections = await driver.findAll(".view_leaf:not(.active_section)");
|
||
|
for (const otherSection of otherSections) {
|
||
|
assert.isFalse(await otherSection.isDisplayed());
|
||
|
}
|
||
|
|
||
|
// Make sure we see the close button.
|
||
|
assert.isTrue(await driver.find(".test-viewLayout-overlay .test-close-button").isDisplayed());
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Opens the section menu for a collapsed section.
|
||
|
*/
|
||
|
export async function openCollapsedSectionMenu(section: string|RegExp) {
|
||
|
await getCollapsedSection(section).find(`.test-section-menu-viewLayout`).click();
|
||
|
await driver.findWait('.grist-floating-menu', 100);
|
||
|
}
|
||
|
|
||
|
export function getCollapsedSection(section: string|RegExp) {
|
||
|
if (typeof section === 'string') {
|
||
|
section = gu.exactMatch(section, 'i');
|
||
|
}
|
||
|
return driver.findContentWait('.test-collapsed-section .test-collapsed-section-title', section, 100)
|
||
|
.findClosest('.test-collapsed-section');
|
||
|
}
|