This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
import assert from 'node:assert/strict';
|
||||
import test from 'node:test';
|
||||
import { moveImageInOrder } from '../../src/modules/inventory/domain/image-order.js';
|
||||
|
||||
test('moves one image next to its neighbor without changing the input order', () => {
|
||||
const images = [{ id: 'a' }, { id: 'b' }, { id: 'c' }];
|
||||
assert.deepEqual(moveImageInOrder(images, 'b', 'up').map(({ id }) => id), ['b', 'a', 'c']);
|
||||
assert.deepEqual(moveImageInOrder(images, 'b', 'down').map(({ id }) => id), ['a', 'c', 'b']);
|
||||
assert.deepEqual(images.map(({ id }) => id), ['a', 'b', 'c']);
|
||||
assert.equal(moveImageInOrder(images, 'a', 'up'), images);
|
||||
assert.equal(moveImageInOrder(images, 'c', 'down'), images);
|
||||
assert.throws(() => moveImageInOrder(images, 'a', 'left'), { code: 'IMAGE_MOVE_INVALID' });
|
||||
});
|
||||
Reference in New Issue
Block a user