import assert from 'node:assert/strict'; import test from 'node:test'; import { replaceTerritoryPath } from '../../resources/js/lib/territory-path.js'; void test('changing a parent replaces its value and clears every descendant', () => { const path = ['province-a', 'district-a', 'post-a', 'locality-a']; assert.deepEqual(replaceTerritoryPath(path, 0, 'province-b'), [ 'province-b', ]); assert.deepEqual(replaceTerritoryPath(path, 1, 'district-b'), [ 'province-a', 'district-b', ]); }); void test('clearing a level also clears that level and all descendants', () => { const path = ['province-a', 'district-a', 'post-a', 'locality-a']; assert.deepEqual(replaceTerritoryPath(path, 0), []); assert.deepEqual(replaceTerritoryPath(path, 2, null), [ 'province-a', 'district-a', ]); });