mirror of
https://github.com/movixcorp/MovixOpenSource.git
synced 2026-07-30 03:59:13 +00:00
- Corrige l’extraction Uqload dans les extensions Chrome/Firefox et le userscript - Ajoute un proxy média local Android avec streaming binaire - Corrige Vidzy, Fsvid, Bravo et les autres sources protégées sur mobile - Préserve correctement les en-têtes Origin, Referer et Range - Ajoute la réécriture locale des playlists HLS et de leurs segments - Corrige la reprise de l’installation après l’autorisation des sources inconnues - Corrige la détection d’une installation annulée ou terminée - Passe l’application en version 2.5.4, build 13 - Rend cette mise à jour obligatoire et regroupe toutes les notes de version - Régénère le userscript mobile et l’APK Android signé - Ajoute des tests de régression Kotlin Co-authored-by: GPT-5.6 Sol <codex@openai.com>
36 lines
1.3 KiB
JavaScript
36 lines
1.3 KiB
JavaScript
import assert from 'node:assert/strict';
|
|
import { readFile } from 'node:fs/promises';
|
|
import { test } from 'node:test';
|
|
|
|
const root = new URL('../', import.meta.url);
|
|
|
|
async function read(relativePath) {
|
|
return readFile(new URL(relativePath, root), 'utf8');
|
|
}
|
|
|
|
test('TypeScript bridge exposes the GM_OPEN_MEDIA_PROXY native contract', async () => {
|
|
const bridge = await read('src/services/bridge.ts');
|
|
|
|
assert.match(bridge, /GM_OPEN_MEDIA_PROXY/);
|
|
assert.match(bridge, /NativeModules\.MediaProxy/);
|
|
assert.match(bridge, /\.open\s*\(\s*req\.url/);
|
|
assert.match(bridge, /case\s+['"]GM_FETCH['"]/);
|
|
});
|
|
|
|
test('Android registers the MediaProxy native package', async () => {
|
|
const application = await read(
|
|
'android/app/src/main/java/com/movix/app/MainApplication.kt',
|
|
);
|
|
const packageSource = await read(
|
|
'android/app/src/main/java/com/movix/app/proxy/MediaProxyPackage.kt',
|
|
);
|
|
const moduleSource = await read(
|
|
'android/app/src/main/java/com/movix/app/proxy/MediaProxyModule.kt',
|
|
);
|
|
|
|
assert.match(application, /add\(MediaProxyPackage\(\)\)/);
|
|
assert.match(packageSource, /MediaProxyModule\(reactContext\)/);
|
|
assert.match(moduleSource, /override fun getName\(\)\s*=\s*"MediaProxy"/);
|
|
assert.match(moduleSource, /fun open\(/);
|
|
assert.match(moduleSource, /server\.open\(/);
|
|
});
|