From 70037338cb55c894e894c0b5e8417cfb40666b24 Mon Sep 17 00:00:00 2001 From: Korbinian Eckstein Date: Mon, 22 Jul 2024 13:50:27 +0200 Subject: [PATCH] fix uppercase diff names bug add DiffNames tests --- niivue/src/utility.ts | 4 ++-- niivue/test/DiffNames.test.ts | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 niivue/test/DiffNames.test.ts diff --git a/niivue/src/utility.ts b/niivue/src/utility.ts index afc3d2d..f8ff4b5 100644 --- a/niivue/src/utility.ts +++ b/niivue/src/utility.ts @@ -29,8 +29,8 @@ export function differenceInNames(names: string[], rec = true) { // if startCommon points to a letter then include all preceding letters as well while ( startCommon > 0 && - names[0].slice(startCommon - 1, startCommon) >= 'a' && - names[0].slice(startCommon - 1, startCommon) <= 'z' + names[0].slice(startCommon - 1, startCommon).toLowerCase() >= 'a' && + names[0].slice(startCommon - 1, startCommon).toLowerCase() <= 'z' ) { startCommon -= 1 } diff --git a/niivue/test/DiffNames.test.ts b/niivue/test/DiffNames.test.ts new file mode 100644 index 0000000..99179d5 --- /dev/null +++ b/niivue/test/DiffNames.test.ts @@ -0,0 +1,21 @@ +import { describe, expect, it, test } from 'vitest' +import { differenceInNames } from '../src/utility' + +test('diff names of test and test2', () => { + expect(differenceInNames(['test', 'test2'])).toEqual(['test', 'test2']) + expect(differenceInNames(['test1', 'test2'])).toEqual(['test1', 'test2']) + expect( + differenceInNames(['verysuperendlesslongnametest1', 'verysuperendlesslongnametest2']), + ).toEqual(['verysuperendlesslongnametest1', 'verysuperendlesslongnametest2']) + expect(differenceInNames(['test1.nii', 'test2.nii'])).toEqual(['test1', 'test2']) + expect(differenceInNames(['qsm_test1', 'qsm_test2'])).toEqual(['test1', 'test2']) + expect(differenceInNames(['/folder1/qsm_test1', '/folder2/qsm_test2'])).toEqual([ + 'folder1 - test1', + 'folder2 - test2', + ]) + expect(differenceInNames(['/folder1/qsm_test', '/folder2/qsm_test'])).toEqual([ + 'folder1', + 'folder2', + ]) + expect(differenceInNames(['Glu.nii.gz', 'Gln.nii.gz'])).toEqual(['Glu', 'Gln']) +})