import { analyseScan } from './scan';

describe('analyseScan (D4 — QR des étiquettes A6)', () => {
  it("extrait la référence de l'URL portail, quel que soit le domaine", () => {
    expect(analyseScan('https://siop2.apps.enset.top/q/A1')).toBe('A1');
    expect(analyseScan('http://localhost:5173/q/B2')).toBe('B2');
    expect(analyseScan('https://client.spelev.ma/q/MC-1')).toBe('MC-1');
  });

  it('accepte une référence tapée à la main, normalisée en majuscules', () => {
    expect(analyseScan(' a1 ')).toBe('A1');
    expect(analyseScan('b2')).toBe('B2');
  });

  it('refuse ce qui n’est pas à nous — jamais d’écran blanc sur un QR étranger', () => {
    expect(analyseScan('https://example.com/promo?x=1')).toBeNull();
    expect(analyseScan('WIFI:T:WPA;S:box;P:secret;;')).toBeNull();
    expect(analyseScan('')).toBeNull();
    expect(analyseScan('référence avec espaces')).toBeNull();
  });
});
