directus

Форк
0
/
apply-diff.test.ts 
28 строк · 1.1 Кб
1
import type { Diff } from 'deep-diff';
2
import { describe, expect, it } from 'vitest';
3
import type { SnapshotField } from '../types/snapshot.js';
4

5
import { isNestedMetaUpdate } from './apply-diff.js';
6

7
describe('isNestedMetaUpdate', () => {
8
	it.each([
9
		{ kind: 'E', path: ['meta', 'options', 'option_a'], rhs: {} },
10
		{ kind: 'A', path: ['meta', 'options', 'option_a'], rhs: [] },
11
	] as Diff<SnapshotField>[])('Returns false when diff is kind $kind', (diff) => {
12
		expect(isNestedMetaUpdate(diff)).toBe(false);
13
	});
14

15
	it.each([
16
		{ kind: 'N', path: ['schema', 'default_value'], rhs: {} },
17
		{ kind: 'D', path: ['schema'], lhs: {} },
18
	] as Diff<SnapshotField>[])('Returns false when diff path is not nested in meta', (diff) => {
19
		expect(isNestedMetaUpdate(diff)).toBe(false);
20
	});
21

22
	it.each([
23
		{ kind: 'N', path: ['meta', 'options', 'option_a'], rhs: { test: 'value' } },
24
		{ kind: 'D', path: ['meta', 'options', 'option_b'], lhs: {} },
25
	] as Diff<SnapshotField>[])('Returns true when diff path is nested in meta', (diff) => {
26
		expect(isNestedMetaUpdate(diff)).toBe(true);
27
	});
28
});
29

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.