Stabilize formatters tests (#156835)

## Summary

Closes https://github.com/elastic/kibana/issues/156153

A small refactoring of the formatters tests to stabilize and unskip them
Build 200 times
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2227#_
This commit is contained in:
Stratoula Kalafateli 2023-05-08 08:34:31 +03:00 committed by GitHub
parent 675dd421f4
commit b540825f50
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 18 deletions

View file

@ -32,6 +32,15 @@ export class FieldEditorService extends FtrService {
public async disableValue() {
await this.testSubjects.setEuiSwitch('valueRow > toggle', 'uncheck');
}
public async clearScript() {
const editor = await (
await this.testSubjects.find('valueRow')
).findByClassName('react-monaco-editor-container');
const textarea = await editor.findByClassName('monaco-mouse-cursor-text');
await textarea.click();
const input = await this.find.activeElement();
await input.clearValueWithKeyboard();
}
public async typeScript(script: string) {
const editor = await (
await this.testSubjects.find('valueRow')

View file

@ -21,8 +21,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
const retry = getService('retry');
const fieldEditor = getService('fieldEditor');
// flaky test: https://github.com/elastic/kibana/issues/156153
describe.skip('lens fields formatters tests', () => {
describe('lens fields formatters tests', () => {
before(async () => {
await PageObjects.visualize.navigateToNewVisualization();
await PageObjects.visualize.clickVisType('lens');
@ -30,7 +29,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
await PageObjects.lens.switchToVisualization('lnsDatatable');
});
afterEach(async () => {
after(async () => {
await PageObjects.lens.clickField('runtimefield');
await PageObjects.lens.removeField('runtimefield');
await fieldEditor.confirmDelete();
@ -61,10 +60,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
it('should display static lookup formatter correctly', async () => {
await retry.try(async () => {
await PageObjects.lens.clickAddField();
await fieldEditor.setName('runtimefield');
await fieldEditor.enableValue();
await fieldEditor.typeScript("emit(doc['geo.dest'].value)");
await PageObjects.lens.clickField('runtimefield');
await PageObjects.lens.editField('runtimefield');
await fieldEditor.setFormat(FIELD_FORMAT_IDS.STATIC_LOOKUP);
await fieldEditor.setStaticLookupFormat('CN', 'China');
await fieldEditor.save();
@ -77,10 +74,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
it('should display color formatter correctly', async () => {
await retry.try(async () => {
await PageObjects.lens.clickAddField();
await fieldEditor.setName('runtimefield');
await fieldEditor.enableValue();
await fieldEditor.typeScript("emit(doc['geo.dest'].value)");
await PageObjects.lens.clickField('runtimefield');
await PageObjects.lens.editField('runtimefield');
await fieldEditor.setFormat(FIELD_FORMAT_IDS.COLOR);
await fieldEditor.setColorFormat('CN', '#ffffff', '#ff0000');
await fieldEditor.save();
@ -95,10 +90,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
it('should display string formatter correctly', async () => {
await retry.try(async () => {
await PageObjects.lens.clickAddField();
await fieldEditor.setName('runtimefield');
await fieldEditor.enableValue();
await fieldEditor.typeScript("emit(doc['geo.dest'].value)");
await PageObjects.lens.clickField('runtimefield');
await PageObjects.lens.editField('runtimefield');
await fieldEditor.setFormat(FIELD_FORMAT_IDS.STRING);
await fieldEditor.setStringFormat('lower');
await fieldEditor.save();
@ -111,9 +104,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
it('should display truncate string formatter correctly', async () => {
await retry.try(async () => {
await PageObjects.lens.clickAddField();
await fieldEditor.setName('runtimefield');
await fieldEditor.enableValue();
await PageObjects.lens.clickField('runtimefield');
await PageObjects.lens.editField('runtimefield');
await fieldEditor.clearScript();
await fieldEditor.typeScript("emit(doc['links.raw'].value)");
await fieldEditor.setFormat(FIELD_FORMAT_IDS.TRUNCATE);
await fieldEditor.setTruncateFormatLength('3');