diff --git a/package-lock.json b/package-lock.json index 831b543..249ff80 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1275,9 +1275,9 @@ "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" }, "@datadog/browser-core": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-core/-/browser-core-2.18.0.tgz", - "integrity": "sha512-1RvxLK8TiuAaDrwkrlOg7wM+7FilJtNbC30h5BxoGChWEBB7QsgeYGnliQ60byZUCzhbvARVzHHNZTxUiP+fPQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@datadog/browser-core/-/browser-core-3.1.2.tgz", + "integrity": "sha512-TVw6AEM39UgBm9wDAQJ/t1BurxfRvZY1TaKZiGOm2OQIFjQgdlbB1BXVZru/OcR3/kGA1JMQ6Nhh2cERDLpNHw==", "requires": { "tslib": "^1.10.0" }, @@ -1290,11 +1290,11 @@ } }, "@datadog/browser-logs": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-logs/-/browser-logs-2.18.0.tgz", - "integrity": "sha512-bDT5YkPNHGZmjADXtsVtwSyL+/J7MA4k2mBcHzutXK7/tKrIRiKH6ygHiBRryNHfD7/Q79tZqJzi32kSZy3AAA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@datadog/browser-logs/-/browser-logs-3.1.2.tgz", + "integrity": "sha512-XBtqH1RoLky4E7Gpr2eDVod4Zji1/BIOh+1T6zO+quapFWin9VRtiwpo9DjWFjSdGENbjGpz0HJfQIS5b+sLTA==", "requires": { - "@datadog/browser-core": "2.18.0", + "@datadog/browser-core": "3.1.2", "tslib": "^1.10.0" }, "dependencies": { @@ -1305,55 +1305,6 @@ } } }, - "@datadog/browser-rum": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-rum/-/browser-rum-2.18.0.tgz", - "integrity": "sha512-cfji5LdYJl1EpDhDZS67cpvgF6mC+qHSKRDxHQmqYurZW8R97wRhvrfpQWpDrKnl46MCvdQ76qDpSk9AVqK1zg==", - "requires": { - "@datadog/browser-core": "2.18.0", - "@datadog/browser-rum-core": "2.18.0", - "tslib": "^1.10.0" - }, - "dependencies": { - "@datadog/browser-core": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-core/-/browser-core-2.18.0.tgz", - "integrity": "sha512-1RvxLK8TiuAaDrwkrlOg7wM+7FilJtNbC30h5BxoGChWEBB7QsgeYGnliQ60byZUCzhbvARVzHHNZTxUiP+fPQ==", - "requires": { - "tslib": "^1.10.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, - "@datadog/browser-rum-core": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-rum-core/-/browser-rum-core-2.18.0.tgz", - "integrity": "sha512-HzdoQltOdIkEEDiZj7r0kHDa/bw6WIBfKPQIv680arRXwhIrvaguwWUiJFTEXI865NA5ouSwGMpPm8Xgrb3B5g==", - "requires": { - "@datadog/browser-core": "2.18.0", - "tslib": "^1.10.0" - }, - "dependencies": { - "@datadog/browser-core": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/@datadog/browser-core/-/browser-core-2.18.0.tgz", - "integrity": "sha512-1RvxLK8TiuAaDrwkrlOg7wM+7FilJtNbC30h5BxoGChWEBB7QsgeYGnliQ60byZUCzhbvARVzHHNZTxUiP+fPQ==", - "requires": { - "tslib": "^1.10.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } - } - }, "@emotion/hash": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", @@ -2088,9 +2039,9 @@ } }, "@testing-library/dom": { - "version": "7.31.2", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-7.31.2.tgz", - "integrity": "sha512-3UqjCpey6HiTZT92vODYLPxTBWlM8ZOOjr3LX5F37/VRipW2M1kX6I/Cm4VXzteZqfGfagg8yXywpcOgQBlNsQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.1.0.tgz", + "integrity": "sha512-kmW9alndr19qd6DABzQ978zKQ+J65gU2Rzkl8hriIetPnwpesRaK4//jEQyYh8fEALmGhomD/LBQqt+o+DL95Q==", "requires": { "@babel/code-frame": "^7.10.4", "@babel/runtime": "^7.12.5", @@ -2099,17 +2050,55 @@ "chalk": "^4.1.0", "dom-accessibility-api": "^0.5.6", "lz-string": "^1.4.4", - "pretty-format": "^26.6.2" + "pretty-format": "^27.0.2" }, "dependencies": { + "@jest/types": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.0.6.tgz", + "integrity": "sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", + "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "requires": { + "@types/yargs-parser": "*" + } + }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } + }, + "pretty-format": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.0.6.tgz", + "integrity": "sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==", + "requires": { + "@jest/types": "^27.0.6", + "ansi-regex": "^5.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==" + } + } } } }, @@ -2130,18 +2119,18 @@ } }, "@testing-library/react": { - "version": "11.2.7", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-11.2.7.tgz", - "integrity": "sha512-tzRNp7pzd5QmbtXNG/mhdcl7Awfu/Iz1RaVHY75zTdOkmHCuzMhRL83gWHSgOAcjS3CCbyfwUHMZgRJb4kAfpA==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-12.0.0.tgz", + "integrity": "sha512-sh3jhFgEshFyJ/0IxGltRhwZv2kFKfJ3fN1vTZ6hhMXzz9ZbbcTgmDYM4e+zJv+oiVKKEWZPyqPAh4MQBI65gA==", "requires": { "@babel/runtime": "^7.12.5", - "@testing-library/dom": "^7.28.1" + "@testing-library/dom": "^8.0.0" } }, "@testing-library/user-event": { - "version": "12.8.3", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-12.8.3.tgz", - "integrity": "sha512-IR0iWbFkgd56Bu5ZI/ej8yQwrkCv8Qydx6RzwbKz9faXazR/+5tvYKsZQgyXJiwgpcva127YO6JcWy7YlCfofQ==", + "version": "13.2.1", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.2.1.tgz", + "integrity": "sha512-cczlgVl+krjOb3j1625usarNEibI0IFRJrSWX9UsJ1HKYFgCQv9Nb7QAipUDXl3Xdz8NDTsiS78eAkPSxlzTlw==", "requires": { "@babel/runtime": "^7.12.5" } @@ -10492,9 +10481,9 @@ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { "version": "1.8.0", @@ -14189,9 +14178,9 @@ "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, "tar": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", - "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.10.tgz", + "integrity": "sha512-kvvfiVvjGMxeUNB6MyYv5z7vhfFRwbwCXJAeL0/lnbrttBVqcMOnpHUf0X42LrPMR8mMpgapkJMchFH4FSHzNA==", "requires": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", @@ -14825,9 +14814,9 @@ } }, "url-parse": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz", - "integrity": "sha512-HOfCOUJt7iSYzEx/UqgtwKRMC6EU91NFhsCHMv9oM03VJcVo2Qrp8T8kI9D7amFf1cu+/3CEhgb3rF9zL7k85Q==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.3.tgz", + "integrity": "sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==", "requires": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" @@ -15232,9 +15221,9 @@ } }, "web-vitals": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-0.2.4.tgz", - "integrity": "sha512-6BjspCO9VriYy12z356nL6JBS0GYeEcA457YyRzD+dD6XYCQ75NKhcOHUMHentOE7OcVCIXXDvOm0jKFfQG2Gg==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-2.1.0.tgz", + "integrity": "sha512-npEyJP8jHf3J71t1tRTEtz9FeKp8H2udWJUUq5ykfPhhstr//TUxiYhIEzLNwk4zv2ybAilMn7v7N6Mxmuitmg==" }, "webidl-conversions": { "version": "6.1.0", diff --git a/package.json b/package.json index ba5ef47..b25e941 100644 --- a/package.json +++ b/package.json @@ -3,13 +3,12 @@ "version": "0.1.1", "private": true, "dependencies": { - "@datadog/browser-logs": "^2.18.0", - "@datadog/browser-rum": "^2.17.0", + "@datadog/browser-logs": "^3.1.2", "@material-ui/core": "^4.12.3", "@material-ui/icons": "^4.11.2", "@testing-library/jest-dom": "^5.14.1", - "@testing-library/react": "^11.2.7", - "@testing-library/user-event": "^12.8.3", + "@testing-library/react": "^12.0.0", + "@testing-library/user-event": "^13.2.1", "axios": "^0.21.1", "clsx": "^1.1.1", "leaflet": "^1.7.1", @@ -19,7 +18,7 @@ "react-leaflet": "^3.2.1", "react-router-dom": "^5.2.0", "react-scripts": "4.0.3", - "web-vitals": "^0.2.4" + "web-vitals": "^2.1.0" }, "scripts": { "start": "react-scripts start", diff --git a/src/components/App/App.test.js b/src/components/App/App.test.js index b1e5178..b284d56 100644 --- a/src/components/App/App.test.js +++ b/src/components/App/App.test.js @@ -1,6 +1,5 @@ jest.mock("../Contexts/FileUploadContext"); jest.mock("../Contexts/VehicleContext"); -jest.mock("../Contexts/UpdatesContext"); jest.mock("../Contexts/UserContext"); jest.mock("../Contexts/ManifestsContext"); jest.mock("../Contexts/CarUpdatesContext"); @@ -65,26 +64,6 @@ describe("App", () => { await sleepAndCheck("/home", "span.MuiButton-label", "Sign In"); }); - it("Route /vehicle-add unauthenticated", async () => { - await check("/vehicle-add", "span.MuiButton-label", "Sign In"); - }); - - it("Route /carupdate-deploy unauthenticated", async () => { - await check("/carupdate-deploy/1", "span.MuiButton-label", "Sign In"); - }); - - it("Route /carupdate-status unauthenticated", async () => { - await check("/carupdate-status/1", "span.MuiButton-label", "Sign In"); - }); - - it("Route /vehicles unauthenticated", async () => { - await check("/vehicles", "span.MuiButton-label", "Sign In"); - }); - - it("Route /vehicle-status unauthenticated", async () => { - await check("/vehicle-status/FISKER123", "span.MuiButton-label", "Sign In"); - }); - it("Route /datascope unauthenticated", async () => { await sleepAndCheck("/datascope", "span.MuiButton-label", "Sign In"); }); @@ -109,6 +88,25 @@ describe("App", () => { await check("/package-create", "span.MuiButton-label", "Sign In"); }); + it("Route /vehicle-add unauthenticated", async () => { + await check("/vehicle-add", "span.MuiButton-label", "Sign In"); + }); + + it("Route /vehicles unauthenticated", async () => { + await check("/vehicles", "span.MuiButton-label", "Sign In"); + }); + + it("Route /vehicle-status unauthenticated", async () => { + await check("/vehicle-status/FISKER123", "span.MuiButton-label", "Sign In"); + }); + + it("Route /vehicle-status/vin/carupdateid unauthenticated", async () => { + await check("/vehicle-status/1G1FP87S3GN100062/283", "span.MuiButton-label", "Sign In"); + }); + + it("Route /page-not-found unauthenticated", async () => { + await check("/page-not-found", "h1", "Page Not Found"); + }); it("Route / authenticated", async () => { setToken(TEST_AUTH_OBJECT); await sleepAndCheck("/", "h6", "Home"); @@ -119,40 +117,11 @@ describe("App", () => { await sleepAndCheck("/home", "h6", "Home"); }); - it("Route /vehicle-add authenticated", async () => { - setToken(TEST_AUTH_OBJECT); - await check("/vehicle-add", "h6", "Add Vehicle"); - }); - - it("Route /carupdate-status authenticated", async () => { - setToken(TEST_AUTH_OBJECT); - await check("/carupdate-status/1", "h6", "Package Package 1.0"); - }); - - it("Route /vehicles authenticated", async () => { - setToken(TEST_AUTH_OBJECT); - await check("/vehicles", "h6", "Vehicles"); - }); - - it("Route /vehicle-status authenticated", async () => { - setToken(TEST_AUTH_OBJECT); - await check("/vehicle-status/FISKER123", "h6", "Vehicle FISKER123 Details"); - }); - - it("Route /page-not-found unauthenticated", async () => { - await check("/page-not-found", "h1", "Page Not Found"); - }); - it("Route /page-not-found authenticated", async () => { setToken(TEST_AUTH_OBJECT); await check("/page-not-found", "h1", "Page Not Found"); }); - it("Route /carupdate-deploy authenticated", async () => { - setToken(TEST_AUTH_OBJECT); - await check("/carupdate-deploy/1", "h6", "Deploy Package 1.0"); - }); - it("Route /datascope authenticated", async () => { setToken(TEST_AUTH_OBJECT); await sleepAndCheck("/datascope", "h6", "Datascope"); @@ -182,4 +151,24 @@ describe("App", () => { setToken(TEST_AUTH_OBJECT); await check("/package-create", "h6", "Create Deployments"); }); + + it("Route /vehicle-add authenticated", async () => { + setToken(TEST_AUTH_OBJECT); + await check("/vehicle-add", "h6", "Add Vehicle"); + }); + + it("Route /vehicles authenticated", async () => { + setToken(TEST_AUTH_OBJECT); + await check("/vehicles", "h6", "Vehicles"); + }); + + it("Route /vehicle-status authenticated", async () => { + setToken(TEST_AUTH_OBJECT); + await check("/vehicle-status/FISKER123", "h6", "Vehicle FISKER123 Details"); + }); + + it("Route /vehicle-status/vin/carupdateid authenticated", async () => { + setToken(TEST_AUTH_OBJECT); + await sleepAndCheck("/vehicle-status/1G1FP87S3GN100062/283", "h6", "Vehicle 1G1FP87S3GN100062, Update TEST UPDATE"); + }); }); diff --git a/src/components/App/__snapshots__/App.test.js.snap b/src/components/App/__snapshots__/App.test.js.snap index bde050a..e3a6392 100644 --- a/src/components/App/__snapshots__/App.test.js.snap +++ b/src/components/App/__snapshots__/App.test.js.snap @@ -6,10 +6,10 @@ exports[`App Route / authenticated 1`] = ` data-testid="mocked-userprovider" >
Fisker Admin Portal
@@ -239,7 +239,7 @@ exports[`App Route / authenticated 1`] = `
  • `; -exports[`App Route /carupdate-deploy authenticated 1`] = ` +exports[`App Route /datascope authenticated 1`] = `
    +`; + +exports[`App Route /datascope unauthenticated 1`] = ` + +`; + +exports[`App Route /datascope/battery authenticated 1`] = ` +
    +
    +
    +
    +
    +
    +
    + Battery +
    + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    - + +
    -
    +
    + +
    +
    + 1 +
    + + +
    +
    +
    +
    +
    + Cell Voltage + 1
    - +