Ocelot-Social/webapp/components/Group/GroupForm.spec.js
Moriz Wahl a3178a91b4
refactor(webapp): store for categories (#8551)
* after authentification, query the categories if active and store them

* get categories from store

* use category store to get categories

* get categories from store

* mock store to have access to categories

* to get rid of the active categories config variable in the frontend, the Category query returns an empty array when categories are not active

* remove CATEGORIES_ACTIVE from .env

* should return string to avoid warnings in console

* replace all env calls for categories active by getter from store

* use categoriesActive getter

* ignore order of returned categories

* mixin to get the category infos from the store, to ensure, that the quey has been called

* fix misspelling

---------

Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-27 15:03:26 +02:00

51 lines
890 B
JavaScript

import { mount } from '@vue/test-utils'
import GroupForm from './GroupForm.vue'
import Vuex from 'vuex'
const localVue = global.localVue
const stubs = {
'nuxt-link': true,
}
const propsData = {
update: false,
group: {},
}
describe('GroupForm', () => {
let wrapper
let mocks
let storeMocks
let store
beforeEach(() => {
mocks = {
$t: jest.fn(),
}
storeMocks = {
getters: {
'categories/categoriesActive': () => false,
},
actions: {
'categories/init': jest.fn(),
},
}
store = new Vuex.Store(storeMocks)
})
describe('mount', () => {
const Wrapper = () => {
return mount(GroupForm, { propsData, mocks, localVue, stubs, store })
}
beforeEach(() => {
wrapper = Wrapper()
})
it('renders', () => {
expect(wrapper.findAll('.group-form')).toHaveLength(1)
})
})
})