mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-17 23:45:59 +00:00
generate screenshots
This commit is contained in:
@@ -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:
|
||||
2
.github/workflows/run-tests.yaml
vendored
2
.github/workflows/run-tests.yaml
vendored
@@ -9,7 +9,7 @@ name: Run tests
|
||||
- develop
|
||||
- feature/**
|
||||
jobs:
|
||||
test:
|
||||
e2etest:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Use Node.js 18.x
|
||||
|
||||
@@ -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);
|
||||
// },
|
||||
// });
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
@@ -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');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -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`)));
|
||||
// },
|
||||
// });
|
||||
});
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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
|
||||
@@ -8,7 +8,7 @@ on:
|
||||
- 'feature/**'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
e2etest:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
|
||||
Reference in New Issue
Block a user