summaryrefslogtreecommitdiff
path: root/spec/frontend/integrations/edit/store/state_spec.js
blob: a8b431aa310fdfa52d236d8a31e5f52111230be5 (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
import createState from '~/integrations/edit/store/state';

describe('Integration form state factory', () => {
  it('states default to null', () => {
    expect(createState()).toEqual({
      adminState: null,
      customState: {},
      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 adminState: %p, customState: %p: override = `%p`',
      (adminState, customState, expected) => {
        expect(createState({ adminState, customState }).override).toEqual(expected);
      },
    );
  });
});