gitscope
← marzneshin / v0.6.2 / dashboard/src/features/support-us/use-support-us.test.ts
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/features/support-us/use-support-us.test.ts · TypeScript
Blame Raw
 1import { useSupportUs } from './use-support-us';
 2import { describe, it, expect, } from 'vitest';
 3import { renderHook } from '@testing-library/react';
 4import { act } from "react";
 5
 6import '@testing-library/jest-dom';
 7
 8describe('useSupportUs hook', () => {
 9    it('returns local storage value and setter when variant is "local-storage"', () => {
10        const defaultValue = true;
11        const { result } = renderHook(() => useSupportUs('local-storage', defaultValue));
12
13        expect(result.current[0]).toBe(defaultValue);
14
15        const newValue = !defaultValue;
16        act(() => {
17            result.current[1](newValue);
18        });
19
20        expect(result.current[0]).toBe(newValue);
21    });
22
23    it('returns state value and setter when variant is "status"', () => {
24        const defaultValue = true;
25        const { result } = renderHook(() => useSupportUs('status', defaultValue));
26
27        expect(result.current[0]).toBe(defaultValue);
28
29        const newValue = !defaultValue;
30        act(() => {
31            result.current[1](newValue);
32        });
33
34        expect(result.current[0]).toBe(newValue);
35    });
36});