summaryrefslogtreecommitdiff
path: root/spec/frontend/projects/settings/components/default_branch_selector_spec.js
blob: 94648d875247b2ba7e615df488354fab37d24182 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import { shallowMount } from '@vue/test-utils';
import DefaultBranchSelector from '~/projects/settings/components/default_branch_selector.vue';
import RefSelector from '~/ref/components/ref_selector.vue';
import { REF_TYPE_BRANCHES } from '~/ref/constants';

describe('projects/settings/components/default_branch_selector', () => {
  const persistedDefaultBranch = 'main';
  const projectId = '123';
  let wrapper;

  const findRefSelector = () => wrapper.findComponent(RefSelector);

  const buildWrapper = () => {
    wrapper = shallowMount(DefaultBranchSelector, {
      propsData: {
        persistedDefaultBranch,
        projectId,
      },
    });
  };

  afterEach(() => {
    wrapper.destroy();
  });

  beforeEach(() => {
    buildWrapper();
  });

  it('displays a RefSelector component', () => {
    expect(findRefSelector().props()).toEqual({
      value: persistedDefaultBranch,
      enabledRefTypes: [REF_TYPE_BRANCHES],
      projectId,
      state: true,
      translations: {
        dropdownHeader: expect.any(String),
        searchPlaceholder: expect.any(String),
      },
      useSymbolicRefNames: false,
      name: 'project[default_branch]',
    });

    expect(findRefSelector().classes()).toContain('gl-w-full');
  });
});