Import initial : code en production sur Hetzner
Some checks are pending
CI / tests (push) Waiting to run
CI / deploiement (push) Blocked by required conditions

This commit is contained in:
Adam Belkacemi 2026-09-07 18:21:38 +00:00
commit cf6ee64e31
43 changed files with 14404 additions and 0 deletions

View file

@ -0,0 +1,28 @@
import { describe, expect, it } from 'vitest'
import { dedupe } from '../../server/utils/geocoding'
const place = (label: string, lat: number, lon: number) => ({ label, lat, lon })
describe('dedupe', () => {
it('elimine deux entrees au meme libelle', () => {
expect(dedupe([place('Lille', 50.63, 3.05), place('lille', 47.1, 2.2)])).toHaveLength(1)
})
it('elimine deux entrees a la meme position malgre des libelles differents', () => {
const r = dedupe([
place('Bruxelles, Belgique', 50.846, 4.352),
place('Bruxelles-Capitale, Belgique', 50.848, 4.351),
])
expect(r).toHaveLength(1)
})
it('conserve deux villes homonymes reellement distinctes', () => {
const r = dedupe([place('Lille, France', 50.63, 3.05), place('Lille, Belgique', 50.72, 3.20)])
expect(r).toHaveLength(2)
})
it('preserve l ordre d entree', () => {
const r = dedupe([place('A', 1, 1), place('B', 2, 2), place('C', 3, 3)])
expect(r.map(p => p.label)).toEqual(['A', 'B', 'C'])
})
})