diff --git a/src/components/App/__snapshots__/App.test.js.snap b/src/components/App/__snapshots__/App.test.js.snap
index ad4b43a..637ad6b 100644
--- a/src/components/App/__snapshots__/App.test.js.snap
+++ b/src/components/App/__snapshots__/App.test.js.snap
@@ -3329,7 +3329,6 @@ exports[`App Route /packages authenticated 1`] = `
/>
-
@@ -3460,6 +3459,7 @@ exports[`App Route /packages authenticated 1`] = `
+
diff --git a/src/components/Contexts/CarUpdatesContext.jsx b/src/components/Contexts/CarUpdatesContext.jsx
index 1ec447b..3e37bd8 100644
--- a/src/components/Contexts/CarUpdatesContext.jsx
+++ b/src/components/Contexts/CarUpdatesContext.jsx
@@ -76,10 +76,11 @@ export const CarUpdatesProvider = ({ children }) => {
result = await api.getCarUpdates(search, token);
if (result.error)
throw new Error(`Get car updates error. ${result.message}`);
- result.data.forEach((item) => {
- item.progress = 0;
+ result.data.forEach((item, i) => {
item.msg = item.status;
- applyProgressStatus(item, item);
+ item.progress = 0;
+ applyProgressStatus(item);
+ result.data[i] = Object.assign(result.data[i], item);
});
setCarUpdates(result.data);
if (search && search.offset === 0 && result.total) {
@@ -119,28 +120,27 @@ export const CarUpdatesProvider = ({ children }) => {
return 0;
};
- const applyProgressStatus = (item, status) => {
- if (validateStatusMessage(status)) {
- if (status.msg === "downloading") {
- item.progress = getDownloadProgress(status);
+ const applyProgressStatus = (item) => {
+ if (validateStatusMessage(item)) {
+ if (item.msg === "downloading") {
+ item.progress = getDownloadProgress(item);
item.status = `${item.ecu || ""} downloading ${item.progress}%`.trim();
return;
- } else if (status.msg === "package_download_complete") {
+ } else if (item.msg === "package_download_complete") {
item.progress = 100;
- item.status = "download complete";
+ item.status = `${item.ecu || ""} download complete`.trim();
return;
- } else if (status.msg === "installing") {
- item.progress = getInstallProgress(status);
+ } else if (item.msg === "installing") {
+ item.progress = getInstallProgress(item);
item.status = `${item.ecu || ""} installing ${item.progress}%`.trim();
return;
- } else if (status.msg === "package_install_complete") {
+ } else if (item.msg === "package_install_complete") {
item.progress = 100;
- item.status = "install complete";
+ item.status = `${item.ecu || ""} install complete`.trim();
return;
}
}
delete item.progress;
- item.status = status.msg;
};
const applyProgressStatuses = (statuses) => {
diff --git a/src/components/Contexts/VehicleContext.jsx b/src/components/Contexts/VehicleContext.jsx
index 82d9c2f..657dbec 100644
--- a/src/components/Contexts/VehicleContext.jsx
+++ b/src/components/Contexts/VehicleContext.jsx
@@ -45,6 +45,7 @@ export const VehicleProvider = ({ children }) => {
}
cars.forEach((car) => {
car.connected = result[car.vin] || false;
+ car.connectedHMI = result[`2:${car.vin}`] || false;
});
} catch (e) {
logger.error(e.stack);
diff --git a/src/components/Contexts/VehicleContext.test.jsx b/src/components/Contexts/VehicleContext.test.jsx
index b97cf25..cda9d11 100644
--- a/src/components/Contexts/VehicleContext.test.jsx
+++ b/src/components/Contexts/VehicleContext.test.jsx
@@ -13,7 +13,7 @@ import { StatusProvider, useStatusContext } from "./StatusContext";
const checkVehicleResult = (error, busy, vehicle) => {
checkBaseResults(error, busy);
expect(screen.getByTestId("vehicle").innerHTML).toEqual(vehicle);
-}
+};
const checkVehiclesResult = (error, busy, vehicles) => {
checkBaseResults(error, busy);
@@ -195,12 +195,22 @@ describe("VehicleContext", () => {
<>
{message}
{busy.toString()}
-