53 lines
1.6 KiB
JavaScript
53 lines
1.6 KiB
JavaScript
import { vi, describe, expect, it, beforeAll, afterEach } from 'vitest';
|
|
import { createWrapper, axios } from 'app/test/vitest/helper';
|
|
import CustomerPayments from 'src/pages/Customer/Payments/CustomerPayments.vue';
|
|
|
|
describe('CustomerPayments', () => {
|
|
let vm;
|
|
|
|
beforeAll(() => {
|
|
vm = createWrapper(CustomerPayments, {
|
|
global: {
|
|
stubs: ['VnPaginate'],
|
|
mocks: {
|
|
fetch: vi.fn(),
|
|
},
|
|
},
|
|
}).vm;
|
|
});
|
|
|
|
afterEach(() => {
|
|
vi.clearAllMocks();
|
|
});
|
|
|
|
describe('confirmTransaction()', () => {
|
|
it('should make a POST request and then call to quasar notify method', async () => {
|
|
vi.spyOn(axios, 'post').mockResolvedValue({ data: true });
|
|
vi.spyOn(vm.quasar, 'notify');
|
|
|
|
await vm.confirmTransaction({ id: 1 });
|
|
|
|
expect(vm.quasar.notify).toHaveBeenCalledWith(
|
|
expect.objectContaining({
|
|
message: 'Payment confirmed',
|
|
type: 'positive',
|
|
})
|
|
);
|
|
});
|
|
});
|
|
|
|
describe('stateColor()', () => {
|
|
it('should return "positive" when isConfirmed property is truthy', async () => {
|
|
const result = await vm.stateColor({ isConfirmed: true });
|
|
|
|
expect(result).toEqual('positive');
|
|
});
|
|
|
|
it('should return "primary" when isConfirmed property is falsy', async () => {
|
|
const result = await vm.stateColor({ isConfirmed: false });
|
|
|
|
expect(result).toEqual('primary');
|
|
});
|
|
});
|
|
});
|