* add package.json Signed-off-by: Jess Frazelle <github@jessfraz.com> initial run; Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> more fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> clientsidescne Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> paths Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> fix styles Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> combine Signed-off-by: Jess Frazelle <github@jessfraz.com> eslint rule Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> fixes Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> my ocd Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> constants file Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> no more import sceneInfra Signed-off-by: Jess Frazelle <github@jessfraz.com> updates Signed-off-by: Jess Frazelle <github@jessfraz.com> try fix circular import Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com>
53 lines
1.4 KiB
TypeScript
53 lines
1.4 KiB
TypeScript
import { MAX_PADDING } from '@src/lib/constants'
|
|
import {
|
|
getNextProjectIndex,
|
|
interpolateProjectNameWithIndex,
|
|
} from '@src/lib/desktopFS'
|
|
|
|
describe('Test project name utility functions', () => {
|
|
it('interpolates a project name without an index', () => {
|
|
expect(interpolateProjectNameWithIndex('test', 1)).toBe('test')
|
|
})
|
|
|
|
it('interpolates a project name with an index and no padding', () => {
|
|
expect(interpolateProjectNameWithIndex('test-$n', 2)).toBe('test-2')
|
|
})
|
|
|
|
it('interpolates a project name with an index and padding', () => {
|
|
expect(interpolateProjectNameWithIndex('test-$nnn', 12)).toBe('test-012')
|
|
})
|
|
|
|
it('interpolates a project name with an index and max padding', () => {
|
|
expect(interpolateProjectNameWithIndex('test-$nnnnnnnnnnn', 3)).toBe(
|
|
`test-${'0'.repeat(MAX_PADDING)}3`
|
|
)
|
|
})
|
|
|
|
const testFiles = [
|
|
{
|
|
name: 'new-project-04.kcl',
|
|
path: '/projects/new-project-04.kcl',
|
|
children: [],
|
|
},
|
|
{
|
|
name: 'new-project-007.kcl',
|
|
path: '/projects/new-project-007.kcl',
|
|
children: [],
|
|
},
|
|
{
|
|
name: 'new-project-05.kcl',
|
|
path: '/projects/new-project-05.kcl',
|
|
children: [],
|
|
},
|
|
{
|
|
name: 'new-project-0.kcl',
|
|
path: '/projects/new-project-0.kcl',
|
|
children: [],
|
|
},
|
|
]
|
|
|
|
it('gets the correct next project index', () => {
|
|
expect(getNextProjectIndex('new-project-$n', testFiles)).toBe(8)
|
|
})
|
|
})
|