mirror of
https://github.com/nasa/openmct.git
synced 2024-12-19 21:27:52 +00:00
chore: modify cspell config and fix all typos (#6908)
This commit is contained in:
parent
9be9c5e28e
commit
10f3e13e4d
99
.cspell.json
99
.cspell.json
@ -140,38 +140,24 @@
|
|||||||
"pathing",
|
"pathing",
|
||||||
"pases",
|
"pases",
|
||||||
"testcases",
|
"testcases",
|
||||||
"Responsefrom",
|
|
||||||
"Verficiation",
|
|
||||||
"persistable",
|
|
||||||
"Noneditable",
|
"Noneditable",
|
||||||
"Persistability",
|
|
||||||
"persistability",
|
|
||||||
"peristable",
|
|
||||||
"listitem",
|
"listitem",
|
||||||
"Gantt",
|
"Gantt",
|
||||||
"timelist",
|
"timelist",
|
||||||
"Indepdenent",
|
|
||||||
"timestrip",
|
"timestrip",
|
||||||
"Implimenting",
|
|
||||||
"proprety",
|
|
||||||
"networkevents",
|
"networkevents",
|
||||||
"stablize",
|
|
||||||
"fetchpriority",
|
"fetchpriority",
|
||||||
"visibity",
|
"persistable",
|
||||||
"Hiearchy",
|
"Persistable",
|
||||||
"persistible",
|
"persistability",
|
||||||
|
"Persistability",
|
||||||
"testdata",
|
"testdata",
|
||||||
"Testdata",
|
"Testdata",
|
||||||
"metdata",
|
"metdata",
|
||||||
"Snaphot",
|
|
||||||
"timeconductor",
|
"timeconductor",
|
||||||
"Endtimes",
|
|
||||||
"contenteditable",
|
"contenteditable",
|
||||||
"respone",
|
|
||||||
"Testsuite",
|
|
||||||
"autoscale",
|
"autoscale",
|
||||||
"Autoscale",
|
"Autoscale",
|
||||||
"reflexted",
|
|
||||||
"prepan",
|
"prepan",
|
||||||
"sinewave",
|
"sinewave",
|
||||||
"cyanish",
|
"cyanish",
|
||||||
@ -190,19 +176,14 @@
|
|||||||
"Imageurl",
|
"Imageurl",
|
||||||
"thumbstrip",
|
"thumbstrip",
|
||||||
"checkmark",
|
"checkmark",
|
||||||
"acknowldeged",
|
|
||||||
"Unshelve",
|
"Unshelve",
|
||||||
"autosized",
|
"autosized",
|
||||||
"chacskaylo",
|
"chacskaylo",
|
||||||
"Telmetry",
|
|
||||||
"numberfield",
|
"numberfield",
|
||||||
"OPENMCT",
|
"OPENMCT",
|
||||||
"MILISECONDS",
|
|
||||||
"Autoflow",
|
"Autoflow",
|
||||||
"Timelist",
|
"Timelist",
|
||||||
"faultmanagement",
|
"faultmanagement",
|
||||||
"localed",
|
|
||||||
"avaiable",
|
|
||||||
"GEOSPATIAL",
|
"GEOSPATIAL",
|
||||||
"geospatial",
|
"geospatial",
|
||||||
"plotspatial",
|
"plotspatial",
|
||||||
@ -210,7 +191,6 @@
|
|||||||
"keystrings",
|
"keystrings",
|
||||||
"undelete",
|
"undelete",
|
||||||
"sometag",
|
"sometag",
|
||||||
"nameespace",
|
|
||||||
"containee",
|
"containee",
|
||||||
"composability",
|
"composability",
|
||||||
"mutables",
|
"mutables",
|
||||||
@ -218,26 +198,18 @@
|
|||||||
"composee",
|
"composee",
|
||||||
"handleoutsideclick",
|
"handleoutsideclick",
|
||||||
"Datetime",
|
"Datetime",
|
||||||
"funtion",
|
|
||||||
"Perc",
|
"Perc",
|
||||||
"autodismiss",
|
"autodismiss",
|
||||||
"Notifiation",
|
|
||||||
"notificiation",
|
|
||||||
"filetree",
|
"filetree",
|
||||||
"deeptailor",
|
"deeptailor",
|
||||||
"keystring",
|
"keystring",
|
||||||
"Persistable",
|
|
||||||
"Inovke",
|
|
||||||
"reindex",
|
"reindex",
|
||||||
"modifed",
|
|
||||||
"unlisten",
|
"unlisten",
|
||||||
"symbolsfont",
|
"symbolsfont",
|
||||||
"ellipsize",
|
"ellipsize",
|
||||||
"dismissable",
|
"dismissable",
|
||||||
"TIMESYSTEM",
|
"TIMESYSTEM",
|
||||||
"Metadatas",
|
"Metadatas",
|
||||||
"modifyed",
|
|
||||||
"stategy",
|
|
||||||
"stalenes",
|
"stalenes",
|
||||||
"receieves",
|
"receieves",
|
||||||
"unsub",
|
"unsub",
|
||||||
@ -249,7 +221,6 @@
|
|||||||
"granually",
|
"granually",
|
||||||
"timesystem",
|
"timesystem",
|
||||||
"metadatas",
|
"metadatas",
|
||||||
"posess",
|
|
||||||
"iteratees",
|
"iteratees",
|
||||||
"metadatum",
|
"metadatum",
|
||||||
"printj",
|
"printj",
|
||||||
@ -257,13 +228,8 @@
|
|||||||
"unlisteners",
|
"unlisteners",
|
||||||
"amts",
|
"amts",
|
||||||
"reregistered",
|
"reregistered",
|
||||||
"opemct",
|
|
||||||
"specifiy",
|
|
||||||
"loged",
|
|
||||||
"hudsonfoo",
|
"hudsonfoo",
|
||||||
"onclone",
|
"onclone",
|
||||||
"instatation",
|
|
||||||
"instatiated",
|
|
||||||
"autoflow",
|
"autoflow",
|
||||||
"xdescribe",
|
"xdescribe",
|
||||||
"mockmct",
|
"mockmct",
|
||||||
@ -282,8 +248,6 @@
|
|||||||
"showline",
|
"showline",
|
||||||
"bglayer",
|
"bglayer",
|
||||||
"autorange",
|
"autorange",
|
||||||
"telmetry",
|
|
||||||
"subcribe",
|
|
||||||
"hoverinfo",
|
"hoverinfo",
|
||||||
"dotful",
|
"dotful",
|
||||||
"Dotful",
|
"Dotful",
|
||||||
@ -305,7 +269,6 @@
|
|||||||
"inspectable",
|
"inspectable",
|
||||||
"Stringformatter",
|
"Stringformatter",
|
||||||
"sclk",
|
"sclk",
|
||||||
"compostion",
|
|
||||||
"Objectpath",
|
"Objectpath",
|
||||||
"Keystring",
|
"Keystring",
|
||||||
"duplicatable",
|
"duplicatable",
|
||||||
@ -315,11 +278,7 @@
|
|||||||
"callthrough",
|
"callthrough",
|
||||||
"objectpath",
|
"objectpath",
|
||||||
"createable",
|
"createable",
|
||||||
"applie",
|
|
||||||
"noneditable",
|
"noneditable",
|
||||||
"infinte",
|
|
||||||
"occured",
|
|
||||||
"Occured",
|
|
||||||
"Classname",
|
"Classname",
|
||||||
"classname",
|
"classname",
|
||||||
"selectedfaults",
|
"selectedfaults",
|
||||||
@ -351,16 +310,12 @@
|
|||||||
"TIMESTRIP",
|
"TIMESTRIP",
|
||||||
"TWENTYFOUR",
|
"TWENTYFOUR",
|
||||||
"FULLSIZE",
|
"FULLSIZE",
|
||||||
"doesnt",
|
|
||||||
"intialize",
|
"intialize",
|
||||||
"Timestrip",
|
"Timestrip",
|
||||||
"spyon",
|
"spyon",
|
||||||
"Unlistener",
|
"Unlistener",
|
||||||
"multipane",
|
"multipane",
|
||||||
"DATESTRING",
|
"DATESTRING",
|
||||||
"requred",
|
|
||||||
"telemtry",
|
|
||||||
"lastest",
|
|
||||||
"akhenry",
|
"akhenry",
|
||||||
"Niklas",
|
"Niklas",
|
||||||
"Hertzen",
|
"Hertzen",
|
||||||
@ -383,7 +338,6 @@
|
|||||||
"Yuxi",
|
"Yuxi",
|
||||||
"ACITON",
|
"ACITON",
|
||||||
"localstorage",
|
"localstorage",
|
||||||
"Compostion",
|
|
||||||
"Linkto",
|
"Linkto",
|
||||||
"Painterro",
|
"Painterro",
|
||||||
"Editability",
|
"Editability",
|
||||||
@ -393,9 +347,6 @@
|
|||||||
"notebookstorage",
|
"notebookstorage",
|
||||||
"Andpage",
|
"Andpage",
|
||||||
"pixelize",
|
"pixelize",
|
||||||
"incremement",
|
|
||||||
"Couche",
|
|
||||||
"namepaces",
|
|
||||||
"Quickstart",
|
"Quickstart",
|
||||||
"indexhtml",
|
"indexhtml",
|
||||||
"youradminpassword",
|
"youradminpassword",
|
||||||
@ -403,7 +354,6 @@
|
|||||||
"sourcefiles",
|
"sourcefiles",
|
||||||
"USERPASS",
|
"USERPASS",
|
||||||
"XPUT",
|
"XPUT",
|
||||||
"referer",
|
|
||||||
"adipiscing",
|
"adipiscing",
|
||||||
"eiusmod",
|
"eiusmod",
|
||||||
"tempor",
|
"tempor",
|
||||||
@ -416,43 +366,21 @@
|
|||||||
"submodels",
|
"submodels",
|
||||||
"symlog",
|
"symlog",
|
||||||
"Plottable",
|
"Plottable",
|
||||||
"dont",
|
|
||||||
"sinwave",
|
|
||||||
"necesarry",
|
|
||||||
"antisymlog",
|
"antisymlog",
|
||||||
"docstrings",
|
"docstrings",
|
||||||
"unavailab",
|
|
||||||
"eelement",
|
|
||||||
"mediump",
|
|
||||||
"webglcontextlost",
|
"webglcontextlost",
|
||||||
"gridlines",
|
"gridlines",
|
||||||
"Xaxis",
|
"Xaxis",
|
||||||
"Crosshairs",
|
"Crosshairs",
|
||||||
"telemetrylimit",
|
"telemetrylimit",
|
||||||
"createble",
|
|
||||||
"xscale",
|
"xscale",
|
||||||
"yscale",
|
"yscale",
|
||||||
"temparature",
|
|
||||||
"configurration",
|
|
||||||
"envoke",
|
|
||||||
"untracks",
|
"untracks",
|
||||||
"Recieve",
|
|
||||||
"swatched",
|
"swatched",
|
||||||
"NULLVALUE",
|
"NULLVALUE",
|
||||||
"intial",
|
|
||||||
"Retreives",
|
|
||||||
"assoicated",
|
|
||||||
"cotains",
|
|
||||||
"thet",
|
|
||||||
"Initialze",
|
|
||||||
"unobserver",
|
"unobserver",
|
||||||
"unsubscriber",
|
"unsubscriber",
|
||||||
"generateor",
|
|
||||||
"Intantiate",
|
|
||||||
"drap",
|
"drap",
|
||||||
"historial",
|
|
||||||
"evalutes",
|
|
||||||
"initialzes",
|
|
||||||
"Averager",
|
"Averager",
|
||||||
"averager",
|
"averager",
|
||||||
"movecolumnfromindex",
|
"movecolumnfromindex",
|
||||||
@ -463,17 +391,13 @@
|
|||||||
"Hitarea",
|
"Hitarea",
|
||||||
"Unmark",
|
"Unmark",
|
||||||
"controlbar",
|
"controlbar",
|
||||||
"examplar",
|
|
||||||
"reactified",
|
"reactified",
|
||||||
"valuelue",
|
|
||||||
"perc",
|
"perc",
|
||||||
"DHMS",
|
"DHMS",
|
||||||
"timespans",
|
"timespans",
|
||||||
"timeframes",
|
"timeframes",
|
||||||
"Timesystems",
|
"Timesystems",
|
||||||
"Syste",
|
|
||||||
"Hilite",
|
"Hilite",
|
||||||
"screan",
|
|
||||||
"datetimes",
|
"datetimes",
|
||||||
"momentified",
|
"momentified",
|
||||||
"ucontents",
|
"ucontents",
|
||||||
@ -500,7 +424,6 @@
|
|||||||
"bfill",
|
"bfill",
|
||||||
"ctitle",
|
"ctitle",
|
||||||
"eicon",
|
"eicon",
|
||||||
"ccircle",
|
|
||||||
"interactability",
|
"interactability",
|
||||||
"AFFORDANCES",
|
"AFFORDANCES",
|
||||||
"affordance",
|
"affordance",
|
||||||
@ -530,7 +453,6 @@
|
|||||||
"gridlayer",
|
"gridlayer",
|
||||||
"xtick",
|
"xtick",
|
||||||
"ytick",
|
"ytick",
|
||||||
"notabook",
|
|
||||||
"subobjects",
|
"subobjects",
|
||||||
"Ucontents",
|
"Ucontents",
|
||||||
"Userand",
|
"Userand",
|
||||||
@ -544,10 +466,7 @@
|
|||||||
"haslink",
|
"haslink",
|
||||||
"VPID",
|
"VPID",
|
||||||
"vpid",
|
"vpid",
|
||||||
"paramater",
|
|
||||||
"paramaters",
|
|
||||||
"updatedtest",
|
"updatedtest",
|
||||||
"broser",
|
|
||||||
"KHTML",
|
"KHTML",
|
||||||
"Chromezilla",
|
"Chromezilla",
|
||||||
"Safarifox",
|
"Safarifox",
|
||||||
@ -555,15 +474,19 @@
|
|||||||
"hundredtized",
|
"hundredtized",
|
||||||
"dhms",
|
"dhms",
|
||||||
"unthrottled",
|
"unthrottled",
|
||||||
"Codecov"
|
"Codecov",
|
||||||
|
"dont",
|
||||||
|
"mediump"
|
||||||
],
|
],
|
||||||
"dictionaries": ["npm", "software-terms"],
|
"dictionaries": ["npm", "softwareTerms", "node", "html", "css", "bash", "en_US"],
|
||||||
"ignorePaths": [
|
"ignorePaths": [
|
||||||
"package.json",
|
"package.json",
|
||||||
"dist/**",
|
"dist/**",
|
||||||
"package-lock.json",
|
"package-lock.json",
|
||||||
"node_modules",
|
"node_modules",
|
||||||
"coverage",
|
"coverage",
|
||||||
"*.log"
|
"*.log",
|
||||||
|
"html-test-results",
|
||||||
|
"test-results"
|
||||||
]
|
]
|
||||||
}
|
}
|
@ -95,10 +95,10 @@ To run the performance tests:
|
|||||||
|
|
||||||
`npm run test:perf`
|
`npm run test:perf`
|
||||||
|
|
||||||
The test suite is configured to all tests localed in `e2e/tests/` ending in `*.e2e.spec.js`. For more about the e2e test suite, please see the [README](./e2e/README.md)
|
The test suite is configured to all tests located in `e2e/tests/` ending in `*.e2e.spec.js`. For more about the e2e test suite, please see the [README](./e2e/README.md)
|
||||||
|
|
||||||
### Security Tests
|
### Security Tests
|
||||||
Each commit is analyzed for known security vulnerabilities using [CodeQL](https://codeql.github.com/docs/codeql-language-guides/codeql-library-for-javascript/). The list of CWE coverage items is avaiable in the [CodeQL docs](https://codeql.github.com/codeql-query-help/javascript-cwe/). The CodeQL workflow is specified in the [CodeQL analysis file](./.github/workflows/codeql-analysis.yml) and the custom [CodeQL config](./.github/codeql/codeql-config.yml).
|
Each commit is analyzed for known security vulnerabilities using [CodeQL](https://codeql.github.com/docs/codeql-language-guides/codeql-library-for-javascript/). The list of CWE coverage items is available in the [CodeQL docs](https://codeql.github.com/codeql-query-help/javascript-cwe/). The CodeQL workflow is specified in the [CodeQL analysis file](./.github/workflows/codeql-analysis.yml) and the custom [CodeQL config](./.github/codeql/codeql-config.yml).
|
||||||
|
|
||||||
### Test Reporting and Code Coverage
|
### Test Reporting and Code Coverage
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ test.describe('CouchDB Status Indicator with mocked responses @couchdb', () => {
|
|||||||
test.describe('CouchDB initialization with mocked responses @couchdb', () => {
|
test.describe('CouchDB initialization with mocked responses @couchdb', () => {
|
||||||
test.use({ failOnConsoleError: false });
|
test.use({ failOnConsoleError: false });
|
||||||
test("'My Items' folder is created if it doesn't exist", async ({ page }) => {
|
test("'My Items' folder is created if it doesn't exist", async ({ page }) => {
|
||||||
const mockedMissingObjectResponsefromCouchDB = {
|
const mockedMissingObjectResponseFromCouchDB = {
|
||||||
status: 404,
|
status: 404,
|
||||||
contentType: 'application/json',
|
contentType: 'application/json',
|
||||||
body: JSON.stringify({})
|
body: JSON.stringify({})
|
||||||
@ -92,7 +92,7 @@ test.describe('CouchDB initialization with mocked responses @couchdb', () => {
|
|||||||
await page.route(
|
await page.route(
|
||||||
'**/mine',
|
'**/mine',
|
||||||
(route) => {
|
(route) => {
|
||||||
route.fulfill(mockedMissingObjectResponsefromCouchDB);
|
route.fulfill(mockedMissingObjectResponseFromCouchDB);
|
||||||
},
|
},
|
||||||
{ times: 1 }
|
{ times: 1 }
|
||||||
);
|
);
|
||||||
|
@ -46,7 +46,7 @@ test.describe('Example Event Generator CRUD Operations', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
test.describe('Example Event Generator Telemetry Event Verficiation', () => {
|
test.describe('Example Event Generator Telemetry Event Verification', () => {
|
||||||
test.fixme('telemetry is coming in for test event', async ({ page }) => {
|
test.fixme('telemetry is coming in for test event', async ({ page }) => {
|
||||||
// Go to object created in step one
|
// Go to object created in step one
|
||||||
// Verify the telemetry table is filled with > 1 row
|
// Verify the telemetry table is filled with > 1 row
|
||||||
|
@ -292,7 +292,7 @@ test.describe('Move & link item tests', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test.fixme(
|
test.fixme(
|
||||||
'Cannot move a previously created domain object to non-peristable object in Move Modal',
|
'Cannot move a previously created domain object to non-persistable object in Move Modal',
|
||||||
async ({ page }) => {
|
async ({ page }) => {
|
||||||
//Create a domain object
|
//Create a domain object
|
||||||
//Save Domain object
|
//Save Domain object
|
||||||
|
@ -73,7 +73,7 @@ const testPlan = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
test.describe('Time Strip', () => {
|
test.describe('Time Strip', () => {
|
||||||
test('Create two Time Strips, add a single Plan to both, and verify they can have separate Indepdenent Time Contexts @unstable', async ({
|
test('Create two Time Strips, add a single Plan to both, and verify they can have separate Independent Time Contexts @unstable', async ({
|
||||||
page
|
page
|
||||||
}) => {
|
}) => {
|
||||||
test.info().annotations.push({
|
test.info().annotations.push({
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
This test suite is dedicated to tests which verify the basic operations surrounding conditionSets. Note: this
|
This test suite is dedicated to tests which verify the basic operations surrounding conditionSets. Note: this
|
||||||
suite is sharing state between tests which is considered an anti-pattern. Implimenting in this way to
|
suite is sharing state between tests which is considered an anti-pattern. Implementing in this way to
|
||||||
demonstrate some playwright for test developers. This pattern should not be re-used in other CRUD suites.
|
demonstrate some playwright for test developers. This pattern should not be re-used in other CRUD suites.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -127,7 +127,7 @@ test.describe.serial('Condition Set CRUD Operations on @localStorage', () => {
|
|||||||
// Verify Inspector Details has updated Name property
|
// Verify Inspector Details has updated Name property
|
||||||
expect.soft(page.locator('text=Renamed Condition Set').nth(2)).toBeTruthy();
|
expect.soft(page.locator('text=Renamed Condition Set').nth(2)).toBeTruthy();
|
||||||
|
|
||||||
// Verify Tree reflects updated Name proprety
|
// Verify Tree reflects updated Name property
|
||||||
// Expand Tree
|
// Expand Tree
|
||||||
await page.locator(`text=Open MCT ${myItemsFolderName} >> span >> nth=3`).click();
|
await page.locator(`text=Open MCT ${myItemsFolderName} >> span >> nth=3`).click();
|
||||||
// Verify Condition Set Object is renamed in Tree
|
// Verify Condition Set Object is renamed in Tree
|
||||||
@ -150,7 +150,7 @@ test.describe.serial('Condition Set CRUD Operations on @localStorage', () => {
|
|||||||
// Verify Inspector Details has updated Name property
|
// Verify Inspector Details has updated Name property
|
||||||
expect.soft(page.locator('text=Renamed Condition Set').nth(2)).toBeTruthy();
|
expect.soft(page.locator('text=Renamed Condition Set').nth(2)).toBeTruthy();
|
||||||
|
|
||||||
// Verify Tree reflects updated Name proprety
|
// Verify Tree reflects updated Name property
|
||||||
// Expand Tree
|
// Expand Tree
|
||||||
await page.locator(`text=Open MCT ${myItemsFolderName} >> span >> nth=3`).click();
|
await page.locator(`text=Open MCT ${myItemsFolderName} >> span >> nth=3`).click();
|
||||||
// Verify Condition Set Object is renamed in Tree
|
// Verify Condition Set Object is renamed in Tree
|
||||||
|
@ -214,7 +214,7 @@ test.describe('Example Imagery Object', () => {
|
|||||||
await page.mouse.up();
|
await page.mouse.up();
|
||||||
await Promise.all(tagHotkey.map((x) => page.keyboard.up(x)));
|
await Promise.all(tagHotkey.map((x) => page.keyboard.up(x)));
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
// add some tags
|
// add some tags
|
||||||
@ -394,7 +394,7 @@ test.describe('Example Imagery in Display Layout', () => {
|
|||||||
/**
|
/**
|
||||||
* Toggle layer visibility checkbox by clicking on checkbox label
|
* Toggle layer visibility checkbox by clicking on checkbox label
|
||||||
* - should toggle checkbox and layer visibility for that image view
|
* - should toggle checkbox and layer visibility for that image view
|
||||||
* - should NOT toggle checkbox and layer visibity for the first image view in display
|
* - should NOT toggle checkbox and layer visibility for the first image view in display
|
||||||
*/
|
*/
|
||||||
test('Toggle layer visibility by clicking on label', async ({ page }) => {
|
test('Toggle layer visibility by clicking on label', async ({ page }) => {
|
||||||
test.info().annotations.push({
|
test.info().annotations.push({
|
||||||
|
@ -48,12 +48,12 @@ test.describe('ExportAsJSON', () => {
|
|||||||
test.fixme('Verify that a nested Object can be exported as JSON', async ({ page }) => {
|
test.fixme('Verify that a nested Object can be exported as JSON', async ({ page }) => {
|
||||||
// Create 2 objects with hierarchy
|
// Create 2 objects with hierarchy
|
||||||
// Export as JSON
|
// Export as JSON
|
||||||
// Verify Hiearchy
|
// Verify Hierarchy
|
||||||
});
|
});
|
||||||
test.fixme(
|
test.fixme(
|
||||||
'Verify that the ExportAsJSON dropdown does not appear for the item X',
|
'Verify that the ExportAsJSON dropdown does not appear for the item X',
|
||||||
async ({ page }) => {
|
async ({ page }) => {
|
||||||
// Other than non-persistible objects
|
// Other than non-persistable objects
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -48,7 +48,7 @@ test.describe('ExportAsJSON', () => {
|
|||||||
test.fixme(
|
test.fixme(
|
||||||
'Verify that the ImportAsJSON dropdown does not appear for the item X',
|
'Verify that the ImportAsJSON dropdown does not appear for the item X',
|
||||||
async ({ page }) => {
|
async ({ page }) => {
|
||||||
// Other than non-persistible objects
|
// Other than non-persistable objects
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -39,7 +39,7 @@ test.describe('Notebook CRUD Operations', () => {
|
|||||||
test.fixme('Can update a Notebook Object', async ({ page }) => {});
|
test.fixme('Can update a Notebook Object', async ({ page }) => {});
|
||||||
test.fixme('Can view a perviously created Notebook Object', async ({ page }) => {});
|
test.fixme('Can view a perviously created Notebook Object', async ({ page }) => {});
|
||||||
test.fixme('Can Delete a Notebook Object', async ({ page }) => {
|
test.fixme('Can Delete a Notebook Object', async ({ page }) => {
|
||||||
// Other than non-persistible objects
|
// Other than non-persistable objects
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ test.describe('Snapshot Menu tests', () => {
|
|||||||
// There should be no default notebook
|
// There should be no default notebook
|
||||||
// Clear default notebook if exists using `localStorage.setItem('notebook-storage', null);`
|
// Clear default notebook if exists using `localStorage.setItem('notebook-storage', null);`
|
||||||
// refresh page
|
// refresh page
|
||||||
// Click on 'Notebook Snaphot Menu'
|
// Click on 'Notebook Snapshot Menu'
|
||||||
// 'save to Notebook Snapshots' should be only option there
|
// 'save to Notebook Snapshots' should be only option there
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@ -62,7 +62,7 @@ test.describe('Snapshot Menu tests', () => {
|
|||||||
});
|
});
|
||||||
test.fixme('Snapshots adjust time conductor', async ({ page }) => {
|
test.fixme('Snapshots adjust time conductor', async ({ page }) => {
|
||||||
// Create Telemetry object
|
// Create Telemetry object
|
||||||
// Set Telemetry object's timeconductor to Fixed time with Start and Endtimes are recorded
|
// Set Telemetry object's timeconductor to Fixed time with Start and End times are recorded
|
||||||
// Embed Telemetry object into notebook
|
// Embed Telemetry object into notebook
|
||||||
// Set Time Conductor to Local clock
|
// Set Time Conductor to Local clock
|
||||||
// Click into embedded telemetry object and verify object appears with same fixed time from record
|
// Click into embedded telemetry object and verify object appears with same fixed time from record
|
||||||
|
@ -157,6 +157,6 @@ test.describe('Operator Status', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
test.fixme('iterate through all possible response values', async ({ page }) => {
|
test.fixme('iterate through all possible response values', async ({ page }) => {
|
||||||
// test all possible respone values for the poll
|
// test all possible response values for the poll
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -76,7 +76,7 @@ test.describe('Autoscale', () => {
|
|||||||
await page.locator('.c-message-banner__close-button').click();
|
await page.locator('.c-message-banner__close-button').click();
|
||||||
await page.waitForSelector('.c-message-banner__message', { state: 'detached' });
|
await page.waitForSelector('.c-message-banner__message', { state: 'detached' });
|
||||||
|
|
||||||
// Make sure that after turning off autoscale, the user entered range values are reflexted in the ticks.
|
// Make sure that after turning off autoscale, the user entered range values are reflected in the ticks.
|
||||||
await testYTicks(page, [
|
await testYTicks(page, [
|
||||||
'-2.00',
|
'-2.00',
|
||||||
'-1.50',
|
'-1.50',
|
||||||
@ -118,7 +118,7 @@ test.describe('Autoscale', () => {
|
|||||||
// Ensure the drag worked.
|
// Ensure the drag worked.
|
||||||
await testYTicks(page, ['-0.50', '0.00', '0.50', '1.00', '1.50', '2.00', '2.50', '3.00']);
|
await testYTicks(page, ['-0.50', '0.00', '0.50', '1.00', '1.50', '2.00', '2.50', '3.00']);
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
expect
|
expect
|
||||||
|
@ -63,7 +63,7 @@ test.describe('Plot Tagging', () => {
|
|||||||
await page.keyboard.up('Alt');
|
await page.keyboard.up('Alt');
|
||||||
await page.keyboard.up('Shift');
|
await page.keyboard.up('Shift');
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
// add some tags
|
// add some tags
|
||||||
@ -91,7 +91,7 @@ test.describe('Plot Tagging', () => {
|
|||||||
|
|
||||||
const canvas = page.locator('canvas').nth(1);
|
const canvas = page.locator('canvas').nth(1);
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
// click on the tagged plot point
|
// click on the tagged plot point
|
||||||
|
@ -63,7 +63,7 @@ test.describe.fixme('Plot Tagging Performance', () => {
|
|||||||
await page.keyboard.up('Alt');
|
await page.keyboard.up('Alt');
|
||||||
await page.keyboard.up('Shift');
|
await page.keyboard.up('Shift');
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
// add some tags
|
// add some tags
|
||||||
@ -91,7 +91,7 @@ test.describe.fixme('Plot Tagging Performance', () => {
|
|||||||
|
|
||||||
const canvas = page.locator('canvas').nth(1);
|
const canvas = page.locator('canvas').nth(1);
|
||||||
|
|
||||||
//Wait for canvas to stablize.
|
//Wait for canvas to stabilize.
|
||||||
await canvas.hover({ trial: true });
|
await canvas.hover({ trial: true });
|
||||||
|
|
||||||
// click on the tagged plot point
|
// click on the tagged plot point
|
||||||
|
@ -46,7 +46,7 @@ test.describe('The Fault Management Plugin Visual Test', () => {
|
|||||||
|
|
||||||
await percySnapshot(
|
await percySnapshot(
|
||||||
page,
|
page,
|
||||||
`Acknowledged faults, have a checkmark on the fault icon and appear in the acknowldeged view (theme: '${theme}')`
|
`Acknowledged faults, have a checkmark on the fault icon and appear in the acknowledged view (theme: '${theme}')`
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
* this source code distribution or the Licensing information page available
|
* this source code distribution or the Licensing information page available
|
||||||
* at runtime from the About dialog for additional information.
|
* at runtime from the About dialog for additional information.
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
import EventTelmetryProvider from './EventTelemetryProvider';
|
import EventTelemetryProvider from './EventTelemetryProvider';
|
||||||
import EventMetadataProvider from './EventMetadataProvider';
|
import EventMetadataProvider from './EventMetadataProvider';
|
||||||
|
|
||||||
export default function EventGeneratorPlugin(options) {
|
export default function EventGeneratorPlugin(options) {
|
||||||
@ -36,7 +36,7 @@ export default function EventGeneratorPlugin(options) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
openmct.telemetry.addProvider(new EventTelmetryProvider());
|
openmct.telemetry.addProvider(new EventTelemetryProvider());
|
||||||
openmct.telemetry.addProvider(new EventMetadataProvider());
|
openmct.telemetry.addProvider(new EventMetadataProvider());
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -40,8 +40,8 @@ const DEFAULT_IMAGE_SAMPLES = [
|
|||||||
'https://www.hq.nasa.gov/alsj/a16/AS16-117-18747.jpg',
|
'https://www.hq.nasa.gov/alsj/a16/AS16-117-18747.jpg',
|
||||||
'https://www.hq.nasa.gov/alsj/a16/AS16-117-18748.jpg'
|
'https://www.hq.nasa.gov/alsj/a16/AS16-117-18748.jpg'
|
||||||
];
|
];
|
||||||
const DEFAULT_IMAGE_LOAD_DELAY_IN_MILISECONDS = 20000;
|
const DEFAULT_IMAGE_LOAD_DELAY_IN_MILLISECONDS = 20000;
|
||||||
const MIN_IMAGE_LOAD_DELAY_IN_MILISECONDS = 5000;
|
const MIN_IMAGE_LOAD_DELAY_IN_MILLISECONDS = 5000;
|
||||||
|
|
||||||
let openmctInstance;
|
let openmctInstance;
|
||||||
|
|
||||||
@ -58,7 +58,7 @@ export default function () {
|
|||||||
initialize: (object) => {
|
initialize: (object) => {
|
||||||
object.configuration = {
|
object.configuration = {
|
||||||
imageLocation: '',
|
imageLocation: '',
|
||||||
imageLoadDelayInMilliSeconds: DEFAULT_IMAGE_LOAD_DELAY_IN_MILISECONDS,
|
imageLoadDelayInMilliSeconds: DEFAULT_IMAGE_LOAD_DELAY_IN_MILLISECONDS,
|
||||||
imageSamples: [],
|
imageSamples: [],
|
||||||
layers: []
|
layers: []
|
||||||
};
|
};
|
||||||
@ -188,20 +188,20 @@ function getImageLoadDelay(domainObject) {
|
|||||||
openmctInstance.objects.mutate(
|
openmctInstance.objects.mutate(
|
||||||
domainObject,
|
domainObject,
|
||||||
'configuration.imageLoadDelayInMilliSeconds',
|
'configuration.imageLoadDelayInMilliSeconds',
|
||||||
DEFAULT_IMAGE_LOAD_DELAY_IN_MILISECONDS
|
DEFAULT_IMAGE_LOAD_DELAY_IN_MILLISECONDS
|
||||||
);
|
);
|
||||||
|
|
||||||
return DEFAULT_IMAGE_LOAD_DELAY_IN_MILISECONDS;
|
return DEFAULT_IMAGE_LOAD_DELAY_IN_MILLISECONDS;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (imageLoadDelay < MIN_IMAGE_LOAD_DELAY_IN_MILISECONDS) {
|
if (imageLoadDelay < MIN_IMAGE_LOAD_DELAY_IN_MILLISECONDS) {
|
||||||
openmctInstance.objects.mutate(
|
openmctInstance.objects.mutate(
|
||||||
domainObject,
|
domainObject,
|
||||||
'configuration.imageLoadDelayInMilliSeconds',
|
'configuration.imageLoadDelayInMilliSeconds',
|
||||||
MIN_IMAGE_LOAD_DELAY_IN_MILISECONDS
|
MIN_IMAGE_LOAD_DELAY_IN_MILLISECONDS
|
||||||
);
|
);
|
||||||
|
|
||||||
return MIN_IMAGE_LOAD_DELAY_IN_MILISECONDS;
|
return MIN_IMAGE_LOAD_DELAY_IN_MILLISECONDS;
|
||||||
}
|
}
|
||||||
|
|
||||||
return imageLoadDelay;
|
return imageLoadDelay;
|
||||||
|
@ -82,7 +82,7 @@
|
|||||||
"start": "npx webpack serve --config ./.webpack/webpack.dev.js",
|
"start": "npx webpack serve --config ./.webpack/webpack.dev.js",
|
||||||
"start:coverage": "npx webpack serve --config ./.webpack/webpack.coverage.js",
|
"start:coverage": "npx webpack serve --config ./.webpack/webpack.coverage.js",
|
||||||
"lint": "eslint example src e2e --ext .js,.vue openmct.js --max-warnings=0",
|
"lint": "eslint example src e2e --ext .js,.vue openmct.js --max-warnings=0",
|
||||||
"lint:spelling": "cspell \"**/*.*\"",
|
"lint:spelling": "cspell \"**/*.{js,md,vue}\" --show-context --gitignore",
|
||||||
"lint:fix": "eslint example src e2e --ext .js,.vue openmct.js --fix",
|
"lint:fix": "eslint example src e2e --ext .js,.vue openmct.js --fix",
|
||||||
"build:prod": "webpack --config ./.webpack/webpack.prod.js",
|
"build:prod": "webpack --config ./.webpack/webpack.prod.js",
|
||||||
"build:dev": "webpack --config ./.webpack/webpack.dev.js",
|
"build:dev": "webpack --config ./.webpack/webpack.dev.js",
|
||||||
|
@ -168,7 +168,7 @@ describe('The Annotation API', () => {
|
|||||||
targetDomainObjects: [mockDomainObject],
|
targetDomainObjects: [mockDomainObject],
|
||||||
targets: { fooTarget: {} }
|
targets: { fooTarget: {} }
|
||||||
};
|
};
|
||||||
openmct.annotation.setNamespaceToSaveAnnotations('nameespaceThatDoesNotExist');
|
openmct.annotation.setNamespaceToSaveAnnotations('namespaceThatDoesNotExist');
|
||||||
await openmct.annotation.create(annotationCreationArguments);
|
await openmct.annotation.create(annotationCreationArguments);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
expect(error).toBeDefined();
|
expect(error).toBeDefined();
|
||||||
|
@ -39,7 +39,7 @@ export default class FormsAPI {
|
|||||||
* This function accepts element, model and onChange function
|
* This function accepts element, model and onChange function
|
||||||
* element - html element (place holder) to render a row view
|
* element - html element (place holder) to render a row view
|
||||||
* model - row data for rendering name, value etc for given row type
|
* model - row data for rendering name, value etc for given row type
|
||||||
* onChange - an onChange event callback funtion to keep track of any change in value
|
* onChange - an onChange event callback function to keep track of any change in value
|
||||||
* @property {function} destroy a callback function when a vue component gets destroyed
|
* @property {function} destroy a callback function when a vue component gets destroyed
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
import NotificationAPI from './NotificationAPI';
|
import NotificationAPI from './NotificationAPI';
|
||||||
|
|
||||||
describe('The Notifiation API', () => {
|
describe('The Notification API', () => {
|
||||||
let notificationAPIInstance;
|
let notificationAPIInstance;
|
||||||
let defaultTimeout = 4000;
|
let defaultTimeout = 4000;
|
||||||
|
|
||||||
@ -108,7 +108,7 @@ describe('The Notifiation API', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('the error method notificiation', () => {
|
describe('the error method notification', () => {
|
||||||
let message = 'Minimized error message';
|
let message = 'Minimized error message';
|
||||||
|
|
||||||
afterAll(() => {
|
afterAll(() => {
|
||||||
|
@ -520,7 +520,7 @@ export default class ObjectAPI {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Inovke interceptors if applicable for a given domain object.
|
* Invoke interceptors if applicable for a given domain object.
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
applyGetInterceptors(identifier, domainObject) {
|
applyGetInterceptors(identifier, domainObject) {
|
||||||
|
@ -125,7 +125,7 @@ describe('The Object API', () => {
|
|||||||
await objectAPI.save(mockDomainObject);
|
await objectAPI.save(mockDomainObject);
|
||||||
expect(mockDomainObject.createdBy).toBe(USERNAME);
|
expect(mockDomainObject.createdBy).toBe(USERNAME);
|
||||||
});
|
});
|
||||||
it("Sets the current user for 'modifedBy' on existing objects", async () => {
|
it("Sets the current user for 'modifiedBy' on existing objects", async () => {
|
||||||
mockDomainObject.persisted = Date.now() - FIFTEEN_MINUTES;
|
mockDomainObject.persisted = Date.now() - FIFTEEN_MINUTES;
|
||||||
mockDomainObject.modified = Date.now();
|
mockDomainObject.modified = Date.now();
|
||||||
|
|
||||||
|
@ -230,7 +230,7 @@ export default class TelemetryAPI {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a request interceptor that transforms a request via module:openmct.TelemetryAPI.request
|
* Register a request interceptor that transforms a request via module:openmct.TelemetryAPI.request
|
||||||
* The request will be modifyed when it is received and will be returned in it's modified state
|
* The request will be modified when it is received and will be returned in it's modified state
|
||||||
* The request will be transformed only if the interceptor is applicable to that domain object as defined by the RequestInterceptorDef
|
* The request will be transformed only if the interceptor is applicable to that domain object as defined by the RequestInterceptorDef
|
||||||
*
|
*
|
||||||
* @param {module:openmct.RequestInterceptorDef} requestInterceptorDef the request interceptor definition to add
|
* @param {module:openmct.RequestInterceptorDef} requestInterceptorDef the request interceptor definition to add
|
||||||
@ -269,7 +269,7 @@ export default class TelemetryAPI {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get or set greedy LAD. For stategy "latest" telemetry in
|
* Get or set greedy LAD. For strategy "latest" telemetry in
|
||||||
* realtime mode the start bound will be ignored if true and
|
* realtime mode the start bound will be ignored if true and
|
||||||
* there is no new data to replace the existing data.
|
* there is no new data to replace the existing data.
|
||||||
* defaults to true
|
* defaults to true
|
||||||
|
@ -92,7 +92,7 @@ define(['lodash'], function (_) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get an array of valueMetadatas that posess all hints requested.
|
* Get an array of valueMetadatas that possess all hints requested.
|
||||||
* Array is sorted based on hint priority.
|
* Array is sorted based on hint priority.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
* A Type describes a kind of domain object that may appear or be
|
* A Type describes a kind of domain object that may appear or be
|
||||||
* created within Open MCT.
|
* created within Open MCT.
|
||||||
*
|
*
|
||||||
* @param {module:opemct.TypeRegistry~TypeDefinition} definition
|
* @param {module:openmct.TypeRegistry~TypeDefinition} definition
|
||||||
* @class Type
|
* @class Type
|
||||||
* @memberof module:openmct
|
* @memberof module:openmct
|
||||||
*/
|
*/
|
||||||
|
@ -43,7 +43,7 @@ class UserAPI extends EventEmitter {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the user provider for the user API. This allows you
|
* Set the user provider for the user API. This allows you
|
||||||
* to specifiy ONE user provider to be used with Open MCT.
|
* to specify ONE user provider to be used with Open MCT.
|
||||||
* @method setProvider
|
* @method setProvider
|
||||||
* @memberof module:openmct.UserAPI#
|
* @memberof module:openmct.UserAPI#
|
||||||
* @param {module:openmct.UserAPI~UserProvider} provider the new
|
* @param {module:openmct.UserAPI~UserProvider} provider the new
|
||||||
|
@ -74,7 +74,7 @@ describe('The User API', () => {
|
|||||||
provider.autoLogin(USERNAME);
|
provider.autoLogin(USERNAME);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('to check if a user (not specific) is loged in', (done) => {
|
it('to check if a user (not specific) is logged in', (done) => {
|
||||||
expect(openmct.user.isLoggedIn()).toBeFalse();
|
expect(openmct.user.isLoggedIn()).toBeFalse();
|
||||||
|
|
||||||
openmct.user.on('providerAdded', () => {
|
openmct.user.on('providerAdded', () => {
|
||||||
|
@ -35,8 +35,8 @@ describe('The Image Exporter', () => {
|
|||||||
return resetApplicationState(openmct);
|
return resetApplicationState(openmct);
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('basic instatation', () => {
|
describe('basic instantiation', () => {
|
||||||
it('can be instatiated', () => {
|
it('can be instantiated', () => {
|
||||||
imageExporter = new ImageExporter(openmct);
|
imageExporter = new ImageExporter(openmct);
|
||||||
|
|
||||||
expect(imageExporter).not.toEqual(null);
|
expect(imageExporter).not.toEqual(null);
|
||||||
|
@ -65,7 +65,7 @@ export default {
|
|||||||
},
|
},
|
||||||
hasUnits: {
|
hasUnits: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
requred: true
|
required: true
|
||||||
},
|
},
|
||||||
isStale: {
|
isStale: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
|
@ -127,7 +127,7 @@ describe('The LAD Table', () => {
|
|||||||
}).not.toThrow();
|
}).not.toThrow();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should reject non-telemtry producing objects', () => {
|
it('should reject non-telemetry producing objects', () => {
|
||||||
expect(() => {
|
expect(() => {
|
||||||
ladTableCompositionCollection.add(mockObj.ladTable);
|
ladTableCompositionCollection.add(mockObj.ladTable);
|
||||||
}).toThrow();
|
}).toThrow();
|
||||||
@ -254,10 +254,10 @@ describe('The LAD Table', () => {
|
|||||||
|
|
||||||
it('should show aggregate telemetry type with blank data', async () => {
|
it('should show aggregate telemetry type with blank data', async () => {
|
||||||
await Vue.nextTick();
|
await Vue.nextTick();
|
||||||
const lastestData = parent
|
const latestData = parent
|
||||||
.querySelectorAll(TABLE_BODY_ROWS)[1]
|
.querySelectorAll(TABLE_BODY_ROWS)[1]
|
||||||
.querySelectorAll('td')[2].innerText;
|
.querySelectorAll('td')[2].innerText;
|
||||||
expect(lastestData).toBe('---');
|
expect(latestData).toBe('---');
|
||||||
const dataType = parent
|
const dataType = parent
|
||||||
.querySelectorAll(TABLE_BODY_ROWS)[1]
|
.querySelectorAll(TABLE_BODY_ROWS)[1]
|
||||||
.querySelector('.js-type-data').innerText;
|
.querySelector('.js-type-data').innerText;
|
||||||
|
@ -158,7 +158,7 @@ export default {
|
|||||||
this.composition.remove(telemetryObject);
|
this.composition.remove(telemetryObject);
|
||||||
},
|
},
|
||||||
addTelemetryObject(telemetryObject) {
|
addTelemetryObject(telemetryObject) {
|
||||||
// grab information we need from the added telmetry object
|
// grab information we need from the added telemetry object
|
||||||
const key = this.openmct.objects.makeKeyString(telemetryObject.identifier);
|
const key = this.openmct.objects.makeKeyString(telemetryObject.identifier);
|
||||||
this.telemetryObjects[key] = telemetryObject;
|
this.telemetryObjects[key] = telemetryObject;
|
||||||
const metadata = this.openmct.telemetry.getMetadata(telemetryObject);
|
const metadata = this.openmct.telemetry.getMetadata(telemetryObject);
|
||||||
@ -188,7 +188,7 @@ export default {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// ask for the current telemetry data, then subcribe for changes
|
// ask for the current telemetry data, then subscribe for changes
|
||||||
this.requestDataFor(telemetryObject);
|
this.requestDataFor(telemetryObject);
|
||||||
this.subscribeToObject(telemetryObject);
|
this.subscribeToObject(telemetryObject);
|
||||||
},
|
},
|
||||||
|
@ -122,7 +122,7 @@ export default {
|
|||||||
this.composition.remove(telemetryObject);
|
this.composition.remove(telemetryObject);
|
||||||
},
|
},
|
||||||
addTelemetryObject(telemetryObject) {
|
addTelemetryObject(telemetryObject) {
|
||||||
// grab information we need from the added telmetry object
|
// grab information we need from the added telemetry object
|
||||||
const key = this.openmct.objects.makeKeyString(telemetryObject.identifier);
|
const key = this.openmct.objects.makeKeyString(telemetryObject.identifier);
|
||||||
this.telemetryObjects[key] = telemetryObject;
|
this.telemetryObjects[key] = telemetryObject;
|
||||||
const metadata = this.openmct.telemetry.getMetadata(telemetryObject);
|
const metadata = this.openmct.telemetry.getMetadata(telemetryObject);
|
||||||
|
@ -141,7 +141,7 @@ describe('the plugin', function () {
|
|||||||
};
|
};
|
||||||
displayLayoutItem = {
|
displayLayoutItem = {
|
||||||
composition: [
|
composition: [
|
||||||
// no item in compostion, but item in configuration items
|
// no item in composition, but item in configuration items
|
||||||
],
|
],
|
||||||
configuration: {
|
configuration: {
|
||||||
items: [item],
|
items: [item],
|
||||||
@ -165,7 +165,7 @@ describe('the plugin', function () {
|
|||||||
Vue.nextTick(done);
|
Vue.nextTick(done);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('will sync compostion and layout items', () => {
|
it('will sync composition and layout items', () => {
|
||||||
expect(displayLayoutItem.configuration.items.length).toBe(0);
|
expect(displayLayoutItem.configuration.items.length).toBe(0);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -73,7 +73,7 @@ describe('Export as JSON plugin', () => {
|
|||||||
expect(exportAsJSONAction.appliesTo([domainObject])).toEqual(true);
|
expect(exportAsJSONAction.appliesTo([domainObject])).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('ExportAsJSONAction does not applie to non-persistable objects', () => {
|
it('ExportAsJSONAction does not apply to non-persistable objects', () => {
|
||||||
domainObject = {
|
domainObject = {
|
||||||
identifier: {
|
identifier: {
|
||||||
key: 'export-testing',
|
key: 'export-testing',
|
||||||
@ -212,7 +212,7 @@ describe('Export as JSON plugin', () => {
|
|||||||
const parent = {
|
const parent = {
|
||||||
composition: [
|
composition: [
|
||||||
{
|
{
|
||||||
key: 'infinteChild',
|
key: 'infiniteChild',
|
||||||
namespace: ''
|
namespace: ''
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@ -235,7 +235,7 @@ describe('Export as JSON plugin', () => {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
identifier: {
|
identifier: {
|
||||||
key: 'infinteChild',
|
key: 'infiniteChild',
|
||||||
namespace: ''
|
namespace: ''
|
||||||
},
|
},
|
||||||
name: 'child',
|
name: 'child',
|
||||||
@ -265,7 +265,7 @@ describe('Export as JSON plugin', () => {
|
|||||||
Object.prototype.hasOwnProperty.call(completedTree.openmct, 'infiniteParent')
|
Object.prototype.hasOwnProperty.call(completedTree.openmct, 'infiniteParent')
|
||||||
).toBeTruthy();
|
).toBeTruthy();
|
||||||
expect(
|
expect(
|
||||||
Object.prototype.hasOwnProperty.call(completedTree.openmct, 'infinteChild')
|
Object.prototype.hasOwnProperty.call(completedTree.openmct, 'infiniteChild')
|
||||||
).toBeTruthy();
|
).toBeTruthy();
|
||||||
|
|
||||||
done();
|
done();
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
<div class="c-inspect-properties__header">Fault Details</div>
|
<div class="c-inspect-properties__header">Fault Details</div>
|
||||||
<ul class="c-inspect-properties__section">
|
<ul class="c-inspect-properties__section">
|
||||||
<DetailText :detail="sourceDetails" />
|
<DetailText :detail="sourceDetails" />
|
||||||
<DetailText :detail="occuredDetails" />
|
<DetailText :detail="occurredDetails" />
|
||||||
<DetailText :detail="criticalityDetails" />
|
<DetailText :detail="criticalityDetails" />
|
||||||
<DetailText :detail="descriptionDetails" />
|
<DetailText :detail="descriptionDetails" />
|
||||||
</ul>
|
</ul>
|
||||||
@ -72,9 +72,9 @@ export default {
|
|||||||
value: this.selectedFault?.shortDescription
|
value: this.selectedFault?.shortDescription
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
occuredDetails() {
|
occurredDetails() {
|
||||||
return {
|
return {
|
||||||
name: 'Occured',
|
name: 'Occurred',
|
||||||
value: this.selectedFault?.triggerTime
|
value: this.selectedFault?.triggerTime
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
@ -789,7 +789,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
expand() {
|
expand() {
|
||||||
// check for modifier keys so it doesnt interfere with the layout
|
// check for modifier keys so it doesn't interfere with the layout
|
||||||
if (this.cursorStates.modifierKeyPressed) {
|
if (this.cursorStates.modifierKeyPressed) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ export default class RelatedTelemetry {
|
|||||||
this[key].realtime.telemetryObjectId &&
|
this[key].realtime.telemetryObjectId &&
|
||||||
this[key].realtime.telemetryObjectId !== ''
|
this[key].realtime.telemetryObjectId !== ''
|
||||||
) {
|
) {
|
||||||
await this._intializeRealtime(key);
|
await this._initializeRealtime(key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -131,7 +131,7 @@ export default class RelatedTelemetry {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async _intializeRealtime(key) {
|
async _initializeRealtime(key) {
|
||||||
this[key].realtimeDomainObject = await this._openmct.objects.get(
|
this[key].realtimeDomainObject = await this._openmct.objects.get(
|
||||||
this[key].realtime.telemetryObjectId
|
this[key].realtime.telemetryObjectId
|
||||||
);
|
);
|
||||||
|
@ -51,9 +51,9 @@ describe('the plugin', () => {
|
|||||||
|
|
||||||
it('when installed, adds "My Items" to the root', async () => {
|
it('when installed, adds "My Items" to the root', async () => {
|
||||||
const root = await openmct.objects.get('ROOT');
|
const root = await openmct.objects.get('ROOT');
|
||||||
const rootCompostionCollection = openmct.composition.get(root);
|
const rootCompositionCollection = openmct.composition.get(root);
|
||||||
const rootCompostion = await rootCompostionCollection.load();
|
const rootComposition = await rootCompositionCollection.load();
|
||||||
let myItems = rootCompostion.filter((domainObject) => {
|
let myItems = rootComposition.filter((domainObject) => {
|
||||||
return openmct.objects.areIdsEqual(domainObject.identifier, myItemsIdentifier);
|
return openmct.objects.areIdsEqual(domainObject.identifier, myItemsIdentifier);
|
||||||
})[0];
|
})[0];
|
||||||
|
|
||||||
|
@ -231,7 +231,7 @@ export default {
|
|||||||
onDestroy: destroy
|
onDestroy: destroy
|
||||||
});
|
});
|
||||||
|
|
||||||
painterroInstance.intialize();
|
painterroInstance.initialize();
|
||||||
|
|
||||||
const fullSizeImageObjectIdentifier = this.embed.snapshot.fullSizeImageObjectIdentifier;
|
const fullSizeImageObjectIdentifier = this.embed.snapshot.fullSizeImageObjectIdentifier;
|
||||||
if (!fullSizeImageObjectIdentifier) {
|
if (!fullSizeImageObjectIdentifier) {
|
||||||
|
@ -39,7 +39,7 @@ export default class PainterroInstance {
|
|||||||
this.painterroInstance.save();
|
this.painterroInstance.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
intialize() {
|
initialize() {
|
||||||
this.config = Object.assign({}, DEFAULT_CONFIG);
|
this.config = Object.assign({}, DEFAULT_CONFIG);
|
||||||
|
|
||||||
this.config.id = this.elementId;
|
this.config.id = this.elementId;
|
||||||
|
@ -29,13 +29,13 @@ export default function PerformanceIndicator() {
|
|||||||
indicator.statusClass('s-status-info');
|
indicator.statusClass('s-status-info');
|
||||||
openmct.indicators.add(indicator);
|
openmct.indicators.add(indicator);
|
||||||
|
|
||||||
let rafHandle = requestAnimationFrame(incremementFrames);
|
let rafHandle = requestAnimationFrame(incrementFrames);
|
||||||
|
|
||||||
openmct.on('destroy', () => {
|
openmct.on('destroy', () => {
|
||||||
cancelAnimationFrame(rafHandle);
|
cancelAnimationFrame(rafHandle);
|
||||||
});
|
});
|
||||||
|
|
||||||
function incremementFrames() {
|
function incrementFrames() {
|
||||||
let now = performance.now();
|
let now = performance.now();
|
||||||
if (now - lastCalculated < 1000) {
|
if (now - lastCalculated < 1000) {
|
||||||
frames++;
|
frames++;
|
||||||
@ -45,7 +45,7 @@ export default function PerformanceIndicator() {
|
|||||||
frames = 1;
|
frames = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
rafHandle = requestAnimationFrame(incremementFrames);
|
rafHandle = requestAnimationFrame(incrementFrames);
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateFPS(fps) {
|
function updateFPS(fps) {
|
||||||
|
@ -431,7 +431,7 @@ class CouchObjectProvider {
|
|||||||
// Dummy search function. It has to appear to support search,
|
// Dummy search function. It has to appear to support search,
|
||||||
// otherwise the in-memory indexer will index all of its objects,
|
// otherwise the in-memory indexer will index all of its objects,
|
||||||
// but actually search results will be provided by a separate search provider
|
// but actually search results will be provided by a separate search provider
|
||||||
// see CoucheSearchProvider.js
|
// see CouchSearchProvider.js
|
||||||
return Promise.resolve([]);
|
return Promise.resolve([]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ export default function CouchPlugin(options) {
|
|||||||
couchStatusIndicator
|
couchStatusIndicator
|
||||||
);
|
);
|
||||||
|
|
||||||
// Unfortunately, for historical reasons, Couch DB produces objects with a mix of namepaces (alternately "mct", and "")
|
// Unfortunately, for historical reasons, Couch DB produces objects with a mix of namespaces (alternately "mct", and "")
|
||||||
// Installing the same provider under both namespaces means that it can respond to object gets for both namespaces.
|
// Installing the same provider under both namespaces means that it can respond to object gets for both namespaces.
|
||||||
openmct.objects.addProvider(LEGACY_SPACE, install.couchProvider);
|
openmct.objects.addProvider(LEGACY_SPACE, install.couchProvider);
|
||||||
openmct.objects.addProvider(NAMESPACE, install.couchProvider);
|
openmct.objects.addProvider(NAMESPACE, install.couchProvider);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Plot Plugin
|
# Plot Plugin
|
||||||
|
|
||||||
Enables plot visualization of telemetry data. This plugin adds a plot view that is available from the view switcher for
|
Enables plot visualization of telemetry data. This plugin adds a plot view that is available from the view switcher for
|
||||||
all telemetry objects. Two user createble objects are also added by this plugin, for Overlay and Stacked Plots.
|
all telemetry objects. Two user createable objects are also added by this plugin, for Overlay and Stacked Plots.
|
||||||
Telemetry objects can be added to Overlay and Stacked Plots via drag and drop.
|
Telemetry objects can be added to Overlay and Stacked Plots via drag and drop.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
@ -554,7 +554,7 @@ export default class PlotSeries extends Model {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the series data with the given value.
|
* Update the series data with the given value.
|
||||||
* This return type definition is totally wrong, only covers sinwave generator. It needs to be generic.
|
* This return type definition is totally wrong, only covers sinewave generator. It needs to be generic.
|
||||||
* @return-example {Array<{
|
* @return-example {Array<{
|
||||||
cos: number
|
cos: number
|
||||||
sin: number
|
sin: number
|
||||||
|
@ -126,9 +126,9 @@ export default class SeriesCollection extends Collection {
|
|||||||
});
|
});
|
||||||
|
|
||||||
/*
|
/*
|
||||||
when cancelling out of edit mode, the config store and domain object are out of sync
|
when cancelling out of edit mode, the config store and domain object are out of sync
|
||||||
thus it is necesarry to check both and remove the models that are no longer in composition
|
thus it is necessary to check both and remove the models that are no longer in composition
|
||||||
*/
|
*/
|
||||||
if (persistedIndex === -1) {
|
if (persistedIndex === -1) {
|
||||||
this.remove(this.at(configIndex));
|
this.remove(this.at(configIndex));
|
||||||
} else {
|
} else {
|
||||||
|
@ -28,7 +28,7 @@ import { MARKER_SHAPES } from './MarkerShapes';
|
|||||||
*
|
*
|
||||||
* @constructor
|
* @constructor
|
||||||
* @param {CanvasElement} canvas the canvas object to render upon
|
* @param {CanvasElement} canvas the canvas object to render upon
|
||||||
* @throws {Error} an error is thrown if Canvas's 2D API is unavailab
|
* @throws {Error} an error is thrown if Canvas's 2D API is unavailable
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -36,7 +36,7 @@ import { MARKER_SHAPES } from './MarkerShapes';
|
|||||||
*
|
*
|
||||||
* @constructor
|
* @constructor
|
||||||
* @param {CanvasElement} canvas the canvas object to render upon
|
* @param {CanvasElement} canvas the canvas object to render upon
|
||||||
* @throws {Error} an error is thrown if Canvas's 2D API is unavailab
|
* @throws {Error} an error is thrown if Canvas's 2D API is unavailable
|
||||||
*/
|
*/
|
||||||
function Draw2D(canvas) {
|
function Draw2D(canvas) {
|
||||||
this.canvas = canvas;
|
this.canvas = canvas;
|
||||||
|
@ -45,7 +45,7 @@ export const DrawLoader = {
|
|||||||
* Return the first draw API available. Returns
|
* Return the first draw API available. Returns
|
||||||
* `undefined` if a draw API could not be constructed.
|
* `undefined` if a draw API could not be constructed.
|
||||||
*.
|
*.
|
||||||
* @param {CanvasElement} canvas - The canvas eelement to attach
|
* @param {CanvasElement} canvas - The canvas element to attach
|
||||||
the draw API to.
|
the draw API to.
|
||||||
*/
|
*/
|
||||||
getDrawAPI: function (canvas, overlay) {
|
getDrawAPI: function (canvas, overlay) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# Summary Widget Plugin
|
# Summary Widget Plugin
|
||||||
Summary widgets can be used to provide visual indication of state based on telemetry data. They allow rules to be
|
Summary widgets can be used to provide visual indication of state based on telemetry data. They allow rules to be
|
||||||
defined that can then be used to change the appearance of the summary widget element based on data. For example, a
|
defined that can then be used to change the appearance of the summary widget element based on data. For example, a
|
||||||
summary widget could be defined that is green when a temparature reading is between `0` and `100` centigrade, red when
|
summary widget could be defined that is green when a temperature reading is between `0` and `100` centigrade, red when
|
||||||
it's above `100`, and orange when it's below `0`.
|
it's above `100`, and orange when it's below `0`.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
@ -18,7 +18,7 @@ define([
|
|||||||
/**
|
/**
|
||||||
* Represents an individual condition for a summary widget rule. Manages the
|
* Represents an individual condition for a summary widget rule. Manages the
|
||||||
* associated inputs and view.
|
* associated inputs and view.
|
||||||
* @param {Object} conditionConfig The configurration for this condition, consisting
|
* @param {Object} conditionConfig The configuration for this condition, consisting
|
||||||
* of object, key, operation, and values fields
|
* of object, key, operation, and values fields
|
||||||
* @param {number} index the index of this Condition object in it's parent Rule's data model,
|
* @param {number} index the index of this Condition object in it's parent Rule's data model,
|
||||||
* to be injected into callbacks for removes
|
* to be injected into callbacks for removes
|
||||||
@ -121,7 +121,7 @@ define([
|
|||||||
* Register a callback with this condition: supported callbacks are remove, change,
|
* Register a callback with this condition: supported callbacks are remove, change,
|
||||||
* duplicate
|
* duplicate
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
|
@ -53,7 +53,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
* Register a callback with this ConditionManager: supported callbacks are add
|
* Register a callback with this ConditionManager: supported callbacks are add
|
||||||
* remove, load, metadata, and receiveTelemetry
|
* remove, load, metadata, and receiveTelemetry
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
@ -154,7 +154,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Invoked when a telemtry subscription yields new data. Updates the LAD
|
* Invoked when a telemetry subscription yields new data. Updates the LAD
|
||||||
* cache and invokes any registered receiveTelemetry callbacks
|
* cache and invokes any registered receiveTelemetry callbacks
|
||||||
* @param {string} objId The key associated with the telemetry source
|
* @param {string} objId The key associated with the telemetry source
|
||||||
* @param {datum} datum The new data from the telemetry source
|
* @param {datum} datum The new data from the telemetry source
|
||||||
@ -239,7 +239,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Invoked on a remove event in this Summary Widget's compostion. Removes
|
* Invoked on a remove event in this Summary Widget's composition. Removes
|
||||||
* the object from the local composition, and untracks it
|
* the object from the local composition, and untracks it
|
||||||
* @param {object} identifier The identifier of the object to be removed
|
* @param {object} identifier The identifier of the object to be removed
|
||||||
* @private
|
* @private
|
||||||
@ -311,7 +311,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the type associated with a telemtry data field of a particular domain
|
* Returns the type associated with a telemetry data field of a particular domain
|
||||||
* object
|
* object
|
||||||
* @param {string} id The key associated with the domain object
|
* @param {string} id The key associated with the domain object
|
||||||
* @param {string} property The telemetry field key to retrieve the type of
|
* @param {string} property The telemetry field key to retrieve the type of
|
||||||
@ -324,7 +324,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the human-readable name of a telemtry data field of a particular domain
|
* Returns the human-readable name of a telemetry data field of a particular domain
|
||||||
* object
|
* object
|
||||||
* @param {string} id The key associated with the domain object
|
* @param {string} id The key associated with the domain object
|
||||||
* @param {string} property The telemetry field key to retrieve the type of
|
* @param {string} property The telemetry field key to retrieve the type of
|
||||||
@ -346,7 +346,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true if the initial compostion load has completed
|
* Returns true if the initial composition load has completed
|
||||||
* @return {boolean}
|
* @return {boolean}
|
||||||
*/
|
*/
|
||||||
ConditionManager.prototype.loadCompleted = function () {
|
ConditionManager.prototype.loadCompleted = function () {
|
||||||
@ -361,7 +361,7 @@ define(['./ConditionEvaluator', 'objectUtils', 'EventEmitter', 'lodash'], functi
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Triggers the telemetryRecieve callbacks registered to this ConditionManager,
|
* Triggers the telemetryReceive callbacks registered to this ConditionManager,
|
||||||
* used by the {TestDataManager} to force a rule evaluation when test data is
|
* used by the {TestDataManager} to force a rule evaluation when test data is
|
||||||
* enabled
|
* enabled
|
||||||
*/
|
*/
|
||||||
|
@ -27,7 +27,7 @@ define([
|
|||||||
* @param {MCT} openmct An MCT instance
|
* @param {MCT} openmct An MCT instance
|
||||||
* @param {ConditionManager} conditionManager A ConditionManager instance
|
* @param {ConditionManager} conditionManager A ConditionManager instance
|
||||||
* @param {WidgetDnD} widgetDnD A WidgetDnD instance to handle dragging and dropping rules
|
* @param {WidgetDnD} widgetDnD A WidgetDnD instance to handle dragging and dropping rules
|
||||||
* @param {element} container The DOM element which cotains this summary widget
|
* @param {element} container The DOM element which contains this summary widget
|
||||||
*/
|
*/
|
||||||
function Rule(ruleConfig, domainObject, openmct, conditionManager, widgetDnD, container) {
|
function Rule(ruleConfig, domainObject, openmct, conditionManager, widgetDnD, container) {
|
||||||
eventHelpers.extend(this);
|
eventHelpers.extend(this);
|
||||||
@ -303,7 +303,7 @@ define([
|
|||||||
* Register a callback with this rule: supported callbacks are remove, change,
|
* Register a callback with this rule: supported callbacks are remove, change,
|
||||||
* conditionChange, and duplicate
|
* conditionChange, and duplicate
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
@ -335,7 +335,7 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Mutate thet domain object with this rule's local configuration
|
* Mutate the domain object with this rule's local configuration
|
||||||
*/
|
*/
|
||||||
Rule.prototype.updateDomainObject = function () {
|
Rule.prototype.updateDomainObject = function () {
|
||||||
this.openmct.objects.mutate(
|
this.openmct.objects.mutate(
|
||||||
@ -385,7 +385,7 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialze a new condition. If called with the sourceConfig and sourceIndex arguments,
|
* Initialize a new condition. If called with the sourceConfig and sourceIndex arguments,
|
||||||
* will insert a new condition with the provided configuration after the sourceIndex
|
* will insert a new condition with the provided configuration after the sourceIndex
|
||||||
* index. Otherwise, initializes a new blank rule and inserts it at the end
|
* index. Otherwise, initializes a new blank rule and inserts it at the end
|
||||||
* of the list.
|
* of the list.
|
||||||
|
@ -315,12 +315,12 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialze a new rule from a default configuration, or build a {Rule} object
|
* Initialize a new rule from a default configuration, or build a {Rule} object
|
||||||
* from it if already exists
|
* from it if already exists
|
||||||
* @param {string} ruleId An key to be used to identify this ruleId, or the key
|
* @param {string} ruleId An key to be used to identify this ruleId, or the key
|
||||||
of the rule to be instantiated
|
of the rule to be instantiated
|
||||||
* @param {string} ruleName The initial human-readable name of this rule
|
* @param {string} ruleName The initial human-readable name of this rule
|
||||||
*/
|
*/
|
||||||
SummaryWidget.prototype.initRule = function (ruleId, ruleName) {
|
SummaryWidget.prototype.initRule = function (ruleId, ruleName) {
|
||||||
let ruleConfig;
|
let ruleConfig;
|
||||||
const styleObj = {};
|
const styleObj = {};
|
||||||
|
@ -111,7 +111,7 @@ define([
|
|||||||
* Register a callback with this item: supported callbacks are remove, change,
|
* Register a callback with this item: supported callbacks are remove, change,
|
||||||
* and duplicate
|
* and duplicate
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
|
@ -60,7 +60,7 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialze a new test data item, either from a source configuration, or with
|
* Initialize a new test data item, either from a source configuration, or with
|
||||||
* the default empty configuration
|
* the default empty configuration
|
||||||
* @param {Object} [config] An object with sourceItem and index fields to instantiate
|
* @param {Object} [config] An object with sourceItem and index fields to instantiate
|
||||||
* this rule from, optional
|
* this rule from, optional
|
||||||
@ -99,7 +99,7 @@ define([
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Change event handler for the test data items which compose this
|
* Change event handler for the test data items which compose this
|
||||||
* test data generateor
|
* test data generator
|
||||||
* @param {Object} event An object representing this event, with value, property,
|
* @param {Object} event An object representing this event, with value, property,
|
||||||
* and index fields
|
* and index fields
|
||||||
*/
|
*/
|
||||||
@ -120,7 +120,7 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Intantiate {TestDataItem} objects from the current configuration, and
|
* Instantiate {TestDataItem} objects from the current configuration, and
|
||||||
* update the view accordingly
|
* update the view accordingly
|
||||||
*/
|
*/
|
||||||
TestDataManager.prototype.refreshItems = function () {
|
TestDataManager.prototype.refreshItems = function () {
|
||||||
|
@ -41,7 +41,7 @@ define([
|
|||||||
/**
|
/**
|
||||||
* Register a callback with this WidgetDnD: supported callback is drop
|
* Register a callback with this WidgetDnD: supported callback is drop
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
|
@ -46,8 +46,8 @@ define(['./Select'], function (Select) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Event handler for the intial metadata load event from the associated
|
* Event handler for the initial metadata load event from the associated
|
||||||
* ConditionManager. Retreives metadata from the manager and populates
|
* ConditionManager. Retrieves metadata from the manager and populates
|
||||||
* the select element.
|
* the select element.
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
|
@ -51,8 +51,8 @@ define(['./Select', '../eventHelpers'], function (Select, eventHelpers) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Event handler for the intial metadata load event from the associated
|
* Event handler for the initial metadata load event from the associated
|
||||||
* ConditionManager. Retreives telemetry property types and updates the
|
* ConditionManager. Retrieves telemetry property types and updates the
|
||||||
* select
|
* select
|
||||||
* @private
|
* @private
|
||||||
*/
|
*/
|
||||||
|
@ -99,7 +99,7 @@ define([
|
|||||||
/**
|
/**
|
||||||
* Register a callback with this palette: supported callback is change
|
* Register a callback with this palette: supported callback is change
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
@ -140,7 +140,7 @@ define([
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the view assoicated with the currently selected item
|
* Update the view associated with the currently selected item
|
||||||
*/
|
*/
|
||||||
Palette.prototype.updateSelected = function (item) {
|
Palette.prototype.updateSelected = function (item) {
|
||||||
this.domElement.querySelectorAll('.c-palette__item').forEach((paletteItem) => {
|
this.domElement.querySelectorAll('.c-palette__item').forEach((paletteItem) => {
|
||||||
|
@ -49,7 +49,7 @@ define([
|
|||||||
/**
|
/**
|
||||||
* Register a callback with this select: supported callback is change
|
* Register a callback with this select: supported callback is change
|
||||||
* @param {string} event The key for the event to listen to
|
* @param {string} event The key for the event to listen to
|
||||||
* @param {function} callback The function that this rule will envoke on this event
|
* @param {function} callback The function that this rule will invoke on this event
|
||||||
* @param {Object} context A reference to a scope to use as the context for
|
* @param {Object} context A reference to a scope to use as the context for
|
||||||
* context for the callback function
|
* context for the callback function
|
||||||
*/
|
*/
|
||||||
|
@ -362,7 +362,7 @@ define(['../src/ConditionManager'], function (ConditionManager) {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('populates its LAD cache with historial data on load, if available', function (done) {
|
it('populates its LAD cache with historical data on load, if available', function (done) {
|
||||||
expect(telemetryRequests.length).toBe(2);
|
expect(telemetryRequests.length).toBe(2);
|
||||||
expect(telemetryRequests[0].object).toBe(mockCompObject1);
|
expect(telemetryRequests[0].object).toBe(mockCompObject1);
|
||||||
expect(telemetryRequests[1].object).toBe(mockCompObject2);
|
expect(telemetryRequests[1].object).toBe(mockCompObject2);
|
||||||
@ -394,7 +394,7 @@ define(['../src/ConditionManager'], function (ConditionManager) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it(
|
it(
|
||||||
'evalutes a set of rules and returns the id of the' +
|
'evaluates a set of rules and returns the id of the ' +
|
||||||
'last active rule, or the first if no rules are active',
|
'last active rule, or the first if no rules are active',
|
||||||
function () {
|
function () {
|
||||||
const mockRuleOrder = ['default', 'rule0', 'rule1'];
|
const mockRuleOrder = ['default', 'rule0', 'rule1'];
|
||||||
|
@ -96,7 +96,7 @@ define(['../src/SummaryWidget'], function (SummaryWidget) {
|
|||||||
expect(mockContainer.getElementsByClassName('w-summary-widget').length).toBeGreaterThan(0);
|
expect(mockContainer.getElementsByClassName('w-summary-widget').length).toBeGreaterThan(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('initialzes a default rule', function () {
|
it('initializes a default rule', function () {
|
||||||
expect(mockDomainObject.configuration.ruleConfigById.default).toBeDefined();
|
expect(mockDomainObject.configuration.ruleConfigById.default).toBeDefined();
|
||||||
expect(mockDomainObject.configuration.ruleOrder).toEqual(['default']);
|
expect(mockDomainObject.configuration.ruleOrder).toEqual(['default']);
|
||||||
});
|
});
|
||||||
|
@ -56,7 +56,7 @@ describe('the plugin', () => {
|
|||||||
openmct = createOpenMct();
|
openmct = createOpenMct();
|
||||||
|
|
||||||
// Table Plugin is actually installed by default, but because installing it
|
// Table Plugin is actually installed by default, but because installing it
|
||||||
// again is harmless it is left here as an examplar for non-default plugins.
|
// again is harmless it is left here as an example for non-default plugins.
|
||||||
tablePlugin = new TablePlugin();
|
tablePlugin = new TablePlugin();
|
||||||
openmct.install(tablePlugin);
|
openmct.install(tablePlugin);
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.openmct.time.on(TIME_CONTEXT_EVENTS.timeSysteChanged, this.setViewFromTimeSystem);
|
this.openmct.time.on(TIME_CONTEXT_EVENTS.timeSystemChanged, this.setViewFromTimeSystem);
|
||||||
this.openmct.time.on(TIME_CONTEXT_EVENTS.clockChanged, this.setViewFromClock);
|
this.openmct.time.on(TIME_CONTEXT_EVENTS.clockChanged, this.setViewFromClock);
|
||||||
},
|
},
|
||||||
unmounted() {
|
unmounted() {
|
||||||
|
@ -99,7 +99,7 @@ export default {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.showConductorPopup = false;
|
this.showConductorPopup = false;
|
||||||
this.positionX = -10000; // reset it off screan
|
this.positionX = -10000; // reset it off screen
|
||||||
|
|
||||||
document.removeEventListener('click', this.handleClickAway);
|
document.removeEventListener('click', this.handleClickAway);
|
||||||
window.removeEventListener('resize', this.positionBox);
|
window.removeEventListener('resize', this.positionBox);
|
||||||
|
@ -133,7 +133,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// serialize domain object anyway, because some views can drag-and-drop objects without composition
|
// serialize domain object anyway, because some views can drag-and-drop objects without composition
|
||||||
// (eg. notabook.)
|
// (eg. notebook.)
|
||||||
event.dataTransfer.setData('openmct/domain-object-path', serializedPath);
|
event.dataTransfer.setData('openmct/domain-object-path', serializedPath);
|
||||||
event.dataTransfer.setData(`openmct/domain-object/${keyString}`, this.domainObject);
|
event.dataTransfer.setData(`openmct/domain-object/${keyString}`, this.domainObject);
|
||||||
},
|
},
|
||||||
|
@ -58,7 +58,7 @@ xdescribe('Application router utility functions', () => {
|
|||||||
expect(searchParams.get('testParam1')).toBe('testValue1');
|
expect(searchParams.get('testParam1')).toBe('testValue1');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('The deleteSearchParam function deletes an individual search paramater in the window location hash', () => {
|
it('The deleteSearchParam function deletes an individual search parameter in the window location hash', () => {
|
||||||
openmct.router.deleteSearchParam('testParam');
|
openmct.router.deleteSearchParam('testParam');
|
||||||
const searchParams = openmct.router.getAllSearchParams();
|
const searchParams = openmct.router.getAllSearchParams();
|
||||||
expect(searchParams.get('testParam')).toBe(null);
|
expect(searchParams.get('testParam')).toBe(null);
|
||||||
@ -73,7 +73,7 @@ xdescribe('Application router utility functions', () => {
|
|||||||
expect(searchParams.get('testParam2')).toBe('testValue2');
|
expect(searchParams.get('testParam2')).toBe('testValue2');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('The setAllSearchParams function replaces all search paramaters in the window location hash', () => {
|
it('The setAllSearchParams function replaces all search parameters in the window location hash', () => {
|
||||||
openmct.router.setSearchParam('testParam2', 'updatedtestValue2');
|
openmct.router.setSearchParam('testParam2', 'updatedtestValue2');
|
||||||
openmct.router.setSearchParam('newTestParam3', 'newTestValue3');
|
openmct.router.setSearchParam('newTestParam3', 'newTestValue3');
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
* info using a comparison between the userAgent and key
|
* info using a comparison between the userAgent and key
|
||||||
* device names
|
* device names
|
||||||
* @constructor
|
* @constructor
|
||||||
* @param window the broser object model
|
* @param window the browser object model
|
||||||
* @memberof /utils/agent
|
* @memberof /utils/agent
|
||||||
*/
|
*/
|
||||||
export default class Agent {
|
export default class Agent {
|
||||||
|
Loading…
Reference in New Issue
Block a user