summaryrefslogtreecommitdiff
path: root/spec/frontend/integrations/edit/store/state_spec.js
blob: 4d0f4a1da717d4288182a1a843f344072eb3347c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import createState from '~/integrations/edit/store/state';

describe('Integration form state factory', () => {
  it('states default to null', () => {
    expect(createState()).toEqual({
      defaultState: null,
      customState: {},
      isSaving: false,
      isTesting: false,
      isResetting: false,
      override: false,
    });
  });

  describe('override is initialized correctly', () => {
    it.each([
      [{ id: 25 }, { inheritFromId: null }, true],
      [{ id: 25 }, { inheritFromId: 27 }, true],
      [{ id: 25 }, { inheritFromId: 25 }, false],
      [null, { inheritFromId: null }, false],
      [null, { inheritFromId: 25 }, false],
    ])(
      'for defaultState: %p, customState: %p: override = `%p`',
      (defaultState, customState, expected) => {
        expect(createState({ defaultState, customState }).override).toEqual(expected);
      },
    );
  });
});