From b3162f5f2d6dbfc0cef3dfd1db69c2ec75b80cff Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 21 Nov 2024 14:05:33 +0100 Subject: [PATCH] Bug 38503: Implement a plural form - buildSamplePatrons Signed-off-by: Victor Grousset/tuxayo --- t/cypress/integration/t/mockData.ts | 9 +++++++++ t/cypress/plugins/index.js | 3 ++- t/cypress/plugins/mockData.js | 11 +++++++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/t/cypress/integration/t/mockData.ts b/t/cypress/integration/t/mockData.ts index 4afd0c3320..22379c3ff0 100644 --- a/t/cypress/integration/t/mockData.ts +++ b/t/cypress/integration/t/mockData.ts @@ -7,3 +7,12 @@ describe("Generate Random Patron", () => { }); }); }); + +describe("Generate Random Patrons", () => { + it("should generate 42 random patron from the schema", () => { + cy.task("buildSamplePatrons", 42).then(mockPatrons => { + expect(mockPatrons.length).to.equal(42); + expect(mockPatrons[0]).to.have.property("patron_id"); + }); + }); +}); diff --git a/t/cypress/plugins/index.js b/t/cypress/plugins/index.js index 2936a8f007..be07e4fe8e 100644 --- a/t/cypress/plugins/index.js +++ b/t/cypress/plugins/index.js @@ -18,11 +18,12 @@ module.exports = (on, config) => { mysql.configurePlugin(on); }; -const { buildSamplePatron } = require("./mockData.js"); +const { buildSamplePatron, buildSamplePatrons } = require("./mockData.js"); module.exports = (on, config) => { on("task", { buildSamplePatron, + buildSamplePatrons, }); return config; }; diff --git a/t/cypress/plugins/mockData.js b/t/cypress/plugins/mockData.js index 0c84043b0a..abcf0adc03 100644 --- a/t/cypress/plugins/mockData.js +++ b/t/cypress/plugins/mockData.js @@ -26,14 +26,21 @@ const generateDataFromSchema = properties => { return mockData; }; -const buildSamplePatron = () => { +const buildSamplePatrons = (count = 1) => { const yamlPath = "api/v1/swagger/definitions/patron.yaml"; const schema = readYamlFile(yamlPath); - return generateDataFromSchema(schema.properties); + return Array.from({ length: count }, () => + generateDataFromSchema(schema.properties) + ); +}; + +const buildSamplePatron = () => { + return buildSamplePatrons()[0]; }; module.exports = { generateMockData, generateDataFromSchema, buildSamplePatron, + buildSamplePatrons, }; -- 2.47.1