371 lines
12 KiB
JavaScript
371 lines
12 KiB
JavaScript
import {
|
|
FILTERED_SEARCH_TERM,
|
|
OPERATOR_IS,
|
|
OPERATOR_NOT,
|
|
OPERATOR_OR,
|
|
TOKEN_TYPE_ASSIGNEE,
|
|
TOKEN_TYPE_AUTHOR,
|
|
TOKEN_TYPE_CONFIDENTIAL,
|
|
TOKEN_TYPE_CONTACT,
|
|
TOKEN_TYPE_EPIC,
|
|
TOKEN_TYPE_ITERATION,
|
|
TOKEN_TYPE_LABEL,
|
|
TOKEN_TYPE_MILESTONE,
|
|
TOKEN_TYPE_MY_REACTION,
|
|
TOKEN_TYPE_ORGANIZATION,
|
|
TOKEN_TYPE_RELEASE,
|
|
TOKEN_TYPE_TYPE,
|
|
TOKEN_TYPE_WEIGHT,
|
|
TOKEN_TYPE_HEALTH,
|
|
} from '~/vue_shared/components/filtered_search_bar/constants';
|
|
|
|
export const getIssuesQueryResponse = {
|
|
data: {
|
|
project: {
|
|
id: '1',
|
|
__typename: 'Project',
|
|
issues: {
|
|
__persist: true,
|
|
pageInfo: {
|
|
__typename: 'PageInfo',
|
|
hasNextPage: true,
|
|
hasPreviousPage: false,
|
|
startCursor: 'startcursor',
|
|
endCursor: 'endcursor',
|
|
},
|
|
nodes: [
|
|
{
|
|
__persist: true,
|
|
__typename: 'Issue',
|
|
id: 'gid://gitlab/Issue/123456',
|
|
iid: '789',
|
|
confidential: false,
|
|
createdAt: '2021-05-22T04:08:01Z',
|
|
downvotes: 2,
|
|
dueDate: '2021-05-29',
|
|
hidden: false,
|
|
humanTimeEstimate: null,
|
|
mergeRequestsCount: false,
|
|
moved: false,
|
|
state: 'opened',
|
|
title: 'Issue title',
|
|
updatedAt: '2021-05-22T04:08:01Z',
|
|
closedAt: null,
|
|
upvotes: 3,
|
|
userDiscussionsCount: 4,
|
|
webPath: 'project/-/issues/789',
|
|
webUrl: 'project/-/issues/789',
|
|
type: 'issue',
|
|
assignees: {
|
|
nodes: [
|
|
{
|
|
__persist: true,
|
|
__typename: 'UserCore',
|
|
id: 'gid://gitlab/User/234',
|
|
avatarUrl: 'avatar/url',
|
|
name: 'Marge Simpson',
|
|
username: 'msimpson',
|
|
webUrl: 'url/msimpson',
|
|
},
|
|
],
|
|
},
|
|
author: {
|
|
__persist: true,
|
|
__typename: 'UserCore',
|
|
id: 'gid://gitlab/User/456',
|
|
avatarUrl: 'avatar/url',
|
|
name: 'Homer Simpson',
|
|
username: 'hsimpson',
|
|
webUrl: 'url/hsimpson',
|
|
},
|
|
labels: {
|
|
nodes: [
|
|
{
|
|
__persist: true,
|
|
id: 'gid://gitlab/ProjectLabel/456',
|
|
color: '#333',
|
|
title: 'Label title',
|
|
description: 'Label description',
|
|
},
|
|
],
|
|
},
|
|
milestone: null,
|
|
taskCompletionStatus: {
|
|
completedCount: 1,
|
|
count: 2,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
export const getIssuesQueryEmptyResponse = {
|
|
data: {
|
|
project: {
|
|
id: '1',
|
|
__typename: 'Project',
|
|
issues: {
|
|
__persist: true,
|
|
pageInfo: {
|
|
__typename: 'PageInfo',
|
|
hasNextPage: true,
|
|
hasPreviousPage: false,
|
|
startCursor: 'startcursor',
|
|
endCursor: 'endcursor',
|
|
},
|
|
nodes: [],
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
export const getIssuesCountsQueryResponse = {
|
|
data: {
|
|
project: {
|
|
id: '1',
|
|
openedIssues: {
|
|
count: 1,
|
|
},
|
|
closedIssues: {
|
|
count: 1,
|
|
},
|
|
allIssues: {
|
|
count: 1,
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
export const setSortPreferenceMutationResponse = {
|
|
data: {
|
|
userPreferencesUpdate: {
|
|
errors: [],
|
|
},
|
|
},
|
|
};
|
|
|
|
export const setSortPreferenceMutationResponseWithErrors = {
|
|
data: {
|
|
userPreferencesUpdate: {
|
|
errors: ['oh no!'],
|
|
},
|
|
},
|
|
};
|
|
|
|
export const locationSearch = [
|
|
'?search=find+issues',
|
|
'author_username=homer',
|
|
'not[author_username]=marge',
|
|
'or[author_username]=burns',
|
|
'or[author_username]=smithers',
|
|
'assignee_username[]=bart',
|
|
'assignee_username[]=lisa',
|
|
'assignee_username[]=5',
|
|
'not[assignee_username][]=patty',
|
|
'not[assignee_username][]=selma',
|
|
'or[assignee_username][]=carl',
|
|
'or[assignee_username][]=lenny',
|
|
'milestone_title=season+3',
|
|
'milestone_title=season+4',
|
|
'not[milestone_title]=season+20',
|
|
'not[milestone_title]=season+30',
|
|
'label_name[]=cartoon',
|
|
'label_name[]=tv',
|
|
'not[label_name][]=live action',
|
|
'not[label_name][]=drama',
|
|
'or[label_name][]=comedy',
|
|
'or[label_name][]=sitcom',
|
|
'release_tag=v3',
|
|
'release_tag=v4',
|
|
'not[release_tag]=v20',
|
|
'not[release_tag]=v30',
|
|
'type[]=issue',
|
|
'type[]=feature',
|
|
'not[type][]=bug',
|
|
'not[type][]=incident',
|
|
'my_reaction_emoji=thumbsup',
|
|
'not[my_reaction_emoji]=thumbsdown',
|
|
'confidential=yes',
|
|
'iteration_id=4',
|
|
'iteration_id=12',
|
|
'not[iteration_id]=20',
|
|
'not[iteration_id]=42',
|
|
'epic_id=12',
|
|
'not[epic_id]=34',
|
|
'weight=1',
|
|
'not[weight]=3',
|
|
'crm_contact_id=123',
|
|
'crm_organization_id=456',
|
|
'health_status=atRisk',
|
|
'not[health_status]=onTrack',
|
|
].join('&');
|
|
|
|
export const locationSearchWithSpecialValues = [
|
|
'assignee_id=123',
|
|
'assignee_username=bart',
|
|
'my_reaction_emoji=None',
|
|
'iteration_id=Current',
|
|
'label_name[]=None',
|
|
'release_tag=None',
|
|
'milestone_title=Upcoming',
|
|
'epic_id=None',
|
|
'weight=None',
|
|
'health_status=None',
|
|
].join('&');
|
|
|
|
export const filteredTokens = [
|
|
{ type: FILTERED_SEARCH_TERM, value: { data: 'find issues', operator: 'undefined' } },
|
|
{ type: TOKEN_TYPE_AUTHOR, value: { data: 'homer', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_AUTHOR, value: { data: 'marge', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_AUTHOR, value: { data: 'burns', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_AUTHOR, value: { data: 'smithers', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'bart', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'lisa', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: '5', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'patty', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'selma', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'carl', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'lenny', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_MILESTONE, value: { data: 'season 3', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_MILESTONE, value: { data: 'season 4', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_MILESTONE, value: { data: 'season 20', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_MILESTONE, value: { data: 'season 30', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'cartoon', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'tv', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'live action', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'drama', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'comedy', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'sitcom', operator: OPERATOR_OR } },
|
|
{ type: TOKEN_TYPE_RELEASE, value: { data: 'v3', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_RELEASE, value: { data: 'v4', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_RELEASE, value: { data: 'v20', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_RELEASE, value: { data: 'v30', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_TYPE, value: { data: 'issue', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_TYPE, value: { data: 'feature', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_TYPE, value: { data: 'bug', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_TYPE, value: { data: 'incident', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_MY_REACTION, value: { data: 'thumbsup', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_MY_REACTION, value: { data: 'thumbsdown', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_CONFIDENTIAL, value: { data: 'yes', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ITERATION, value: { data: '4', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ITERATION, value: { data: '12', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ITERATION, value: { data: '20', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_ITERATION, value: { data: '42', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_EPIC, value: { data: '12', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_EPIC, value: { data: '34', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_WEIGHT, value: { data: '1', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_WEIGHT, value: { data: '3', operator: OPERATOR_NOT } },
|
|
{ type: TOKEN_TYPE_CONTACT, value: { data: '123', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ORGANIZATION, value: { data: '456', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_HEALTH, value: { data: 'atRisk', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_HEALTH, value: { data: 'onTrack', operator: OPERATOR_NOT } },
|
|
];
|
|
|
|
export const filteredTokensWithSpecialValues = [
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: '123', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ASSIGNEE, value: { data: 'bart', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_MY_REACTION, value: { data: 'None', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_ITERATION, value: { data: 'Current', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_LABEL, value: { data: 'None', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_RELEASE, value: { data: 'None', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_MILESTONE, value: { data: 'Upcoming', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_EPIC, value: { data: 'None', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_WEIGHT, value: { data: 'None', operator: OPERATOR_IS } },
|
|
{ type: TOKEN_TYPE_HEALTH, value: { data: 'None', operator: OPERATOR_IS } },
|
|
];
|
|
|
|
export const apiParams = {
|
|
search: 'find issues',
|
|
authorUsername: 'homer',
|
|
assigneeUsernames: ['bart', 'lisa', '5'],
|
|
milestoneTitle: ['season 3', 'season 4'],
|
|
labelName: ['cartoon', 'tv'],
|
|
releaseTag: ['v3', 'v4'],
|
|
types: ['ISSUE', 'FEATURE'],
|
|
myReactionEmoji: 'thumbsup',
|
|
confidential: true,
|
|
iterationId: ['4', '12'],
|
|
epicId: '12',
|
|
weight: '1',
|
|
crmContactId: '123',
|
|
crmOrganizationId: '456',
|
|
healthStatusFilter: 'atRisk',
|
|
not: {
|
|
authorUsername: 'marge',
|
|
assigneeUsernames: ['patty', 'selma'],
|
|
milestoneTitle: ['season 20', 'season 30'],
|
|
labelName: ['live action', 'drama'],
|
|
releaseTag: ['v20', 'v30'],
|
|
types: ['BUG', 'INCIDENT'],
|
|
myReactionEmoji: 'thumbsdown',
|
|
iterationId: ['20', '42'],
|
|
epicId: '34',
|
|
weight: '3',
|
|
healthStatusFilter: 'onTrack',
|
|
},
|
|
or: {
|
|
authorUsernames: ['burns', 'smithers'],
|
|
assigneeUsernames: ['carl', 'lenny'],
|
|
labelNames: ['comedy', 'sitcom'],
|
|
},
|
|
};
|
|
|
|
export const apiParamsWithSpecialValues = {
|
|
assigneeId: '123',
|
|
assigneeUsernames: 'bart',
|
|
labelName: 'None',
|
|
myReactionEmoji: 'None',
|
|
releaseTagWildcardId: 'NONE',
|
|
iterationWildcardId: 'CURRENT',
|
|
milestoneWildcardId: 'UPCOMING',
|
|
epicId: 'None',
|
|
weight: 'None',
|
|
healthStatusFilter: 'NONE',
|
|
};
|
|
|
|
export const urlParams = {
|
|
search: 'find issues',
|
|
author_username: 'homer',
|
|
'not[author_username]': 'marge',
|
|
'or[author_username]': ['burns', 'smithers'],
|
|
'assignee_username[]': ['bart', 'lisa', '5'],
|
|
'not[assignee_username][]': ['patty', 'selma'],
|
|
'or[assignee_username][]': ['carl', 'lenny'],
|
|
milestone_title: ['season 3', 'season 4'],
|
|
'not[milestone_title]': ['season 20', 'season 30'],
|
|
'label_name[]': ['cartoon', 'tv'],
|
|
'not[label_name][]': ['live action', 'drama'],
|
|
'or[label_name][]': ['comedy', 'sitcom'],
|
|
release_tag: ['v3', 'v4'],
|
|
'not[release_tag]': ['v20', 'v30'],
|
|
'type[]': ['issue', 'feature'],
|
|
'not[type][]': ['bug', 'incident'],
|
|
my_reaction_emoji: 'thumbsup',
|
|
'not[my_reaction_emoji]': 'thumbsdown',
|
|
confidential: 'yes',
|
|
iteration_id: ['4', '12'],
|
|
'not[iteration_id]': ['20', '42'],
|
|
epic_id: '12',
|
|
'not[epic_id]': '34',
|
|
weight: '1',
|
|
'not[weight]': '3',
|
|
crm_contact_id: '123',
|
|
crm_organization_id: '456',
|
|
health_status: 'atRisk',
|
|
'not[health_status]': 'onTrack',
|
|
};
|
|
|
|
export const urlParamsWithSpecialValues = {
|
|
assignee_id: '123',
|
|
'assignee_username[]': 'bart',
|
|
'label_name[]': 'None',
|
|
release_tag: 'None',
|
|
my_reaction_emoji: 'None',
|
|
iteration_id: 'Current',
|
|
milestone_title: 'Upcoming',
|
|
epic_id: 'None',
|
|
weight: 'None',
|
|
health_status: 'None',
|
|
};
|