107 lines
2.6 KiB
JavaScript
107 lines
2.6 KiB
JavaScript
import {describe, vi, expect, test, beforeEach} from "vitest";
|
|
import CaseOfUsersInService from '@useCases/CaseOfUsersInService.js'
|
|
import {createStore} from 'vuex'
|
|
|
|
class ServiceOfUsers {
|
|
constructor(adapter, store) {
|
|
this.adapter = adapter
|
|
this.store = store
|
|
}
|
|
}
|
|
|
|
class ServiceOfServices {
|
|
constructor(adapter, store) {
|
|
this.adapter = adapter
|
|
this.store = store
|
|
}
|
|
}
|
|
|
|
class AdapterOfUsers {
|
|
constructor() {
|
|
}
|
|
|
|
// eslint-disable-next-line no-unused-vars
|
|
async getUsersListByServiceId(serviceId) {
|
|
return [{id: 1, name: 'user1'}, {id: 2, name: 'user2'}]
|
|
}
|
|
}
|
|
|
|
class AdapterOfServices {
|
|
constructor() {
|
|
}
|
|
}
|
|
|
|
describe('tests for caseOfUsersInService', () => {
|
|
const store = createStore({
|
|
modules: {
|
|
services: {
|
|
namespaced: true,
|
|
state: {
|
|
services: [],
|
|
},
|
|
mutations: {
|
|
setServices(state, services) {
|
|
state.services = services
|
|
},
|
|
},
|
|
actions: {
|
|
resetStore({state}) {
|
|
state.services = []
|
|
},
|
|
saveServices({commit}, services) {
|
|
commit('setServices', services)
|
|
}
|
|
},
|
|
},
|
|
users: {
|
|
namespaced: true,
|
|
state: {
|
|
siteUsersList: [],
|
|
},
|
|
mutations: {
|
|
setSiteUsersList(state, users) {
|
|
state.users = users
|
|
},
|
|
},
|
|
actions: {
|
|
resetStore({state}) {
|
|
state.siteUsersList = []
|
|
},
|
|
saveUsers({commit}, users) {
|
|
commit('setSiteUsersList', users)
|
|
}
|
|
},
|
|
},
|
|
},
|
|
})
|
|
|
|
const adapterOfUsers = new AdapterOfUsers()
|
|
const adapterOfServices = new AdapterOfServices()
|
|
|
|
const serviceOfUsers = new ServiceOfUsers(adapterOfUsers, store)
|
|
const serviceOfServices = new ServiceOfServices(adapterOfServices, store)
|
|
|
|
beforeEach( async() => {
|
|
await store.dispatch('services/resetStore')
|
|
await store.dispatch('users/resetStore')
|
|
})
|
|
|
|
test('init', () => {
|
|
const caseOfUsersInService = new CaseOfUsersInService(serviceOfUsers, serviceOfServices)
|
|
|
|
expect(caseOfUsersInService).toBeDefined()
|
|
})
|
|
|
|
// test('selectServiceAndFetchRoutes', async () => {
|
|
// const caseOfUsersInService = new CaseOfUsersInService(serviceOfUsers, serviceOfServices)
|
|
//
|
|
// await caseOfUsersInService.selectServiceAndFetchRoutes(1)
|
|
//
|
|
// const selectedService = store.getters['services/selectedService']
|
|
// const usersList = store.getters['users/siteUsersList']
|
|
//
|
|
// expect(selectedService).toEqual({id: 1, name: 'service1'})
|
|
// expect(usersList).toEqual([{id: 1, name: 'user1'}, {id: 2, name: 'user2'}])
|
|
// })
|
|
})
|