mirror of
https://github.com/gristlabs/grist-core.git
synced 2026-03-02 04:09:24 +00:00
(core) Document keeps track of latest cursor position and latest editor value and is able to restore them when it is reloaded.
Summary: Grist document, when reloaded, is able to restore the latest cursor position and the editor state. Test Plan: Browser test were created. Reviewers: dsagal Reviewed By: dsagal Subscribers: paulfitz Differential Revision: https://phab.getgrist.com/D2808
This commit is contained in:
@@ -342,6 +342,14 @@ export async function resizeColumn(colOptions: IColHeader, deltaPx: number) {
|
||||
await waitForServer();
|
||||
}
|
||||
|
||||
/**
|
||||
* Performs dbClick
|
||||
* @param cell Element to click
|
||||
*/
|
||||
export async function dbClick(cell: WebElement) {
|
||||
await driver.withActions(a => a.doubleClick(cell));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns {rowNum, col} object representing the position of the cursor in the active view
|
||||
* section. RowNum is a 1-based number as in the row headers, and col is a 0-based index for
|
||||
@@ -411,6 +419,14 @@ export async function enterFormula(formula: string) {
|
||||
await waitForServer();
|
||||
}
|
||||
|
||||
/**
|
||||
* Check that formula editor is shown and its value matches the given regexp.
|
||||
*/
|
||||
export async function getFormulaText() {
|
||||
assert.equal(await driver.findWait('.test-formula-editor', 500).isDisplayed(), true);
|
||||
return await driver.find('.code_editor_container').getText();
|
||||
}
|
||||
|
||||
/**
|
||||
* Check that formula editor is shown and its value matches the given regexp.
|
||||
*/
|
||||
@@ -1311,6 +1327,20 @@ export class Session {
|
||||
return doc;
|
||||
}
|
||||
|
||||
// As for importFixturesDoc, but delete the document at the end of each test.
|
||||
public async tempShortDoc(cleanup: Cleanup, fileName: string, options: ImportOpts = {load: true}) {
|
||||
const doc = await this.importFixturesDoc(fileName, options);
|
||||
const api = this.createHomeApi();
|
||||
if (!noCleanup) {
|
||||
cleanup.addAfterEach(async () => {
|
||||
if (doc.id)
|
||||
await api.deleteDoc(doc.id).catch(noop);
|
||||
doc.id = '';
|
||||
});
|
||||
}
|
||||
return doc;
|
||||
}
|
||||
|
||||
public async tempNewDoc(cleanup: Cleanup, docName: string, {load} = {load: true}) {
|
||||
const docId = await createNewDoc(this.settings.name, this.settings.org, this.settings.workspace, docName,
|
||||
{email: this.settings.email});
|
||||
|
||||
Reference in New Issue
Block a user