Commit 1b204f07 authored by Justin Ho's avatar Justin Ho

Update translations and add basic specs

Add `wrapper = null` to properly clean up after each spec
parent 577b6f4c
...@@ -20124,6 +20124,9 @@ msgstr "" ...@@ -20124,6 +20124,9 @@ msgstr ""
msgid "Search Button" msgid "Search Button"
msgstr "" msgstr ""
msgid "Search Jira issues"
msgstr ""
msgid "Search Milestones" msgid "Search Milestones"
msgstr "" msgstr ""
......
...@@ -7,6 +7,7 @@ import { TEST_HOST } from 'helpers/test_constants'; ...@@ -7,6 +7,7 @@ import { TEST_HOST } from 'helpers/test_constants';
import flash from '~/flash'; import flash from '~/flash';
import IssuablesListApp from '~/issuables_list/components/issuables_list_app.vue'; import IssuablesListApp from '~/issuables_list/components/issuables_list_app.vue';
import Issuable from '~/issuables_list/components/issuable.vue'; import Issuable from '~/issuables_list/components/issuable.vue';
import FilteredSearchBar from '~/vue_shared/components/filtered_search_bar/filtered_search_bar_root.vue';
import issueablesEventBus from '~/issuables_list/eventhub'; import issueablesEventBus from '~/issuables_list/eventhub';
import { PAGE_SIZE, PAGE_SIZE_MANUAL, RELATIVE_POSITION } from '~/issuables_list/constants'; import { PAGE_SIZE, PAGE_SIZE_MANUAL, RELATIVE_POSITION } from '~/issuables_list/constants';
...@@ -59,6 +60,7 @@ describe('Issuables list component', () => { ...@@ -59,6 +60,7 @@ describe('Issuables list component', () => {
const findLoading = () => wrapper.find(GlSkeletonLoading); const findLoading = () => wrapper.find(GlSkeletonLoading);
const findIssuables = () => wrapper.findAll(Issuable); const findIssuables = () => wrapper.findAll(Issuable);
const findFilteredSearchBar = () => wrapper.find(FilteredSearchBar);
const findFirstIssuable = () => findIssuables().wrappers[0]; const findFirstIssuable = () => findIssuables().wrappers[0];
const findEmptyState = () => wrapper.find(GlEmptyState); const findEmptyState = () => wrapper.find(GlEmptyState);
...@@ -75,6 +77,7 @@ describe('Issuables list component', () => { ...@@ -75,6 +77,7 @@ describe('Issuables list component', () => {
afterEach(() => { afterEach(() => {
wrapper.destroy(); wrapper.destroy();
wrapper = null;
mockAxios.restore(); mockAxios.restore();
window.location = oldLocation; window.location = oldLocation;
}); });
...@@ -131,6 +134,7 @@ describe('Issuables list component', () => { ...@@ -131,6 +134,7 @@ describe('Issuables list component', () => {
}); });
it('does not call API until mounted', () => { it('does not call API until mounted', () => {
factory();
expect(apiSpy).not.toHaveBeenCalled(); expect(apiSpy).not.toHaveBeenCalled();
}); });
...@@ -173,6 +177,12 @@ describe('Issuables list component', () => { ...@@ -173,6 +177,12 @@ describe('Issuables list component', () => {
expect(wrapper.find(GlPagination).exists()).toBe(true); expect(wrapper.find(GlPagination).exists()).toBe(true);
}); });
}); });
it('does not render FilteredSearchBar', () => {
factory();
expect(findFilteredSearchBar().exists()).toBe(false);
});
}); });
describe('with bulk editing enabled', () => { describe('with bulk editing enabled', () => {
...@@ -523,4 +533,48 @@ describe('Issuables list component', () => { ...@@ -523,4 +533,48 @@ describe('Issuables list component', () => {
}); });
}); });
}); });
describe('when type is "jira"', () => {
it('renders FilteredSearchBar', () => {
factory({ type: 'jira' });
expect(findFilteredSearchBar().exists()).toBe(true);
});
describe('initialSortBy', () => {
const query = '?sort=updated_asc';
it('sets default value', () => {
factory({ type: 'jira' });
expect(findFilteredSearchBar().props('initialSortBy')).toBe('created_desc');
});
it('sets value according to query', () => {
setUrl(query);
factory({ type: 'jira' });
expect(findFilteredSearchBar().props('initialSortBy')).toBe('updated_asc');
});
});
describe('initialFilterValue', () => {
it('does not set value when no query', () => {
factory({ type: 'jira' });
expect(findFilteredSearchBar().props('initialFilterValue')).toEqual([]);
});
it('sets value according to query', () => {
const query = '?search=free+text';
setUrl(query);
factory({ type: 'jira' });
expect(findFilteredSearchBar().props('initialFilterValue')).toEqual(['free text']);
});
});
});
}); });
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment