Fixed removing tasks from challenges (#11254)

* fixed missing event handler for removing tasks in challenges

* renamed test

* simplified challengeDetail test
This commit is contained in:
kogelnikp
2019-07-12 17:03:30 +02:00
committed by Matteo Pagliazzi
parent e5c52625ad
commit 2e227909a4
2 changed files with 66 additions and 4 deletions

View File

@@ -0,0 +1,61 @@
import { shallowMount, createLocalVue } from '@vue/test-utils';
import ChallengeDetailComponent from 'client/components/challenges/challengeDetail.vue';
import Store from 'client/libs/store';
const localVue = createLocalVue();
localVue.use(Store);
describe('Challenge Detail', () => {
let store;
let wrapper;
beforeEach(() => {
store = new Store({
state: {
user: {
data: {
contributor: {
admin: false,
},
challenges: [],
stats: {
},
flags: {},
preferences: {},
party: {
quest: {
},
},
},
},
},
actions: {
'members:getChallengeMembers': () => {},
'challenges:getChallenge': () => [
{_id: '1', group: { name: '', type: ''}, memberCount: 1, name: '', summary: '', description: '', leader: '', price: 1},
],
'tasks:getChallengeTasks': () => [
{_id: '1', type: 'habit'},
{_id: '2', type: 'daily'},
{_id: '3', type: 'reward'},
{_id: '4', type: 'todo'},
],
},
getters: {
},
});
wrapper = shallowMount(ChallengeDetailComponent, {
store,
localVue,
mocks: {
$t: (string) => string,
},
});
});
it('removes a destroyed task from task list', () => {
let taskToRemove = {_id: '1', type: 'habit'};
wrapper.vm.taskDestroyed(taskToRemove);
expect(wrapper.vm.tasksByType[taskToRemove.type].length).to.eq(0);
});
});

View File

@@ -1,6 +1,6 @@
<template lang="pug">
.row
challenge-modal(v-on:updatedChallenge='updatedChallenge')
challenge-modal(@updatedChallenge='updatedChallenge')
leave-challenge-modal(:challengeId='challenge._id')
close-challenge-modal(:members='members', :challengeId='challenge._id', :prize='challenge.prize')
challenge-member-progress-modal(:challengeId='challenge._id')
@@ -47,8 +47,8 @@
@cancel="cancelTaskModal()",
ref="taskModal",
:challengeId="challengeId",
v-on:taskCreated='taskCreated',
v-on:taskEdited='taskEdited',
@taskCreated='taskCreated',
@taskEdited='taskEdited',
@taskDestroyed='taskDestroyed'
)
.row
@@ -57,7 +57,8 @@
:type="column",
:key="column",
:taskListOverride='tasksByType[column]',
v-on:editTask="editTask",
@editTask="editTask",
@taskDestroyed="taskDestroyed",
v-if='tasksByType[column].length > 0')
.col-12.col-md-4.sidebar.standard-page
.button-container(v-if='canJoin')