summaryrefslogtreecommitdiff
path: root/spec/frontend/invite_members/utils/member_utils_spec.js
blob: b6fc70038bb3a33a5f51a711e4f911ecbf7acc15 (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
import {
  memberName,
  triggerExternalAlert,
  qualifiesForTasksToBeDone,
} from '~/invite_members/utils/member_utils';
import setWindowLocation from 'helpers/set_window_location_helper';
import { getParameterValues } from '~/lib/utils/url_utility';

jest.mock('~/lib/utils/url_utility');

describe('Member Name', () => {
  it.each([
    [{ username: '_username_', name: '_name_' }, '_username_'],
    [{ username: '_username_' }, '_username_'],
    [{ name: '_name_' }, '_name_'],
    [{}, undefined],
  ])(`returns name from supplied member token: %j`, (member, result) => {
    expect(memberName(member)).toBe(result);
  });
});

describe('Trigger External Alert', () => {
  it('returns false', () => {
    expect(triggerExternalAlert()).toBe(false);
  });
});

describe('Qualifies For Tasks To Be Done', () => {
  it.each([
    ['invite_members_for_task', true],
    ['blah', false],
  ])(`returns name from supplied member token: %j`, (value, result) => {
    setWindowLocation(`blah/blah?open_modal=${value}`);
    getParameterValues.mockImplementation(() => {
      return [value];
    });

    expect(qualifiesForTasksToBeDone()).toBe(result);
  });
});