diff --git a/.cache/Ubisys.json b/.cache/Ubisys.json deleted file mode 100644 index 17ce90f..0000000 --- a/.cache/Ubisys.json +++ /dev/null @@ -1 +0,0 @@ -[{"fileName":"10F2-7B01-0000-0006-01110206-spo-fmd.ota.zigbee","imageType":"7B01","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":17891846},{"fileName":"10F2-7B01-0000-0006-0192020D-spo-fmd.ota1.zigbee","imageType":"7B01","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":26345997},{"fileName":"10F2-7B02-0000-0001-010F0206-spo-fms.ota.zigbee","imageType":"7B02","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":17760774},{"fileName":"10F2-7B02-0000-0001-0192020D-spo-fms.ota1.zigbee","imageType":"7B02","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":26345997},{"fileName":"10F2-7B02-0002-0007-010F0206-spo-fms.ota.zigbee","imageType":"7B02","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":17760774},{"fileName":"10F2-7B02-0002-0007-0192020D-spo-fms.ota1.zigbee","imageType":"7B02","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":26345997},{"fileName":"10F2-7B03-0000-0006-010E0206-spo-fms2.ota.zigbee","imageType":"7B03","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":17695238},{"fileName":"10F2-7B03-0000-0006-0191020D-spo-fms2.ota1.zigbee","imageType":"7B03","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":26280461},{"fileName":"10F2-7B04-0000-0007-01160206-spo-fmsh.ota.zigbee","imageType":"7B04","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":18219526},{"fileName":"10F2-7B04-0000-0007-0191020D-spo-fmsh.ota1.zigbee","imageType":"7B04","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":26280461},{"fileName":"10F2-7B05-0000-0004-010F0206-spo-rms.ota.zigbee","imageType":"7B05","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":17760774},{"fileName":"10F2-7B05-0000-0004-0191020D-spo-rms.ota1.zigbee","imageType":"7B05","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26280461},{"fileName":"10F2-7B06-0000-0004-010E0206-spo-rms2.ota.zigbee","imageType":"7B06","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":17695238},{"fileName":"10F2-7B06-0000-0004-0191020D-spo-rms2.ota1.zigbee","imageType":"7B06","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26280461},{"fileName":"10F2-7B07-0000-0004-01160206-spo-rmsh.ota.zigbee","imageType":"7B07","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":18219526},{"fileName":"10F2-7B07-0000-0004-0191020D-spo-rmsh.ota1.zigbee","imageType":"7B07","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26280461},{"fileName":"10F2-7B08-0000-0004-01110206-spo-rmd.ota.zigbee","imageType":"7B08","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":17891846},{"fileName":"10F2-7B08-0000-0004-0192020D-spo-rmd.ota1.zigbee","imageType":"7B08","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26345997},{"fileName":"10F2-7B09-0000-0004-01090206-spo-fmi4.ota.zigbee","imageType":"7B09","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":17367558},{"fileName":"10F2-7B09-0000-0004-0192020D-spo-fmi4.ota1.zigbee","imageType":"7B09","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26345997},{"fileName":"10F2-7B0A-0000-0005-010A0206-m7b-r0.ota.zigbee","imageType":"7B0A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":17433094},{"fileName":"10F2-7B0A-0000-0005-0193020D-m7b-r0.ota1.zigbee","imageType":"7B0A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":26411533},{"fileName":"10F2-7B0B-0000-0001-01000206-m7b-h10.ota.zigbee","imageType":"7B0B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":16777734},{"fileName":"10F2-7B0B-0000-0001-01900210-m7b-h10.ota1.zigbee","imageType":"7B0B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":26214928},{"fileName":"10F2-7B0C-0000-0000-01000206-m7b-wd1.ota.zigbee","imageType":"7B0C","hardwareVersionMin":0,"hardwareVersionMax":0,"fileVersion":16777734},{"fileName":"10F2-7B0D-0000-0001-01140240-m7b-h1.ota.zigbee","imageType":"7B0D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":18088512},{"fileName":"10F2-7B0D-0000-0001-011C0300-m7b-h1.ota.zigbee","imageType":"7B0D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":18612992},{"fileName":"10F2-7B0D-0000-0001-01200403-m7b-h1.ota.zigbee","imageType":"7B0D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":18875395},{"fileName":"10F2-7B0D-0000-0001-01400422-m7b-h1.ota.zigbee","imageType":"7B0D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":20972578},{"fileName":"10F2-7B0D-0000-0001-01500427-m7b-h1.ota.zigbee","imageType":"7B0D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":22021159},{"fileName":"10F2-7B11-0000-0001-00920210-m7b-ld6.ota.zigbee","imageType":"7B11","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":9568784},{"fileName":"10F2-7B11-0000-0001-00940240-m7b-q95.ota.zigbee","imageType":"7B11","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":9699904},{"fileName":"10F2-7B21-0000-0006-0193020E-spo-fmd.ota.zigbee","imageType":"7B21","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":26411534},{"fileName":"10F2-7B21-0000-0006-0194020E-spo-fmd.ota.zigbee","imageType":"7B21","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":26477070},{"fileName":"10F2-7B22-0000-0001-0193020D-spo-fms-rev0-1.ota.zigbee","imageType":"7B22","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":26411533},{"fileName":"10F2-7B22-0002-0007-0193020D-spo-fms.ota.zigbee","imageType":"7B22","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":26411533},{"fileName":"10F2-7B23-0000-0006-0192020D-spo-fms2.ota.zigbee","imageType":"7B23","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":26345997},{"fileName":"10F2-7B24-0000-0007-0192020D-spo-fmsh.ota.zigbee","imageType":"7B24","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":26345997},{"fileName":"10F2-7B25-0000-0004-0192020D-spo-rms.ota.zigbee","imageType":"7B25","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26345997},{"fileName":"10F2-7B26-0000-0004-0192020D-spo-rms2.ota.zigbee","imageType":"7B26","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26345997},{"fileName":"10F2-7B27-0000-0004-0192020D-spo-rmsh.ota.zigbee","imageType":"7B27","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26345997},{"fileName":"10F2-7B28-0000-0004-0194020E-spo-rmd.ota.zigbee","imageType":"7B28","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26477070},{"fileName":"10F2-7B28-0000-0004-0195020E-spo-rmd.ota.zigbee","imageType":"7B28","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26542606},{"fileName":"10F2-7B29-0000-0004-01930221-spo-fmi4.ota.zigbee","imageType":"7B29","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26411553},{"fileName":"10F2-7B29-0000-0004-01940221-spo-fmi4.ota.zigbee","imageType":"7B29","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":26477089},{"fileName":"10F2-7B2A-0000-0005-02000230-m7b-r0.ota.zigbee","imageType":"7B2A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":33554992},{"fileName":"10F2-7B2A-0000-0005-02010230-m7b-r0.ota.zigbee","imageType":"7B2A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":33620528},{"fileName":"10F2-7B2B-0000-0001-01920210-m7b-h10.ota.zigbee","imageType":"7B2B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":26346000},{"fileName":"10F2-7B2C-0000-0001-01010300-ld6.ota.zigbee","imageType":"7B2C","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":16843520},{"fileName":"10F2-7B2C-0000-0001-01110400-ld6.ota.zigbee","imageType":"7B2C","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":17892352},{"fileName":"10F2-7B2C-0000-0001-01300422-ld6.ota.zigbee","imageType":"7B2C","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":19924002},{"fileName":"10F2-7B2C-0000-0001-01400431-ld6.ota.zigbee","imageType":"7B2C","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":20972593},{"fileName":"10F2-7B2C-0000-0001-0150044D-ld6.ota.zigbee","imageType":"7B2C","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":22021197},{"fileName":"10F2-7B2D-0000-0001-01520430-m7b-h1.ota.zigbee","imageType":"7B2D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":22152240},{"fileName":"10F2-7B2D-0000-0001-0172044D-m7b-h1.ota.zigbee","imageType":"7B2D","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":24249421},{"fileName":"10F2-7B31-0000-0006-02110404-spo-fmd.ota.zigbee","imageType":"7B31","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":34669572},{"fileName":"10F2-7B31-0000-0006-02300422-spo-fmd.ota.zigbee","imageType":"7B31","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":36701218},{"fileName":"10F2-7B31-0000-0006-02400432-spo-fmd.ota.zigbee","imageType":"7B31","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":37749810},{"fileName":"10F2-7B31-0000-0006-02500447-spo-fmd.ota.zigbee","imageType":"7B31","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":38798407},{"fileName":"10F2-7B32-0000-0001-02120404-spo-fms-rev0-1.ota.zigbee","imageType":"7B32","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":34735108},{"fileName":"10F2-7B32-0000-0001-02300422-spo-fms-rev0-1.ota.zigbee","imageType":"7B32","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":36701218},{"fileName":"10F2-7B32-0000-0001-02400432-spo-fms-rev0-1.ota.zigbee","imageType":"7B32","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":37749810},{"fileName":"10F2-7B32-0000-0001-02500447-spo-fms-rev0-1.ota.zigbee","imageType":"7B32","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":38798407},{"fileName":"10F2-7B32-0002-0007-02120404-spo-fms.ota.zigbee","imageType":"7B32","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":34735108},{"fileName":"10F2-7B32-0002-0007-02300422-spo-fms.ota.zigbee","imageType":"7B32","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":36701218},{"fileName":"10F2-7B32-0002-0007-02400432-spo-fms.ota.zigbee","imageType":"7B32","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":37749810},{"fileName":"10F2-7B32-0002-0007-02500447-spo-fms.ota.zigbee","imageType":"7B32","hardwareVersionMin":2,"hardwareVersionMax":7,"fileVersion":38798407},{"fileName":"10F2-7B33-0000-0006-02120404-spo-fms2.ota.zigbee","imageType":"7B33","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":34735108},{"fileName":"10F2-7B33-0000-0006-02300422-spo-fms2.ota.zigbee","imageType":"7B33","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":36701218},{"fileName":"10F2-7B33-0000-0006-02400432-spo-fms2.ota.zigbee","imageType":"7B33","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":37749810},{"fileName":"10F2-7B33-0000-0006-02500447-spo-fms2.ota.zigbee","imageType":"7B33","hardwareVersionMin":0,"hardwareVersionMax":6,"fileVersion":38798407},{"fileName":"10F2-7B34-0000-0007-02100403-spo-fmsh.ota.zigbee","imageType":"7B34","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":34604035},{"fileName":"10F2-7B34-0000-0007-02300422-spo-fmsh.ota.zigbee","imageType":"7B34","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":36701218},{"fileName":"10F2-7B34-0000-0007-02400432-spo-fmsh.ota.zigbee","imageType":"7B34","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":37749810},{"fileName":"10F2-7B34-0000-0007-02500447-spo-fmsh.ota.zigbee","imageType":"7B34","hardwareVersionMin":0,"hardwareVersionMax":7,"fileVersion":38798407},{"fileName":"10F2-7B35-0000-0004-02120404-spo-rms.ota.zigbee","imageType":"7B35","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":34735108},{"fileName":"10F2-7B35-0000-0004-02300422-spo-rms.ota.zigbee","imageType":"7B35","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":36701218},{"fileName":"10F2-7B35-0000-0004-02400432-spo-rms.ota.zigbee","imageType":"7B35","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":37749810},{"fileName":"10F2-7B35-0000-0004-02500447-spo-rms.ota.zigbee","imageType":"7B35","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":38798407},{"fileName":"10F2-7B36-0000-0004-02120404-spo-rms2.ota.zigbee","imageType":"7B36","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":34735108},{"fileName":"10F2-7B36-0000-0004-02300422-spo-rms2.ota.zigbee","imageType":"7B36","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":36701218},{"fileName":"10F2-7B36-0000-0004-02400432-spo-rms2.ota.zigbee","imageType":"7B36","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":37749810},{"fileName":"10F2-7B36-0000-0004-02500447-spo-rms2.ota.zigbee","imageType":"7B36","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":38798407},{"fileName":"10F2-7B37-0000-0004-02100403-spo-rmsh.ota.zigbee","imageType":"7B37","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":34604035},{"fileName":"10F2-7B37-0000-0004-02300422-spo-rmsh.ota.zigbee","imageType":"7B37","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":36701218},{"fileName":"10F2-7B37-0000-0004-02400432-spo-rmsh.ota.zigbee","imageType":"7B37","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":37749810},{"fileName":"10F2-7B37-0000-0004-02500447-spo-rmsh.ota.zigbee","imageType":"7B37","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":38798407},{"fileName":"10F2-7B38-0000-0004-02110404-spo-rmd.ota.zigbee","imageType":"7B38","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":34669572},{"fileName":"10F2-7B38-0000-0004-02300422-spo-rmd.ota.zigbee","imageType":"7B38","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":36701218},{"fileName":"10F2-7B38-0000-0004-02400432-spo-rmd.ota.zigbee","imageType":"7B38","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":37749810},{"fileName":"10F2-7B38-0000-0004-02500447-spo-rmd.ota.zigbee","imageType":"7B38","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":38798407},{"fileName":"10F2-7B39-0000-0004-02120404-spo-fmi4.ota.zigbee","imageType":"7B39","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":34735108},{"fileName":"10F2-7B39-0000-0004-02300422-spo-fmi4.ota.zigbee","imageType":"7B39","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":36701218},{"fileName":"10F2-7B39-0000-0004-02400432-spo-fmi4.ota.zigbee","imageType":"7B39","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":37749810},{"fileName":"10F2-7B39-0000-0004-02500447-spo-fmi4.ota.zigbee","imageType":"7B39","hardwareVersionMin":0,"hardwareVersionMax":4,"fileVersion":38798407},{"fileName":"10F2-7B3A-0000-0005-02100403-m7b-r0.ota.zigbee","imageType":"7B3A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":34604035},{"fileName":"10F2-7B3A-0000-0005-02300422-m7b-r0.ota.zigbee","imageType":"7B3A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":36701218},{"fileName":"10F2-7B3A-0000-0005-02400432-m7b-r0.ota.zigbee","imageType":"7B3A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":37749810},{"fileName":"10F2-7B3A-0000-0005-02500447-m7b-r0.ota.zigbee","imageType":"7B3A","hardwareVersionMin":0,"hardwareVersionMax":5,"fileVersion":38798407},{"fileName":"10F2-7B3B-0000-0001-02000300-m7b-h10.ota.zigbee","imageType":"7B3B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":33555200},{"fileName":"10F2-7B3B-0000-0001-02100403-m7b-h10.ota.zigbee","imageType":"7B3B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":34604035},{"fileName":"10F2-7B3B-0000-0001-02300422-m7b-h10.ota.zigbee","imageType":"7B3B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":36701218},{"fileName":"10F2-7B3B-0000-0001-02400432-m7b-h10.ota.zigbee","imageType":"7B3B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":37749810},{"fileName":"10F2-7B3B-0000-0001-02500447-m7b-h10.ota.zigbee","imageType":"7B3B","hardwareVersionMin":0,"hardwareVersionMax":1,"fileVersion":38798407},{"fileName":"10F2-7B45-0100-0100-02400430-ubisys-s1r-qpg6105.ota.zigbee","imageType":"7B45","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":37749808},{"fileName":"10F2-7B45-0100-0100-0250044D-ubisys-s1r-qpg6105.ota.zigbee","imageType":"7B45","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":38798413},{"fileName":"10F2-7B49-0100-0100-02310422-ubisys-c4-qpg6105.ota.zigbee","imageType":"7B49","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":36766754},{"fileName":"10F2-7B49-0100-0100-02400430-ubisys-c4-qpg6105.ota.zigbee","imageType":"7B49","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":37749808},{"fileName":"10F2-7B49-0100-0100-0250044D-ubisys-c4-qpg6105.ota.zigbee","imageType":"7B49","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":38798413},{"fileName":"10F2-7B4A-0100-0100-02300422-ubisys-r0-qpg6105.ota.zigbee","imageType":"7B4A","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":36701218},{"fileName":"10F2-7B4A-0100-0100-02400430-ubisys-r0-qpg6105.ota.zigbee","imageType":"7B4A","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":37749808},{"fileName":"10F2-7B4A-0100-0100-0250044D-ubisys-r0-qpg6105.ota.zigbee","imageType":"7B4A","hardwareVersionMin":256,"hardwareVersionMax":256,"fileVersion":38798413}] \ No newline at end of file diff --git a/src/autodl/ubisys.ts b/src/autodl/ubisys.ts index db9ca04..58ff73f 100644 --- a/src/autodl/ubisys.ts +++ b/src/autodl/ubisys.ts @@ -20,7 +20,10 @@ const FIRMWARE_HTML_URL = 'http://fwu.ubisys.de/smarthome/OTA/release/index'; function groupByImageType(arr: Image[]): GroupedImages { return arr.reduce((acc, cur) => { - acc[cur.imageType] = [...(acc[cur.imageType] || []), cur]; + acc[cur.imageType + (cur.hardwareVersionMax ? cur.hardwareVersionMax : '')] = [ + ...(acc[cur.imageType + (cur.hardwareVersionMax ? cur.hardwareVersionMax : '')] || []), + cur, + ]; return acc; }, {}); } @@ -76,7 +79,6 @@ export async function download(): Promise { for (const imageType in imagesByType) { const image = getLatestImage(imagesByType[imageType], sortByFileVersion); - if (!image) { console.error(`${LOG_PREFIX} No image found for ${imageType}.`); continue; diff --git a/src/common.ts b/src/common.ts index c10528e..5fdc03d 100644 --- a/src/common.ts +++ b/src/common.ts @@ -154,6 +154,8 @@ export function findMatchImage( i.manufacturerCode === image.manufacturerCode && extraMetas.minFileVersion === i.minFileVersion && extraMetas.maxFileVersion === i.maxFileVersion && + extraMetas.hardwareVersionMin === i.hardwareVersionMin && + extraMetas.hardwareVersionMax === i.hardwareVersionMax && i.modelId === extraMetas.modelId && (!(i.manufacturerName && extraMetas.manufacturerName) || primitivesArrayEquals(i.manufacturerName, extraMetas.manufacturerName)), ); diff --git a/tests/data.test.ts b/tests/data.test.ts index 444b3be..1271c58 100644 --- a/tests/data.test.ts +++ b/tests/data.test.ts @@ -93,6 +93,14 @@ export const IMAGE_V13_1_METAS = { sha512: '4d7ab47dcb24e478e0abb35e691222b7691e77ed5a56de3f9c82e8682730649b1a154110b7207d4391c32eae53a869e20878e880fc153dbe046690b870be8486', otaHeaderString: 'OM15081-RTR-JN5189-0000000000000', }; + +/** + * Use when V14 has a hardware constraint set. + */ +export const IMAGE_V13_1_METAS_MAIN = { + ...IMAGE_V13_1_METAS, + url: `${common.BASE_REPO_URL}${common.REPO_BRANCH}/images/${IMAGES_TEST_DIR}/${IMAGE_V13_1}`, +}; /** * - otaUpgradeFileIdentifier: , * - otaHeaderVersion: 256, diff --git a/tests/ghw_check_ota_pr.test.ts b/tests/ghw_check_ota_pr.test.ts index a12b0ea..0bb14d7 100644 --- a/tests/ghw_check_ota_pr.test.ts +++ b/tests/ghw_check_ota_pr.test.ts @@ -17,6 +17,7 @@ import { IMAGE_V12_1_METAS, IMAGE_V13_1, IMAGE_V13_1_METAS, + IMAGE_V13_1_METAS_MAIN, IMAGE_V14_1, IMAGE_V14_1_METAS, IMAGE_V14_2, @@ -553,12 +554,13 @@ Text after end tag`); }); it('success with multiple files and specific extra metas', async () => { - filePaths = [useImage(IMAGE_V13_1), useImage(IMAGE_V14_1)]; + filePaths = [useImage(IMAGE_V13_1), useImage(IMAGE_V14_1), useImage(IMAGE_V12_1)]; const newContext = withBody(`Text before start tag \`\`\`json [ {"fileName": "${IMAGE_V14_1}", "manufacturerName": ["lixee"], "hardwareVersionMin": 2}, - {"fileName": "${IMAGE_V13_1}", "manufacturerName": ["lixee"]} + {"fileName": "${IMAGE_V13_1}", "manufacturerName": ["lixee"]}, + {"fileName": "${IMAGE_V12_1}", "manufacturerName": ["lixee"]} ] \`\`\` Text after end tag`); @@ -569,18 +571,19 @@ Text after end tag`); expect(readManifestSpy).toHaveBeenCalledWith(common.BASE_INDEX_MANIFEST_FILENAME); expect(readManifestSpy).toHaveBeenCalledWith(common.PREV_INDEX_MANIFEST_FILENAME); expect(addImageToBaseSpy).toHaveBeenCalledTimes(2); - expect(addImageToPrevSpy).toHaveBeenCalledTimes(0); + expect(addImageToPrevSpy).toHaveBeenCalledTimes(1); expect(writeManifestSpy).toHaveBeenCalledTimes(2); expect(writeManifestSpy).toHaveBeenCalledWith(common.BASE_INDEX_MANIFEST_FILENAME, [ + withExtraMetas(IMAGE_V13_1_METAS_MAIN, {manufacturerName: ['lixee']}), withExtraMetas(IMAGE_V14_1_METAS, {manufacturerName: ['lixee'], hardwareVersionMin: 2}), ]); expect(writeManifestSpy).toHaveBeenCalledWith(common.PREV_INDEX_MANIFEST_FILENAME, [ - withExtraMetas(IMAGE_V13_1_METAS, {manufacturerName: ['lixee']}), + withExtraMetas(IMAGE_V12_1_METAS, {manufacturerName: ['lixee']}), ]); }); it('success with multiple files and specific extra metas, ignore without fileName', async () => { - filePaths = [useImage(IMAGE_V13_1), useImage(IMAGE_V14_1)]; + filePaths = [useImage(IMAGE_V12_1), useImage(IMAGE_V13_1), useImage(IMAGE_V14_1)]; const newContext = withBody(`Text before start tag \`\`\`json [ @@ -595,12 +598,13 @@ Text after end tag`); expect(readManifestSpy).toHaveBeenCalledWith(common.BASE_INDEX_MANIFEST_FILENAME); expect(readManifestSpy).toHaveBeenCalledWith(common.PREV_INDEX_MANIFEST_FILENAME); - expect(addImageToBaseSpy).toHaveBeenCalledTimes(2); + expect(addImageToBaseSpy).toHaveBeenCalledTimes(3); expect(addImageToPrevSpy).toHaveBeenCalledTimes(0); expect(writeManifestSpy).toHaveBeenCalledTimes(2); expect(writeManifestSpy).toHaveBeenCalledWith(common.BASE_INDEX_MANIFEST_FILENAME, [ + IMAGE_V13_1_METAS_MAIN, withExtraMetas(IMAGE_V14_1_METAS, {manufacturerName: ['lixee'], hardwareVersionMin: 2}), ]); - expect(writeManifestSpy).toHaveBeenCalledWith(common.PREV_INDEX_MANIFEST_FILENAME, [IMAGE_V13_1_METAS]); + expect(writeManifestSpy).toHaveBeenCalledWith(common.PREV_INDEX_MANIFEST_FILENAME, [IMAGE_V12_1_METAS]); }); });