segments.spec.ts 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. require("../setup");
  2. import { expect } from "chai";
  3. import { Cassettes } from "mocha-cassettes";
  4. import { LokaliseApi } from "../../src/lokalise/lokalise_api";
  5. describe("Segments", function () {
  6. const cassette = new Cassettes("./test/cassettes");
  7. const lokaliseApi = new LokaliseApi({ apiKey: process.env.API_KEY });
  8. const project_id = "39066161618d4ecb9fdc12.00274309";
  9. const key_id = 134490810;
  10. const segment_number = 1;
  11. cassette
  12. .createTest("list", async () => {
  13. const segments = await lokaliseApi.segments().list({
  14. project_id: project_id,
  15. key_id: key_id,
  16. language_iso: "en",
  17. disable_references: 1,
  18. filter_unverified: 0,
  19. });
  20. expect(segments[0].language_iso).to.eq("en");
  21. expect(segments[2].value).to.eq("So good.");
  22. })
  23. .register(this);
  24. cassette
  25. .createTest("get", async () => {
  26. const segment = await lokaliseApi.segments().get(segment_number, {
  27. project_id: project_id,
  28. key_id: key_id,
  29. language_iso: "en",
  30. });
  31. expect(segment.segment_number).to.eq(segment_number);
  32. expect(segment.language_iso).to.eq("en");
  33. expect(segment.modified_at).to.eq("2021-12-16 16:19:04 (Etc/UTC)");
  34. expect(segment.modified_at_timestamp).to.eq(1639671544);
  35. expect(segment.modified_by).to.eq(20181);
  36. expect(segment.modified_by_email).to.eq("bodrovis@protonmail.com");
  37. expect(segment.value).to.eq("Hey!");
  38. expect(segment.is_fuzzy).to.eq(false);
  39. expect(segment.is_reviewed).to.eq(false);
  40. expect(segment.reviewed_by).to.eq(0);
  41. expect(segment.words).to.eq(1);
  42. expect(segment.custom_translation_statuses.length).to.eq(0);
  43. })
  44. .register(this);
  45. cassette
  46. .createTest("get with params", async () => {
  47. const segment = await lokaliseApi.segments().get(2, {
  48. project_id: project_id,
  49. key_id: key_id,
  50. language_iso: "en",
  51. disable_references: 0,
  52. });
  53. expect(segment.segment_number).to.eq(2);
  54. expect(segment.language_iso).to.eq("en");
  55. expect(segment.is_reviewed).to.eq(true);
  56. expect(segment.reviewed_by).to.eq(20181);
  57. expect(segment.custom_translation_statuses[0].title).to.eq("context");
  58. })
  59. .register(this);
  60. cassette
  61. .createTest("update", async () => {
  62. const segment = await lokaliseApi.segments().update(
  63. segment_number,
  64. {
  65. value: "Hello!",
  66. is_fuzzy: true,
  67. },
  68. { project_id: project_id, key_id: key_id, language_iso: "en" }
  69. );
  70. expect(segment.segment_number).to.eq(segment_number);
  71. expect(segment.is_fuzzy).to.eq(true);
  72. expect(segment.value).to.eq("Hello!");
  73. })
  74. .register(this);
  75. });