Merge branch 'release/0.9.0'
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import React, { useContext, useState } from "react";
|
||||
import api from "../../services/fleetsAPI";
|
||||
import vehiclesAPI from "../../services/vehiclesAPI";
|
||||
import { validateCANID, validateFilter, validateVIN } from "../../utils/validationSupplier";
|
||||
|
||||
const FleetContext = React.createContext();
|
||||
@@ -112,7 +113,22 @@ export const FleetProvider = ({ children }) => {
|
||||
throw new Error(`Get fleet vehicles error. ${result.message}`);
|
||||
}
|
||||
|
||||
setFleetVehicles(result.data)
|
||||
const connectionsResult = await vehiclesAPI.getConnections(result.data, token)
|
||||
if (result.error) {
|
||||
setFleetVehicles([])
|
||||
throw new Error(`Get vehicles connections error. ${result.message}`);
|
||||
}
|
||||
|
||||
var cars = []
|
||||
result.data.forEach((vin) => {
|
||||
cars.push({
|
||||
vin: vin,
|
||||
connected: connectionsResult[vin] || false,
|
||||
connectedHMI: connectionsResult[`2:${vin}`] || false
|
||||
})
|
||||
})
|
||||
|
||||
setFleetVehicles(cars)
|
||||
if (result.total) {
|
||||
setTotalFleetVehicles(result.total);
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
jest.mock("../../services/fleetsAPI");
|
||||
jest.mock("../../services/vehiclesAPI");
|
||||
|
||||
import {
|
||||
render,
|
||||
@@ -800,9 +801,21 @@ const expectedFleetsData = [
|
||||
];
|
||||
|
||||
const expectedFleetVehiclesData = [
|
||||
"USWESTVIN12345678",
|
||||
"USWESTVIN12345679",
|
||||
"USWESTVIN12345670",
|
||||
{
|
||||
vin: "USWESTVIN12345678",
|
||||
connected: true,
|
||||
connectedHMI: false,
|
||||
},
|
||||
{
|
||||
vin: "USWESTVIN12345679",
|
||||
connected: true,
|
||||
connectedHMI: false,
|
||||
},
|
||||
{
|
||||
vin: "USWESTVIN12345670",
|
||||
connected: true,
|
||||
connectedHMI: false,
|
||||
},
|
||||
];
|
||||
|
||||
const expectedFleetCANFiltersData = [
|
||||
|
||||
@@ -71,7 +71,7 @@ export const VehicleProvider = ({ children }) => {
|
||||
|
||||
const result = await api.addTags(vins, tags, token)
|
||||
if (result.error)
|
||||
throw new Error(`Add tags error. ${result.message}`);
|
||||
throw new Error(`Add tags error. ${result.message}`);
|
||||
} finally {
|
||||
setBusy(false)
|
||||
}
|
||||
@@ -105,7 +105,7 @@ export const VehicleProvider = ({ children }) => {
|
||||
setBusy(true);
|
||||
const result = await api.getLocations(token);
|
||||
if (result.error)
|
||||
throw new Error(`Get locations vehicle paths error. ${result.message}`);
|
||||
throw new Error(`Get locations error. ${result.message}`);
|
||||
return result;
|
||||
} finally {
|
||||
setBusy(false);
|
||||
@@ -202,6 +202,18 @@ export const VehicleProvider = ({ children }) => {
|
||||
}
|
||||
};
|
||||
|
||||
const sendDiagnosticCommand = async (vins, command, token) => {
|
||||
try {
|
||||
setBusy(true);
|
||||
const result = await api.sendDiagnosticCommand(vins, command, token);
|
||||
if (result.error)
|
||||
throw new Error(`Send diagnostic command error. ${result.message}`);
|
||||
return result;
|
||||
} finally {
|
||||
setBusy(false);
|
||||
}
|
||||
};
|
||||
|
||||
const updateVehicle = async (vin, v, token) => {
|
||||
try {
|
||||
setBusy(true);
|
||||
@@ -313,6 +325,7 @@ export const VehicleProvider = ({ children }) => {
|
||||
getVehicle,
|
||||
getVehicles,
|
||||
sendCommand,
|
||||
sendDiagnosticCommand,
|
||||
updateVehicle,
|
||||
getFleets,
|
||||
getVersionLog,
|
||||
|
||||
@@ -62,7 +62,26 @@ export const useFleetContext = () => ({
|
||||
|
||||
fleetVehicles,
|
||||
totalFleetVehicles,
|
||||
getFleetVehicles: jest.fn(),
|
||||
getFleetVehicles: jest.fn().mockImplementation((name, search, _token) => {
|
||||
const result = [
|
||||
{
|
||||
vin: "USWESTVIN12345678",
|
||||
connected: false,
|
||||
connectedHMI: false
|
||||
},
|
||||
{
|
||||
vin: "USWESTVIN12345679",
|
||||
connected: true,
|
||||
connectedHMI: true
|
||||
},
|
||||
{
|
||||
vin: "USWESTVIN12345670",
|
||||
connected: false,
|
||||
connectedHMI: false
|
||||
},
|
||||
];
|
||||
return Promise.resolve(result);
|
||||
}),
|
||||
addFleetVehicles: jest.fn(),
|
||||
deleteFleetVehicle: jest.fn(),
|
||||
|
||||
|
||||
@@ -78,6 +78,9 @@ let vehicleState = {
|
||||
vehicle_speed: {
|
||||
speed: 77.7,
|
||||
},
|
||||
gear: {
|
||||
in_park: true,
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@@ -109,10 +112,14 @@ export const useVehicleContext = () => ({
|
||||
addVehicle: jest.fn(),
|
||||
getConnections: jest
|
||||
.fn().mockImplementation((vins, _token) => {
|
||||
const result = {};
|
||||
vins.forEach((vin) => {
|
||||
result[vin] = true;
|
||||
});
|
||||
const result = {
|
||||
"USWESTVIN12345678": true,
|
||||
"2:USWESTVIN12345678": false,
|
||||
"USWESTVIN12345679": true,
|
||||
"2:USWESTVIN12345679": false,
|
||||
"USWESTVIN12345670": true,
|
||||
"2:USWESTVIN12345670": false,
|
||||
};
|
||||
return Promise.resolve(result);
|
||||
}),
|
||||
getECUs: jest.fn(() => {
|
||||
@@ -146,9 +153,9 @@ export const useVehicleContext = () => ({
|
||||
.fn()
|
||||
.mockResolvedValue({
|
||||
// tests only pass without mocking the data here
|
||||
// '3FAFP13P71R199267': [],
|
||||
// '3FAFP13P31R199430': [[16.891136999999986, 26.832352999999955], [56.891136999999986, 66.832352999999955], [26.891136999999986, 36.832352999999955]],
|
||||
// '3FAFP13P71R199060': [[36.891136999999986, 46.832352999999955], [76.891136999999986, 16.832352999999955]],
|
||||
// '3FAFP13P61R199390': [],
|
||||
}),
|
||||
getModels: jest.fn(() => {
|
||||
models = ["Ocean", "PEAR"];
|
||||
|
||||
Reference in New Issue
Block a user