import { Test, TestingModule } from "@nestjs/testing"; import { IntroService } from "@/intro/intro.service"; import introDataset from "@/intro/intro.dataset"; describe("IntroService", () => { let service: IntroService; beforeEach(async () => { const module: TestingModule = await Test.createTestingModule({ providers: [IntroService], }).compile(); jest.spyOn(introDataset, "getData").mockImplementation(() => [ { category: "Personal details", name: "Name", value: "Bob ross", }, { category: "Personal details", name: "Gender", value: "Male", }, { category: "Personal details", name: "Address", value: "", }, { category: "Personal details", name: "Phone number", value: "+31 6 00 00 00 00", }, { category: "Personal details", name: "Date of birth", value: "1942-10-29", }, { category: "Hobbies", name: "Painting", value: "", }, ]); service = module.get(IntroService); }); it("should be defined", () => { expect(service).toBeDefined(); }); describe("getMany method", () => { it("should be defined", () => { expect(service.getMany).toBeDefined(); }); it("should return an array with 6 entries", () => { const intro = service.getMany(); expect(Array.isArray(intro)).toBe(true); expect(intro.length).toBe(6); }); it("should return a filtered array with 5 entries", () => { const intro = service.getMany({ category: "Personal details", }); expect(Array.isArray(intro)).toBe(true); expect(intro.length).toBe(5); }); }); });