mirror of
https://github.com/nasa/openmct.git
synced 2024-12-18 20:57:53 +00:00
b8949db767
* Change the mount utility to use Vue's createApp and defineComponent methods * Fix display layout memory leaks caused by `getSelectionContext` * fix some display layout leaks due to use of slots * Fix imagery memory leak (removed span tag). NOTE: CompassRose svg leaks memory - must test on firefox to see if this is a Chrome leak. * Fix ActionsAPI action collection and applicable actions leak. * Fix flexible layout memory leaks - remove listeners on unmount. NOTE: One type of overlay plot (Rover Yaw) is still leaking. * pass in the el on mount * e2e test config and spec changes * Remove mounting of limit lines. Use components directly * test: remove `.only()` * Fix display layout memory leaks * Enable passing tests * e2e README and appActions should be what master has. * lint: add word to cspell list * lint: fixes * lint:fix * fix: revert `el` change * fix: remove empty span * fix: creating shapes in displayLayout * fix: avoid `splice` as it loses reactivity * test: reduce timeout time * quick fixes * add prod mode and convert the test config to select the correct mode * Fix webpack prod config * Add launch flag for exposing window.gc * never worked * explicit naming * rename * We don't need to destroy view providers * test: increase timeout time * test: unskip all mem tests * fix(vue-loader): disable static hoisting * chore: run `test:perf:memory` * Don't destroy view providers * Move context menu once listener to beforeUnmount instead. * Disconnect all resize observers on unmount * Delete Test vue component * Use beforeUnmount and remove splice(0) in favor of [] for emptying arrays * re-structure * fix: unregister listener in pane.vue * test: tweak timeouts * chore: lint:fix * test: unskip perf tests * fix: unregister events properly * fix: unregister listener * fix: unregister listener * fix: unregister listener * fix: use `unmounted()` * fix: unregister listeners * fix: unregister listener properly * chore: lint:fix * test: fix imagery layer toggle test * test: increase timeout * Don't use anonymous functions for listeners * Destroy objects and event listeners properly * Delete config stores that are created by components * Use the right unmount hook. Destroy mounted view on unmount. * Use unmounted, not beforeUnmounted * Lint fixes * Fix time strip memory leak * Undo unneeded change for memory leaks. * chore: combine common webpack configs --------- Co-authored-by: Jesse Mazzella <jesse.d.mazzella@nasa.gov> Co-authored-by: John Hill <john.c.hill@nasa.gov>
61 lines
1.7 KiB
JavaScript
61 lines
1.7 KiB
JavaScript
/* eslint-disable no-undef */
|
|
// playwright.config.js
|
|
// @ts-check
|
|
|
|
/** @type {import('@playwright/test').PlaywrightTestConfig} */
|
|
const config = {
|
|
retries: 0, //Only for debugging purposes for trace: 'on-first-retry'
|
|
testDir: 'tests/performance/',
|
|
testIgnore: '*.contract.perf.spec.js', //Run everything except contract tests which require marks in dev mode
|
|
timeout: 60 * 1000,
|
|
workers: 1, //Only run in serial with 1 worker
|
|
webServer: {
|
|
command: 'npm run start:prod', //Production mode
|
|
url: 'http://localhost:8080/#',
|
|
timeout: 200 * 1000,
|
|
reuseExistingServer: false //Must be run with this option to prevent dev mode
|
|
},
|
|
use: {
|
|
baseURL: 'http://localhost:8080/',
|
|
headless: true,
|
|
ignoreHTTPSErrors: false, //HTTP performance varies!
|
|
screenshot: 'off',
|
|
trace: 'on-first-retry',
|
|
video: 'off'
|
|
},
|
|
projects: [
|
|
{
|
|
name: 'chrome-memory',
|
|
testMatch: '*.memory.perf.spec.js', //Only run memory tests
|
|
use: {
|
|
browserName: 'chromium',
|
|
launchOptions: {
|
|
args: [
|
|
'--no-sandbox',
|
|
'--disable-notifications',
|
|
'--use-fake-ui-for-media-stream',
|
|
'--use-fake-device-for-media-stream',
|
|
'--js-flags=--no-move-object-start --expose-gc',
|
|
'--enable-precise-memory-info',
|
|
'--display=:100'
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
name: 'chrome',
|
|
testIgnore: '*.memory.perf.spec.js', //Do not run memory tests without proper flags
|
|
use: {
|
|
browserName: 'chromium'
|
|
}
|
|
}
|
|
],
|
|
reporter: [
|
|
['list'],
|
|
['junit', { outputFile: '../test-results/results.xml' }],
|
|
['json', { outputFile: '../test-results/results.json' }]
|
|
]
|
|
};
|
|
|
|
module.exports = config;
|