Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-12-17 14:59:07 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-12-17 14:59:07 +0300
commit8b573c94895dc0ac0e1d9d59cf3e8745e8b539ca (patch)
tree544930fb309b30317ae9797a9683768705d664c4 /spec/frontend/members/components/filter_sort/filter_sort_container_spec.js
parent4b1de649d0168371549608993deac953eb692019 (diff)
Add latest changes from gitlab-org/gitlab@13-7-stable-eev13.7.0-rc42
Diffstat (limited to 'spec/frontend/members/components/filter_sort/filter_sort_container_spec.js')
-rw-r--r--spec/frontend/members/components/filter_sort/filter_sort_container_spec.js68
1 files changed, 68 insertions, 0 deletions
diff --git a/spec/frontend/members/components/filter_sort/filter_sort_container_spec.js b/spec/frontend/members/components/filter_sort/filter_sort_container_spec.js
new file mode 100644
index 00000000000..91277ae6d03
--- /dev/null
+++ b/spec/frontend/members/components/filter_sort/filter_sort_container_spec.js
@@ -0,0 +1,68 @@
+import { shallowMount, createLocalVue } from '@vue/test-utils';
+import Vuex from 'vuex';
+import FilterSortContainer from '~/members/components/filter_sort/filter_sort_container.vue';
+import MembersFilteredSearchBar from '~/members/components/filter_sort/members_filtered_search_bar.vue';
+import SortDropdown from '~/members/components/filter_sort/sort_dropdown.vue';
+
+const localVue = createLocalVue();
+localVue.use(Vuex);
+
+describe('FilterSortContainer', () => {
+ let wrapper;
+
+ const createComponent = state => {
+ const store = new Vuex.Store({
+ state: {
+ filteredSearchBar: {
+ show: true,
+ tokens: ['two_factor'],
+ searchParam: 'search',
+ placeholder: 'Filter members',
+ recentSearchesStorageKey: 'group_members',
+ },
+ tableSortableFields: ['account'],
+ ...state,
+ },
+ });
+
+ wrapper = shallowMount(FilterSortContainer, {
+ localVue,
+ store,
+ });
+ };
+
+ describe('when `filteredSearchBar.show` is `false` and `tableSortableFields` is empty', () => {
+ it('renders nothing', () => {
+ createComponent({
+ filteredSearchBar: {
+ show: false,
+ },
+ tableSortableFields: [],
+ });
+
+ expect(wrapper.html()).toBe('');
+ });
+ });
+
+ describe('when `filteredSearchBar.show` is `true`', () => {
+ it('renders `MembersFilteredSearchBar`', () => {
+ createComponent({
+ filteredSearchBar: {
+ show: true,
+ },
+ });
+
+ expect(wrapper.find(MembersFilteredSearchBar).exists()).toBe(true);
+ });
+ });
+
+ describe('when `tableSortableFields` is set', () => {
+ it('renders `SortDropdown`', () => {
+ createComponent({
+ tableSortableFields: ['account'],
+ });
+
+ expect(wrapper.find(SortDropdown).exists()).toBe(true);
+ });
+ });
+});