mirror of
https://github.com/IT4Change/Ocelot-Social.git
synced 2026-04-06 01:25:31 +00:00
remove categories: clean up
This commit is contained in:
parent
f73c40c252
commit
c179b0a12f
@ -4,7 +4,6 @@ import ContributionForm from './ContributionForm.vue'
|
|||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import Vuex from 'vuex'
|
import Vuex from 'vuex'
|
||||||
import PostMutations from '~/graphql/PostMutations.js'
|
import PostMutations from '~/graphql/PostMutations.js'
|
||||||
import CategoriesSelect from '~/components/CategoriesSelect/CategoriesSelect'
|
|
||||||
|
|
||||||
import ImageUploader from '~/components/ImageUploader/ImageUploader'
|
import ImageUploader from '~/components/ImageUploader/ImageUploader'
|
||||||
import MutationObserver from 'mutation-observer'
|
import MutationObserver from 'mutation-observer'
|
||||||
@ -17,36 +16,6 @@ config.stubs['client-only'] = '<span><slot /></span>'
|
|||||||
config.stubs['nuxt-link'] = '<span><slot /></span>'
|
config.stubs['nuxt-link'] = '<span><slot /></span>'
|
||||||
config.stubs['v-popover'] = '<span><slot /></span>'
|
config.stubs['v-popover'] = '<span><slot /></span>'
|
||||||
|
|
||||||
/*
|
|
||||||
const categories = [
|
|
||||||
{
|
|
||||||
id: 'cat3',
|
|
||||||
slug: 'health-wellbeing',
|
|
||||||
icon: 'medkit',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cat12',
|
|
||||||
slug: 'it-internet-data-privacy',
|
|
||||||
icon: 'mouse-pointer',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cat9',
|
|
||||||
slug: 'democracy-politics',
|
|
||||||
icon: 'university',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cat15',
|
|
||||||
slug: 'consumption-sustainability',
|
|
||||||
icon: 'shopping-cart',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 'cat4',
|
|
||||||
slug: 'environment-nature',
|
|
||||||
icon: 'tree',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
*/
|
|
||||||
|
|
||||||
describe('ContributionForm.vue', () => {
|
describe('ContributionForm.vue', () => {
|
||||||
let wrapper,
|
let wrapper,
|
||||||
postTitleInput,
|
postTitleInput,
|
||||||
@ -56,8 +25,7 @@ describe('ContributionForm.vue', () => {
|
|||||||
propsData,
|
propsData,
|
||||||
categoryIds,
|
categoryIds,
|
||||||
englishLanguage,
|
englishLanguage,
|
||||||
deutschLanguage,
|
deutschLanguage
|
||||||
dataPrivacyButton
|
|
||||||
const postTitle = 'this is a title for a post'
|
const postTitle = 'this is a title for a post'
|
||||||
const postTitleTooShort = 'xx'
|
const postTitleTooShort = 'xx'
|
||||||
let postTitleTooLong = ''
|
let postTitleTooLong = ''
|
||||||
@ -138,7 +106,6 @@ describe('ContributionForm.vue', () => {
|
|||||||
describe('CreatePost', () => {
|
describe('CreatePost', () => {
|
||||||
describe('invalid form submission', () => {
|
describe('invalid form submission', () => {
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
// wrapper.find(CategoriesSelect).setData({ categories })
|
|
||||||
postTitleInput = wrapper.find('.ds-input')
|
postTitleInput = wrapper.find('.ds-input')
|
||||||
postTitleInput.setValue(postTitle)
|
postTitleInput.setValue(postTitle)
|
||||||
await wrapper.vm.updateEditorContent(postContent)
|
await wrapper.vm.updateEditorContent(postContent)
|
||||||
@ -146,10 +113,6 @@ describe('ContributionForm.vue', () => {
|
|||||||
.findAll('li')
|
.findAll('li')
|
||||||
.filter((language) => language.text() === 'English')
|
.filter((language) => language.text() === 'English')
|
||||||
englishLanguage.trigger('click')
|
englishLanguage.trigger('click')
|
||||||
/* dataPrivacyButton = await wrapper
|
|
||||||
.find(CategoriesSelect)
|
|
||||||
.find('[data-test="category-buttons-cat12"]')
|
|
||||||
dataPrivacyButton.trigger('click') */
|
|
||||||
})
|
})
|
||||||
|
|
||||||
it('title cannot be empty', async () => {
|
it('title cannot be empty', async () => {
|
||||||
@ -175,22 +138,6 @@ describe('ContributionForm.vue', () => {
|
|||||||
await wrapper.find('form').trigger('submit')
|
await wrapper.find('form').trigger('submit')
|
||||||
expect(mocks.$apollo.mutate).not.toHaveBeenCalled()
|
expect(mocks.$apollo.mutate).not.toHaveBeenCalled()
|
||||||
})
|
})
|
||||||
|
|
||||||
it.skip('has at least one category', async () => {
|
|
||||||
dataPrivacyButton = await wrapper
|
|
||||||
.find(CategoriesSelect)
|
|
||||||
.find('[data-test="category-buttons-cat12"]')
|
|
||||||
dataPrivacyButton.trigger('click')
|
|
||||||
wrapper.find('form').trigger('submit')
|
|
||||||
expect(mocks.$apollo.mutate).not.toHaveBeenCalled()
|
|
||||||
})
|
|
||||||
|
|
||||||
it.skip('has no more than three categories', async () => {
|
|
||||||
wrapper.vm.formData.categoryIds = ['cat4', 'cat9', 'cat15', 'cat27']
|
|
||||||
await Vue.nextTick()
|
|
||||||
wrapper.find('form').trigger('submit')
|
|
||||||
expect(mocks.$apollo.mutate).not.toHaveBeenCalled()
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|
||||||
describe('valid form submission', () => {
|
describe('valid form submission', () => {
|
||||||
@ -202,23 +149,17 @@ describe('ContributionForm.vue', () => {
|
|||||||
content: postContent,
|
content: postContent,
|
||||||
language: 'en',
|
language: 'en',
|
||||||
id: null,
|
id: null,
|
||||||
// categoryIds: ['cat12'],
|
|
||||||
image: null,
|
image: null,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
postTitleInput = wrapper.find('.ds-input')
|
postTitleInput = wrapper.find('.ds-input')
|
||||||
postTitleInput.setValue(postTitle)
|
postTitleInput.setValue(postTitle)
|
||||||
await wrapper.vm.updateEditorContent(postContent)
|
await wrapper.vm.updateEditorContent(postContent)
|
||||||
// wrapper.find(CategoriesSelect).setData({ categories })
|
|
||||||
englishLanguage = wrapper
|
englishLanguage = wrapper
|
||||||
.findAll('li')
|
.findAll('li')
|
||||||
.filter((language) => language.text() === 'English')
|
.filter((language) => language.text() === 'English')
|
||||||
englishLanguage.trigger('click')
|
englishLanguage.trigger('click')
|
||||||
await Vue.nextTick()
|
await Vue.nextTick()
|
||||||
/* dataPrivacyButton = await wrapper
|
|
||||||
.find(CategoriesSelect)
|
|
||||||
.find('[data-test="category-buttons-cat12"]')
|
|
||||||
dataPrivacyButton.trigger('click') */
|
|
||||||
await Vue.nextTick()
|
await Vue.nextTick()
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -295,16 +236,11 @@ describe('ContributionForm.vue', () => {
|
|||||||
postTitleInput.setValue(postTitle)
|
postTitleInput.setValue(postTitle)
|
||||||
await wrapper.vm.updateEditorContent(postContent)
|
await wrapper.vm.updateEditorContent(postContent)
|
||||||
categoryIds = ['cat12']
|
categoryIds = ['cat12']
|
||||||
// wrapper.find(CategoriesSelect).setData({ categories })
|
|
||||||
englishLanguage = wrapper
|
englishLanguage = wrapper
|
||||||
.findAll('li')
|
.findAll('li')
|
||||||
.filter((language) => language.text() === 'English')
|
.filter((language) => language.text() === 'English')
|
||||||
englishLanguage.trigger('click')
|
englishLanguage.trigger('click')
|
||||||
await Vue.nextTick()
|
await Vue.nextTick()
|
||||||
/* dataPrivacyButton = await wrapper
|
|
||||||
.find(CategoriesSelect)
|
|
||||||
.find('[data-test="category-buttons-cat12"]')
|
|
||||||
dataPrivacyButton.trigger('click') */
|
|
||||||
await Vue.nextTick()
|
await Vue.nextTick()
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -367,7 +303,6 @@ describe('ContributionForm.vue', () => {
|
|||||||
content: propsData.contribution.content,
|
content: propsData.contribution.content,
|
||||||
language: propsData.contribution.language,
|
language: propsData.contribution.language,
|
||||||
id: propsData.contribution.id,
|
id: propsData.contribution.id,
|
||||||
// categoryIds: ['cat12'],
|
|
||||||
image: {
|
image: {
|
||||||
sensitive: false,
|
sensitive: false,
|
||||||
},
|
},
|
||||||
@ -382,18 +317,6 @@ describe('ContributionForm.vue', () => {
|
|||||||
expect(mocks.$apollo.mutate).toHaveBeenCalledWith(expect.objectContaining(expectedParams))
|
expect(mocks.$apollo.mutate).toHaveBeenCalledWith(expect.objectContaining(expectedParams))
|
||||||
})
|
})
|
||||||
|
|
||||||
it.skip('supports updating categories', async () => {
|
|
||||||
expectedParams.variables.categoryIds.push('cat3')
|
|
||||||
// wrapper.find(CategoriesSelect).setData({ categories })
|
|
||||||
await Vue.nextTick()
|
|
||||||
const healthWellbeingButton = await wrapper
|
|
||||||
.find(CategoriesSelect)
|
|
||||||
.find('[data-test="category-buttons-cat3"]')
|
|
||||||
healthWellbeingButton.trigger('click')
|
|
||||||
await wrapper.find('form').trigger('submit')
|
|
||||||
expect(mocks.$apollo.mutate).toHaveBeenCalledWith(expect.objectContaining(expectedParams))
|
|
||||||
})
|
|
||||||
|
|
||||||
it('supports deleting a teaser image', async () => {
|
it('supports deleting a teaser image', async () => {
|
||||||
expectedParams.variables.image = null
|
expectedParams.variables.image = null
|
||||||
propsData.contribution.image = { url: '/uploads/someimage.png' }
|
propsData.contribution.image = { url: '/uploads/someimage.png' }
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user