feat: add support for indicating workplaceTypes (#296)
This commit is contained in:
@@ -35,4 +35,30 @@ describe("startupjobs manifest", () => {
|
||||
}),
|
||||
);
|
||||
});
|
||||
|
||||
it("forwards workplace types to the runner", async () => {
|
||||
const { manifest } = await import("../src/manifest");
|
||||
const { runStartupJobs } = await import("../src/run");
|
||||
const runStartupJobsMock = vi.mocked(runStartupJobs);
|
||||
runStartupJobsMock.mockResolvedValue({
|
||||
success: true,
|
||||
jobs: [],
|
||||
});
|
||||
|
||||
await manifest.run({
|
||||
source: "startupjobs",
|
||||
selectedSources: ["startupjobs"],
|
||||
settings: {
|
||||
workplaceTypes: '["remote","onsite"]',
|
||||
},
|
||||
searchTerms: ["software engineer"],
|
||||
selectedCountry: "united kingdom",
|
||||
});
|
||||
|
||||
expect(runStartupJobsMock).toHaveBeenCalledWith(
|
||||
expect.objectContaining({
|
||||
workplaceTypes: ["remote", "onsite"],
|
||||
}),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -72,4 +72,46 @@ describe("runStartupJobs", () => {
|
||||
}),
|
||||
);
|
||||
});
|
||||
|
||||
it("passes workplaceType to the scraper", async () => {
|
||||
const { scrapeStartupJobsViaAlgolia } = await import(
|
||||
"startup-jobs-scraper"
|
||||
);
|
||||
const scrapeMock = vi.mocked(scrapeStartupJobsViaAlgolia);
|
||||
scrapeMock.mockResolvedValueOnce([]);
|
||||
|
||||
const { runStartupJobs } = await import("../src/run");
|
||||
|
||||
await runStartupJobs({
|
||||
searchTerms: ["software engineer"],
|
||||
workplaceTypes: ["remote", "hybrid"],
|
||||
});
|
||||
|
||||
expect(scrapeMock).toHaveBeenCalledWith(
|
||||
expect.objectContaining({
|
||||
workplaceType: ["remote", "hybrid"],
|
||||
}),
|
||||
);
|
||||
});
|
||||
|
||||
it("maps onsite workplaceType to the scraper's on-site value", async () => {
|
||||
const { scrapeStartupJobsViaAlgolia } = await import(
|
||||
"startup-jobs-scraper"
|
||||
);
|
||||
const scrapeMock = vi.mocked(scrapeStartupJobsViaAlgolia);
|
||||
scrapeMock.mockResolvedValueOnce([]);
|
||||
|
||||
const { runStartupJobs } = await import("../src/run");
|
||||
|
||||
await runStartupJobs({
|
||||
searchTerms: ["software engineer"],
|
||||
workplaceTypes: ["onsite"],
|
||||
});
|
||||
|
||||
expect(scrapeMock).toHaveBeenCalledWith(
|
||||
expect.objectContaining({
|
||||
workplaceType: ["on-site"],
|
||||
}),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user