57 lines
1.4 KiB
JavaScript

import { mount } from '@vue/test-utils'
import Invites from './invites.vue'
const localVue = global.localVue
describe('invites.vue', () => {
let wrapper
const sampleUser = {
inviteCodes: [
{ code: 'ABC', comment: null, redeemedByCount: 0, isValid: true, redeemedBy: [] },
],
}
const Wrapper = () => {
return mount(Invites, {
localVue,
mocks: {
$t: jest.fn((key) => key),
$toast: { success: jest.fn(), error: jest.fn() },
$env: { INVITE_LINK_LIMIT: 7, NETWORK_NAME: 'TestNetwork' },
$apollo: { mutate: jest.fn().mockResolvedValue({}) },
$store: {
getters: { 'auth/user': sampleUser },
commit: jest.fn(),
},
},
computed: {
user: () => sampleUser,
},
stubs: {
'invite-code-list': true,
},
})
}
describe('mount', () => {
beforeEach(() => {
wrapper = Wrapper()
})
it('renders', () => {
expect(wrapper.classes('os-card')).toBe(true)
})
it('passes showInvitedUsers to InviteCodeList', () => {
const inviteCodeList = wrapper.find('invite-code-list-stub')
expect(inviteCodeList.attributes('showinvitedusers')).toBe('true')
})
it('passes inviteCodes to InviteCodeList', () => {
const inviteCodeList = wrapper.find('invite-code-list-stub')
expect(inviteCodeList.attributes('invitecodes')).toBeDefined()
})
})
})