29 lines
934 B
TypeScript
29 lines
934 B
TypeScript
import React from "react";
|
|
import { renderHook } from "@testing-library/react-hooks";
|
|
import { TuitioContext } from "../../src/contexts";
|
|
import { useTuitioUser } from "../../src/hooks";
|
|
|
|
describe("useTuitioUser", () => {
|
|
it("should return the userName and lastLoginDate from the TuitioContext", () => {
|
|
const testState = {
|
|
userName: "test-user",
|
|
token: {
|
|
raw: "mocked-token",
|
|
validFrom: new Date(2022, 1, 1),
|
|
validUntil: new Date(2022, 12, 31)
|
|
},
|
|
configuration: {
|
|
tuitioUrl: null
|
|
}
|
|
};
|
|
|
|
const wrapper = ({ children }: { children?: React.ReactNode }) => (
|
|
<TuitioContext.Provider value={testState}>{children}</TuitioContext.Provider>
|
|
);
|
|
const { result } = renderHook(() => useTuitioUser(), { wrapper });
|
|
|
|
expect(result.current.userName).toEqual("test-user");
|
|
expect(result.current.lastLoginDate).toEqual(new Date(2022, 1, 1));
|
|
});
|
|
});
|