Files
ota-admin-portal/src/services/__mocks__/vehiclesAPI.js
2024-07-18 13:09:10 -04:00

239 lines
6.0 KiB
JavaScript

const filters = [
{
can_id: "123-456",
interval: 789
},
{
can_id: "1",
interval: 1000
},
{
can_id: "1000",
interval: 1
}
]
const data = [
{
vin: "3C4PDCBG0ET127145",
year: 2021,
model: "Ocean",
trim: "Basic",
ecu_list: "ECUA 2.0.0, ECUB 2.1.1",
log_level: "info",
canbus: { enabled: true, data_logger_enabled: true, max_mem_buffer_size: 1, max_disk_buffer_size: 2, filters: filters },
idps_enabled: true,
iccid: "8988300000000000000",
},
{ vin: "1G1FP87S3GN100062" },
{ vin: "1HGCG325XYA062256", year: 2021 },
{ vin: "1J4GZ78YXWC160024", year: 2021, model: "Ocean" },
{ vin: "2C3CCAAG8CH222800", model: "Ocean", trim: "Basic" },
{ vin: "KNADM4A39C6028108", year: 2021, model: "Ocean", trim: "Basic" },
{ vin: "1G11C5SL9FF153507", year: 2021, model: "Ocean", trim: "Basic" },
];
const ecusData = [
{
created: "2021-07-14T20:09:40.98187Z",
ecu: "ECUA",
hw_version: "HWVERSION",
sw_version: "SWVERSION",
vendor: "VENDOR",
supplier_sw_version: "SUPPLIER_SW_VERSION",
serial_number: "SERIAL_NUMBER",
boot_loader_version: "BOOT_LOADER",
code_data_string: "CONFIG",
fingerprint: "FINGERPRINT",
updated: "2021-07-14T20:09:40.98187Z",
},
{
code_data_string: "CONFIG",
created: "2021-07-14T20:09:40.98187Z",
ecu: "ECUB",
hw_version: "HWVERSION",
sw_version: "SWVERSION",
updated: "2021-07-14T20:09:40.98187Z",
},
];
const signals = {
data: [
{
timestamp: "2021-07-14T20:09:40.98187Z",
name: "signal",
value: 123
},
],
};
const trexLogs = {
RealOffset: 0,
blobSize: 62072819,
bytesRead: 29874,
data: [
{
"level": "info",
"timestamp": "2023-Feb-15 23:44:36.934746",
"line_number": 948,
"filename": "ota_service.cpp",
"msg": "ota::cleanup() Deleting directory \"/fisker/ota/1534\"",
"received_timestamp": "2023-Feb-15 23:44:37.203102197"
},
{
"level": "debug",
"timestamp": "2023-Feb-15 23:44:36.970715",
"line_number": 992,
"filename": "ota_service.cpp",
"msg": "ota::end() manifest process aborted with error state",
"received_timestamp": "2023-Feb-15 23:44:37.203197597"
},
{
"level": "debug",
"timestamp": "2023-Feb-15 23:44:36.971745",
"line_number": 91,
"filename": "vom_impl.cpp",
"msg": "vom::send_ota_result_fb() Sending 0x4F9->tbox_ota_res_fb (==OTA_error)",
"received_timestamp": "2023-Feb-15 23:44:37.203249997"
}
]
}
const vehiclesAPI = {
addTags: async (vins, tags) => {
return {
vins,
tags,
};
},
addVehicle: async (vehicle) => {
data.push(vehicle);
return vehicle;
},
deleteVehicle: async (vin) => {
const index = data.findIndex(element => element.vin === vin);
if (index >= 0) data.splice(index, 1);
return vin;
},
getConnections: async (vins) => {
const result = {};
vins.VINs.forEach((vin) => {
result[vin] = true;
result["2:" + vin] = false;
});
return result;
},
getECUs: async () => {
return { data: ecusData, total: ecusData.length };
},
getModels: async () => {
return {
data: ["Ocean", "Pear"],
};
},
getLocations: jest
.fn()
.mockResolvedValue(
{ data: [{ altitude: 5, longitude: 10, latitude: 15, vin: "TESTVIN123" }] },
),
getLocationsVehiclePaths: async () => {
return {
'3FAFP13P31R199430': [[16.891136999999986, 26.832352999999955], [56.891136999999986, 66.832352999999955], [26.891136999999986, 36.832352999999955]],
'3FAFP13P71R199060': [[36.891136999999986, 46.832352999999955], [76.891136999999986, 16.832352999999955]],
'3FAFP13P61R199390': [],
};
},
getVehicle: async (vin) => {
const index = data.findIndex(element => element.vin === vin);
return data[index];
},
getVehicles: async () => {
return { data };
},
getFleets: async (vin) => { return { data: ["fleet1", "fleet2"] } },
getYears: async () => {
return {
data: [2021, 2022],
};
},
sendCommand: async (vin, command) => {
return {
vin,
command,
};
},
updateVehicle: async (vin, vehicle) => {
const index = data.findIndex(element => element.vin === vin);
if (index >= 0) data[index] = vehicle;
return vehicle;
},
updateConfig: async (vin, vehicle) => {
return { message: "Sent" };
},
getCANSignals: async (vin, vehicle) => {
return signals;
},
getTRexLogs: async (vin, search, date, offset, count, direction, token) => {
return trexLogs;
},
getVersionLog: async (vin) => ({
"data": [
{
"id": 1,
"vin": "${vin}",
"version_source": "TREX",
"version": "0.9.56",
"created_at": "2023-01-13T02:11:33.327214Z"
},
{
"id": 2,
"vin": "${vin}",
"version_source": "DBC",
"version": "386c18977a1be3cda60c953e5902c680dbe82b89523f2527e80cd9db863db991",
"created_at": "2023-01-13T02:11:33.330932Z"
}
],
"total": 2
}),
sendDiagnosticCommand: async (search) => ({
Message: `remote diagnostic command sent to ${search.vins.length} vehicles`
}),
getAllFlashpacks: async (token) => {
return {
data: ["41.14", "43.19"],
};
},
getFlashpackECUMappings: async (model, year, flashpack, token) => {
return {
"data": [
{
"flashpack": "41.14",
"car_model": "Ocean",
"car_year": 2023,
"car_ecu_name": "ADAS",
"car_ecu_version": "ADASVersion"
},
{
"flashpack": "41.14",
"car_model": "Ocean",
"car_year": 2023, "car_ecu_name": "ACUN",
"car_ecu_version": "ACUNVersion"
}
],
};
},
addFlashpackECUMapping: async (data, token) => {
return { message: "Created" };
},
deleteFlashpackECUMapping: async (data, token) => {
return { message: "Deleted" };
},
flashpackVersionBulkUpdate: async (data, token) => {
return { message: "Updated" }
}
};
export default vehiclesAPI;