generate screenshots

This commit is contained in:
SPRINX0\prochazka
2025-01-30 08:07:27 +01:00
parent 9309f25126
commit 93dc48c22c
8 changed files with 75 additions and 10 deletions

View File

@@ -9,7 +9,7 @@ name: Run tests with screenshots PREMIUM
- develop
- feature/**
jobs:
test:
alltests:
runs-on: ubuntu-latest
steps:
- name: Use Node.js 18.x
@@ -61,7 +61,7 @@ jobs:
- name: Copy screenshots
run: |
mkdir screenshots
cp ../dbgate-merged/e2e-tests/cypress/screenshots/**/*.png screenshots/
cp ../dbgate-merged/e2e-tests/screenshots/*.png screenshots/
- name: Upload E2E screenshots
uses: actions/upload-artifact@v4
with:

View File

@@ -9,7 +9,7 @@ name: Run tests
- develop
- feature/**
jobs:
test:
e2etest:
runs-on: ubuntu-latest
steps:
- name: Use Node.js 18.x

View File

@@ -3,11 +3,13 @@ const killPort = require('kill-port');
const { clearTestingData } = require('./e2eTestTools');
const waitOn = require('wait-on');
const { exec } = require('child_process');
const fs = require('fs');
const path = require('path');
module.exports = defineConfig({
e2e: {
trashAssetsBeforeRuns: false,
// trashAssetsBeforeRuns: false,
setupNodeEvents(on, config) {
// implement node event listeners here
@@ -41,6 +43,15 @@ module.exports = defineConfig({
});
}
});
on('after:screenshot', details => {
fs.renameSync(details.path, path.resolve(__dirname, `screenshots/${details.name}.png`));
});
// on('task', {
// renameFile({ from, to }) {
// fs.renameSync(from, to);
// },
// });
},
},
});

View File

@@ -158,7 +158,7 @@ describe('Data browser data', () => {
cy.themeshot('query');
});
it.only('Query editor - join wizard', () => {
it('Query editor - join wizard', () => {
cy.contains('MySql-connection').click();
cy.contains('MyChinook').click();
cy.testid('TabsPanel_buttonNewQuery').click();
@@ -170,4 +170,21 @@ describe('Data browser data', () => {
cy.contains('INNER JOIN Customer ON Invoice.CustomerId = Customer.CustomerId');
cy.themeshot('joinwizard');
});
it.only('Mongo JSON data view', () => {
cy.contains('Mongo-connection').click();
cy.contains('MgChinook').click();
cy.contains('Customer').click();
cy.testid('DataFilterControl_input_CustomerId').type('<=10{enter}');
// test filter
cy.contains('Rows: 10');
cy.contains('Helena').rightclick();
cy.contains('Open query').click();
cy.wait(1000);
cy.contains('Execute').click();
cy.testid('WidgetIconPanel_cell-data').click();
// test JSON view
cy.contains('Country: "Brazil"');
cy.themeshot('mongoquery');
});
});

View File

@@ -1,3 +1,5 @@
const path = require('path');
// ***********************************************
// This example commands.js shows you how to
// create various custom commands and overwrite
@@ -33,11 +35,45 @@ Cypress.Commands.add('themeshot', file => {
win.__changeCurrentTheme('theme-dark');
});
// cy.screenshot(`${file}-dark`, {
// onAfterScreenshot: (doc, props) => {
// cy.task('renameFile', {
// from: props.path,
// to: path.resolve(__dirname, `../../screenshots/${file}-dark.png`),
// });
// // fs.rename(props.path, path.resolve(path.join(__dirname, `../../screenshots/${file}-dark.png`)));
// },
// });
cy.screenshot(`${file}-dark`);
// .then(props => {
// return cy.task('renameFile', {
// from: props.path,
// to: path.resolve(__dirname, `../../screenshots/${file}-dark.png`),
// });
// });
cy.window().then(win => {
win.__changeCurrentTheme('theme-light');
});
cy.screenshot(`${file}-light`);
// .then(props => {
// return cy.task('renameFile', {
// from: props.path,
// to: path.resolve(__dirname, `../../screenshots/${file}-light.png`),
// });
// });
// cy.screenshot(`${file}-light`, {
// onAfterScreenshot: (doc, props) => {
// cy.task('renameFile', {
// from: props.path,
// to: path.resolve(__dirname, `../../screenshots/${file}-light.png`),
// });
// // fs.rename(props.path, path.resolve(path.join(__dirname, `../../screenshots/${file}-light.png`)));
// },
// });
});

View File

@@ -104,7 +104,7 @@
if (filterBehaviour.supportNumberLikeComparison) {
res.push(
{ divider: true },
{ onClick: () => openFilterWindow('>'), text: 'Greater Than...' },
{ onClick: () => openFilterWindow('>='), text: 'Greater Than Or Equal To...' },
{ onClick: () => openFilterWindow('<'), text: 'Less Than...' },
@@ -287,6 +287,7 @@
class:isError
class:isOk
{placeholder}
data-testid={`DataFilterControl_input_${uniqueName}`}
/>
{#if customCommandIcon && onCustomCommand}
<InlineButton on:click={onCustomCommand} title={customCommandTooltip} narrow square>

View File

@@ -8,7 +8,7 @@ on:
- 'feature/**'
jobs:
test:
alltests:
runs-on: ubuntu-latest
steps:
@@ -53,7 +53,7 @@ jobs:
- name: Copy screenshots
run: |
mkdir screenshots
cp ../dbgate-merged/e2e-tests/cypress/screenshots/**/*.png screenshots/
cp ../dbgate-merged/e2e-tests/screenshots/*.png screenshots/
- name: Upload E2E screenshots
uses: actions/upload-artifact@v4

View File

@@ -8,7 +8,7 @@ on:
- 'feature/**'
jobs:
test:
e2etest:
runs-on: ubuntu-latest
steps: