mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-11-04 13:33:56 +08:00
🍉 Sync 2026-09-25 18:00:12
This commit is contained in:
1 parent
7c17dda4d0
commit
2ee65a261e
135 files changed
+5726
-7799
No files matched your search
@@ -2,10 +2,10 @@
|
||||
"simple_icons": "https://github.com/simple-icons/simple-icons/tree/11.15.0",
|
||||
"macdb": {
|
||||
"url": "https://github.com/WH-2099/macdb",
|
||||
"sha256": "dab68f6728825b5e6e894e537ffbc82d2d387eb2ba3d8dd313962dcef8076979"
|
||||
"sha256": "98c197dd8a59c30b89866de97c1e8833fcb4456c753693c447f7403c5d753eb0"
|
||||
},
|
||||
"database": "vendors-451e5311befc.json",
|
||||
"assignments": 8637,
|
||||
"database": "vendors-d337209f8c00.json",
|
||||
"assignments": 8712,
|
||||
"supplemental_icons": {
|
||||
"midea": {
|
||||
"source": "https://commons.wikimedia.org/wiki/File:Midea.svg",
|
||||
@@ -24,6 +24,12 @@
|
||||
"sha256": "49693ef6522f58af4e059afe18c1fb3ddc8e6a5b15ac724d6a7493f47d84d849",
|
||||
"author": "Koman90",
|
||||
"license": "Public domain simple shape/text logo; trademark retained"
|
||||
},
|
||||
"haier": {
|
||||
"source": "https://commons.wikimedia.org/wiki/File:Haier_logo.svg",
|
||||
"sha256": "d71f652fdfb405198761e118e5c4b84fa1de76d9696bb1c13b4980c76ecb6be4",
|
||||
"author": "Haier",
|
||||
"license": "Public domain simple shape/text logo; trademark retained"
|
||||
}
|
||||
},
|
||||
"aliases": {
|
||||
@@ -88,6 +94,18 @@
|
||||
"google": [
|
||||
"Google, Inc."
|
||||
],
|
||||
"haier": [
|
||||
"Beijing Haier IC Design Co.,Ltd",
|
||||
"Haier",
|
||||
"Haier Group Technologies Ltd",
|
||||
"Haier cloud Health Technology (Qingdao) Co., Ltd",
|
||||
"QING DAO HAIER TELECOM CO.,LTD.",
|
||||
"Qingdao Haier Intelligent Home Appliance Technology Co.,Ltd",
|
||||
"Qingdao Haier Multimedia Limited. ",
|
||||
"Qingdao Haier Technology Co.,Ltd",
|
||||
"Qingdao Haier Technology Co.Ltd",
|
||||
"Qingdao HaierTechnology Co.,Ltd"
|
||||
],
|
||||
"honor": [
|
||||
"Honor Device Co., Ltd."
|
||||
],
|
||||
|
||||
@@ -16,5 +16,11 @@
|
||||
"sha256": "49693ef6522f58af4e059afe18c1fb3ddc8e6a5b15ac724d6a7493f47d84d849",
|
||||
"author": "Koman90",
|
||||
"license": "Public domain simple shape/text logo; trademark retained"
|
||||
},
|
||||
"haier": {
|
||||
"source": "https://commons.wikimedia.org/wiki/File:Haier_logo.svg",
|
||||
"sha256": "d71f652fdfb405198761e118e5c4b84fa1de76d9696bb1c13b4980c76ecb6be4",
|
||||
"author": "Haier",
|
||||
"license": "Public domain simple shape/text logo; trademark retained"
|
||||
}
|
||||
}
|
||||
@@ -30,6 +30,17 @@ class Aliases(unittest.TestCase):
|
||||
self.assertEqual(self.brand('TCL King Electrical Appliances(Huizhou)Co.,Ltd'), 'tcl')
|
||||
self.assertEqual(self.brand('Hui Zhou Gaoshengda Technology Co.,LTD'), 'tcl')
|
||||
|
||||
def test_haier(self):
|
||||
for name in ['Qingdao Haier Technology Co.,Ltd',
|
||||
'Qingdao HaierTechnology Co.,Ltd',
|
||||
'QING DAO HAIER TELECOM CO.,LTD.', 'Haier']:
|
||||
self.assertEqual(self.brand(name), 'haier')
|
||||
self.assertIsNone(self.brand('Unrelated Haier Module Supplier'))
|
||||
data = json.loads(next((ROOT / 'htdocs/luci-static/resources/oui').glob('vendors-*.json')).read_text())
|
||||
mac = '34:29:EF:89:41:3C'.replace(':', '')
|
||||
self.assertEqual(data['vendors'][data['prefixes'][mac[:6]]][0], 'haier')
|
||||
self.assertEqual(data['vendors'][data['prefixes']['0439CB']][0], 'haier')
|
||||
|
||||
def test_vmware(self):
|
||||
self.assertEqual(self.brand('VMware, Inc.'), 'vmware')
|
||||
self.assertIsNone(self.brand('VMware Unrelated Devices'))
|
||||
|
||||
@@ -26,6 +26,18 @@ function setup(fail = false) {
|
||||
for (const mac of [null, '', '02:11:22:00:00:00', '01:11:22:00:00:00', 'FF:FF:FF:FF:FF:FF', '001122', '00:11-22:33:44:55'])
|
||||
t.oui.decorate(t.node(), mac);
|
||||
assert.equal(t.requests(), 0, 'invalid or private MACs must not fetch data');
|
||||
for (let octet = 0; octet < 256; octet++) {
|
||||
const mac = octet.toString(16).padStart(2, '0') + ':11:22:33:44:55';
|
||||
if (!(octet & 3)) continue;
|
||||
const n = t.node(); t.oui.decorate(n, mac);
|
||||
assert(n.children[0].src.endsWith((octet & 3) === 2 ? '/phone.svg' : '/computer.svg'));
|
||||
}
|
||||
for (const mac of ['a6-11-22-33-44-55', 'AE1122334455', 'BA:71:BE:00:00:01']) {
|
||||
const n = t.node(); t.oui.decorate(n, mac, true);
|
||||
assert(n.children[0].src.endsWith('/phone.svg'), 'private MAC must take precedence over fnOS');
|
||||
n.children[0].onerror(); assert(n.children[0].src.endsWith('/computer.svg'));
|
||||
}
|
||||
assert.equal(t.requests(), 0, 'phone icons must not fetch the OUI database');
|
||||
const cases = [['00:11:22:00:00:00','ASUS'],['00-11-22-35-00-00','Apple'],['001122334455','ASUS'],['00:11:22:40:00:00',null],['00:AB:CD:00:00:00',null]];
|
||||
const nodes = cases.map(([mac]) => { const n=t.node(); t.oui.decorate(n,mac); return n; });
|
||||
await Promise.resolve(); await Promise.resolve();
|
||||
@@ -42,7 +54,7 @@ function setup(fail = false) {
|
||||
assert.equal(other.children[0].title,'Unknown vendor','OEM overrides must not affect other devices in the same OUI');
|
||||
assert.equal(unsafe.children[0].title,'Unknown vendor');
|
||||
const fnos=t.node();
|
||||
t.oui.decorate(fnos,'BA:71:BE:00:00:01',true);
|
||||
t.oui.decorate(fnos,'B8:71:BE:00:00:01',true);
|
||||
assert.equal(fnos.children[0].title,'fnOS / FygoOS');
|
||||
assert(fnos.children[0].src.endsWith('/fnos.svg'));
|
||||
const overridden=t.node();
|
||||
@@ -71,7 +83,7 @@ function setup(fail = false) {
|
||||
enabled = true;
|
||||
const host = view.renderHostname('<img src=x>', '00:11:22:00:00:00');
|
||||
assert.equal(host.children[0].text, '<img src=x>');
|
||||
assert.equal(scripts[0].src, '/luci-static/resources/oui/oui.js?v=8');
|
||||
assert.equal(scripts[0].src, '/luci-static/resources/oui/oui.js?v=10');
|
||||
view.renderHostname('host2', '00:11:22:00:00:01');
|
||||
assert.equal(scripts.length, 1);
|
||||
console.log('OUI runtime and optional integration checks passed');
|
||||
|
||||
@@ -295,5 +295,13 @@
|
||||
"patterns": [
|
||||
"^vmware(?: inc)?$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"slug": "haier",
|
||||
"name": "Haier / \u6d77\u5c14",
|
||||
"patterns": [
|
||||
"^(?:(?:qing ?dao|beijing) )?haier(?: |technology|$)"
|
||||
],
|
||||
"supplemental": true
|
||||
}
|
||||
]
|
||||
Reference in new issue
Block a user