UNPKG

@lokalise/node-api

Version:
92 lines (75 loc) 2.66 kB
import type { UploadedFileProcessDetails } from "../../src/types/queued_process_details.js"; import { describe, expect, it, LokaliseApi, Stub } from "../setup.js"; describe("QueuedProcesses", () => { const lokaliseApi = new LokaliseApi({ apiKey: process.env.API_KEY }); const projectId = "803826145ba90b42d5d860.46800099"; const processId = "7cedb0907b9c9fdccff10ddf2e8420c9f4bd3073"; it("lists", async () => { const stub = new Stub({ fixture: "queued_processes/list.json", uri: `projects/${projectId}/processes`, respHeaders: { "x-pagination-total-count": "3", "x-pagination-page": "1", "x-pagination-limit": "500", "x-pagination-page-count": "1", }, }); await stub.setStub(); const processes = await lokaliseApi.queuedProcesses().list({ project_id: projectId, }); expect(processes.items[0].process_id).to.eq(processId); }); it("lists and paginates", async () => { const params = { page: 2, limit: 1, }; const stub = new Stub({ fixture: "queued_processes/list_pagination.json", uri: `projects/${projectId}/processes`, query: params, respHeaders: { "x-pagination-total-count": "3", "x-pagination-page": "2", "x-pagination-limit": "1", "x-pagination-page-count": "3", }, }); await stub.setStub(); const processes = await lokaliseApi.queuedProcesses().list({ project_id: projectId, ...params, }); expect(processes.items[0].type).to.eq("file-import"); expect(processes.totalResults).to.eq(3); expect(processes.totalPages).to.eq(3); expect(processes.resultsPerPage).to.eq(1); expect(processes.currentPage).to.eq(2); }); it("retrieves", async () => { const stub = new Stub({ fixture: "queued_processes/retrieve.json", uri: `projects/${projectId}/processes/${processId}`, }); await stub.setStub(); const process = await lokaliseApi.queuedProcesses().get(processId, { project_id: projectId, }); expect(process.process_id).to.eq(processId); expect(process.type).to.eq("file-import"); expect(process.status).to.eq("finished"); expect(process.message).to.eq(""); expect(process.created_by).to.eq(20181); expect(process.created_by_email).to.eq("bodrovis@protonmail.com"); expect(process.created_at).to.eq("2023-09-19 13:26:18 (Etc/UTC)"); expect(process.created_at_timestamp).to.eq(1695129978); const processDetails = process.details as UploadedFileProcessDetails; expect(processDetails.files.length).to.eq(1); const file = processDetails.files[0]; expect(file.name_original).to.eq("test_async.json"); expect(file.word_count_total).to.eq(3); expect(file.status).to.eq("finished"); }); });