import * as assert from 'assert'; import { extractProjectName } from '../extension.js'; suite('extractProjectName', () => { test('extrait le nom de projet depuis un path Linux /root/docker/X', () => { assert.strictEqual( extractProjectName('/root/docker/vscodestat/src/extension.ts'), 'vscodestat' ); }); test('extrait le nom de projet depuis un path Windows \\root\\docker\\X', () => { assert.strictEqual( extractProjectName('C:\\root\\docker\\monitoringserver\\controller\\homeController.js'), 'monitoringserver' ); }); test('retourne null pour un path hors /docker/', () => { assert.strictEqual(extractProjectName('/home/user/projet/file.js'), null); }); test('retourne null pour un path vide', () => { assert.strictEqual(extractProjectName(''), null); }); test('extrait correctement quand le chemin contient docker plusieurs fois', () => { assert.strictEqual( extractProjectName('/root/docker/flatbay/lib/docker/foo.js'), 'flatbay' ); }); test('gere les paths avec tirets et chiffres', () => { assert.strictEqual( extractProjectName('/root/docker/gextra6/bin/console'), 'gextra6' ); }); });