@elisra-devops/docgen-skins 0.15.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/index.d.ts CHANGED
@@ -22,7 +22,7 @@ export default class Skins {
22
22
  generateTestReporter(testReporterAdaptedData: any[], name: string): any[][];
23
23
  generateQueryBasedParagraphs(data: any, styles: StyleOptions, headingLvl?: number): any[];
24
24
  generateTraceTable(data: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number): any[];
25
- generateTestBasedSkin(data: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number, includeAttachments?: boolean, isFlattened?: boolean): any[];
25
+ generateTestBasedSkin(suites: any, headerStyles: StyleOptions, styles: StyleOptions, headingLvl?: number, includeAttachments?: boolean, isFlattened?: boolean): any[];
26
26
  private AppendAttachmentContent;
27
27
  getDocumentSkin(): DocumentSkin;
28
28
  }
package/bin/index.js CHANGED
@@ -333,125 +333,146 @@ class Skins {
333
333
  throw error;
334
334
  }
335
335
  } //generateTraceTable
336
- generateTestBasedSkin(data, headerStyles, styles, headingLvl = 0, includeAttachments = true, isFlattened = false) {
336
+ generateTestBasedSkin(suites, headerStyles, styles, headingLvl = 0, includeAttachments = true, isFlattened = false) {
337
+ var _a, _b;
337
338
  logger_1.default.debug(`Generating testSkin as ${this.skinFormat}`);
338
339
  let aggregatedErrors = [];
339
340
  try {
340
341
  switch (this.skinFormat) {
341
342
  case 'json':
342
343
  let testSkin = [];
343
- if (!data) {
344
+ if (!suites) {
344
345
  throw new Error('No data provided to generate test based skin');
345
346
  }
346
347
  //create suite Header pragraph
347
- data.forEach((testSuite) => {
348
- let SuiteStyles = {
349
- isBold: true,
350
- IsItalic: false,
351
- IsUnderline: false,
352
- Size: 16,
353
- Uri: null,
354
- Font: 'Arial',
355
- InsertLineBreak: false,
356
- InsertSpace: true,
357
- };
358
- let testSuiteParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testSuite.suiteSkinData.fields, SuiteStyles, testSuite.suiteSkinData.id || 0, testSuite.suiteSkinData.level
359
- ? headingLvl + testSuite.suiteSkinData.level
360
- : headingLvl
361
- ? headingLvl
362
- : 1);
363
- testSkin.push(testSuiteParagraphSkin.getJSONParagraph());
364
- testSuite.testCases.forEach((testcase) => {
348
+ if (suites.length > 0) {
349
+ let lastSuite = suites[suites.length - 1];
350
+ let lastSuiteId = ((_a = lastSuite === null || lastSuite === void 0 ? void 0 : lastSuite.suiteSkinData) === null || _a === void 0 ? void 0 : _a.fields) && lastSuite.suiteSkinData.fields.length > 1
351
+ ? Number((_b = lastSuite.suiteSkinData.fields[1]) === null || _b === void 0 ? void 0 : _b.value)
352
+ : undefined;
353
+ suites.forEach((testSuite) => {
365
354
  var _a, _b, _c;
366
- //create testcase Header paragraph
367
- let testCaseHeaderFields = [
368
- testcase.testCaseHeaderSkinData.fields[0],
369
- testcase.testCaseHeaderSkinData.fields[1],
370
- ];
371
- let TestCaseStyles = {
355
+ let SuiteStyles = {
372
356
  isBold: true,
373
357
  IsItalic: false,
374
358
  IsUnderline: false,
375
- Size: 14,
359
+ Size: 16,
376
360
  Uri: null,
377
361
  Font: 'Arial',
378
362
  InsertLineBreak: false,
379
363
  InsertSpace: true,
380
364
  };
381
- let testCaseParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testCaseHeaderFields, TestCaseStyles, testcase.id || 0, testcase.testCaseHeaderSkinData.level
382
- ? headingLvl + testcase.testCaseHeaderSkinData.level
365
+ let suiteId = ((_a = testSuite === null || testSuite === void 0 ? void 0 : testSuite.suiteSkinData) === null || _a === void 0 ? void 0 : _a.fields) && testSuite.suiteSkinData.fields.length > 1
366
+ ? Number((_b = testSuite.suiteSkinData.fields[1]) === null || _b === void 0 ? void 0 : _b.value)
367
+ : undefined;
368
+ let testSuiteParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testSuite.suiteSkinData.fields, SuiteStyles, suiteId || 0, testSuite.suiteSkinData.level
369
+ ? headingLvl + testSuite.suiteSkinData.level
383
370
  : headingLvl
384
371
  ? headingLvl
385
372
  : 1);
386
- testSkin.push(testCaseParagraphSkin.getJSONParagraph());
387
- let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Description:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
388
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
389
- let testDescriptionParagraph = new JSONRichTextParagraph_1.default(testcase.testCaseHeaderSkinData.fields[2], styles, testcase.id || 0, 0);
390
- let richTextSkin = testDescriptionParagraph.getJSONRichTextParagraph();
391
- testSkin = [...testSkin, ...richTextSkin];
392
- if (testcase.testCaseRequirements) {
393
- if (testcase.testCaseRequirements.length > 0) {
394
- let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Covered Requirements:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
395
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
396
- //create test steps table
397
- let tableSkin = new JSONTable_1.default(testcase.testCaseRequirements, headerStyles, styles, headingLvl);
398
- let populatedTableSkin = tableSkin.getJSONTable();
399
- testSkin.push(populatedTableSkin);
400
- }
401
- }
402
- if (testcase.testCaseBugs) {
403
- if (testcase.testCaseBugs.length > 0) {
404
- let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Linked Bugs:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
405
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
406
- //create test steps table
407
- let tableSkin = new JSONTable_1.default(testcase.testCaseBugs, headerStyles, styles, headingLvl);
408
- let populatedTableSkin = tableSkin.getJSONTable();
409
- testSkin.push(populatedTableSkin);
410
- }
411
- }
412
- try {
413
- if (((_a = testcase.testCaseStepsSkinData) === null || _a === void 0 ? void 0 : _a.length) > 0) {
414
- let testProcedureTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Procedure:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
415
- testSkin.push(testProcedureTitleParagraph.getJSONParagraph());
416
- //create test steps table
417
- let tableSkin = new JSONTable_1.default(testcase.testCaseStepsSkinData, headerStyles, styles, headingLvl, undefined, undefined, isFlattened);
418
- let populatedTableSkin = tableSkin.getJSONTable();
419
- testSkin.push(populatedTableSkin);
373
+ testSkin.push(testSuiteParagraphSkin.getJSONParagraph());
374
+ testSuite.testCases.forEach((testcase) => {
375
+ var _a, _b, _c;
376
+ //create testcase Header paragraph
377
+ let testCaseHeaderFields = [
378
+ testcase.testCaseHeaderSkinData.fields[0],
379
+ testcase.testCaseHeaderSkinData.fields[1],
380
+ ];
381
+ let TestCaseStyles = {
382
+ isBold: true,
383
+ IsItalic: false,
384
+ IsUnderline: false,
385
+ Size: 14,
386
+ Uri: null,
387
+ Font: 'Arial',
388
+ InsertLineBreak: false,
389
+ InsertSpace: true,
390
+ };
391
+ let testCaseParagraphSkin = new JSONTestSuiteHeaderParagraph_1.default(testCaseHeaderFields, TestCaseStyles, testcase.id || 0, testcase.testCaseHeaderSkinData.level
392
+ ? headingLvl + testcase.testCaseHeaderSkinData.level
393
+ : headingLvl
394
+ ? headingLvl
395
+ : 1);
396
+ testSkin.push(testCaseParagraphSkin.getJSONParagraph());
397
+ let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Description:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
398
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
399
+ let testDescriptionParagraph = new JSONRichTextParagraph_1.default(testcase.testCaseHeaderSkinData.fields[2], styles, testcase.id || 0, 0);
400
+ let richTextSkin = testDescriptionParagraph.getJSONRichTextParagraph();
401
+ testSkin = [...testSkin, ...richTextSkin];
402
+ if (testcase.testCaseRequirements) {
403
+ if (testcase.testCaseRequirements.length > 0) {
404
+ let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Covered Requirements:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
405
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
406
+ //create test steps table
407
+ let tableSkin = new JSONTable_1.default(testcase.testCaseRequirements, headerStyles, styles, headingLvl);
408
+ let populatedTableSkin = tableSkin.getJSONTable();
409
+ testSkin.push(populatedTableSkin);
410
+ }
420
411
  }
421
- }
422
- catch (error) {
423
- logger_1.default.warn(`For suite id : ${testSuite.suiteSkinData.fields[0].value} , the testCaseStepsSkinData is not defined for ${testcase.testCaseHeaderSkinData.fields[0].value} `);
424
- logger_1.default.warn(`data ${JSON.stringify(testcase.testCaseStepsSkinData)}`);
425
- logger_1.default.error(`Error occurred when building test steps ${error.message}}`);
426
- aggregatedErrors.push(error.message);
427
- }
428
- if (((_b = testcase.testCaseDocAttachmentsAdoptedData) === null || _b === void 0 ? void 0 : _b.stepLevel) &&
429
- testcase.testCaseDocAttachmentsAdoptedData.stepLevel.length > 0) {
430
- this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.stepLevel, testSkin, aggregatedErrors);
431
- }
432
- //attachments table
433
- try {
434
- if (testcase.testCaseAttachments) {
435
- if (testcase.testCaseAttachments.length > 0 && includeAttachments) {
436
- let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Case Attachments:' }, styles, testcase.id || 0, 0);
412
+ if (testcase.testCaseBugs) {
413
+ if (testcase.testCaseBugs.length > 0) {
414
+ let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Linked Bugs:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
437
415
  testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
438
416
  //create test steps table
439
- let tableSkin = new JSONTable_1.default(testcase.testCaseAttachments, headerStyles, Object.assign(Object.assign({}, styles), { Font: 'Arial' }), headingLvl, true);
417
+ let tableSkin = new JSONTable_1.default(testcase.testCaseBugs, headerStyles, styles, headingLvl);
440
418
  let populatedTableSkin = tableSkin.getJSONTable();
441
419
  testSkin.push(populatedTableSkin);
442
420
  }
443
421
  }
444
- }
445
- catch (error) {
446
- logger_1.default.error(`Error occurred when building attachments ${error.message}}`);
447
- aggregatedErrors.push(error.message);
448
- }
449
- if (((_c = testcase.testCaseDocAttachmentsAdoptedData) === null || _c === void 0 ? void 0 : _c.testCaseLevel) &&
450
- testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel.length > 0) {
451
- this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel, testSkin, aggregatedErrors);
422
+ try {
423
+ if (((_a = testcase.testCaseStepsSkinData) === null || _a === void 0 ? void 0 : _a.length) > 0) {
424
+ let testProcedureTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Procedure:' }, default_1.DescriptionandProcedureStyle, testcase.id || 0, 0);
425
+ testSkin.push(testProcedureTitleParagraph.getJSONParagraph());
426
+ //create test steps table
427
+ let tableSkin = new JSONTable_1.default(testcase.testCaseStepsSkinData, headerStyles, styles, headingLvl, undefined, undefined, isFlattened);
428
+ let populatedTableSkin = tableSkin.getJSONTable();
429
+ testSkin.push(populatedTableSkin);
430
+ }
431
+ }
432
+ catch (error) {
433
+ logger_1.default.warn(`For suite id : ${testSuite.suiteSkinData.fields[0].value} , the testCaseStepsSkinData is not defined for ${testcase.testCaseHeaderSkinData.fields[0].value} `);
434
+ logger_1.default.warn(`data ${JSON.stringify(testcase.testCaseStepsSkinData)}`);
435
+ logger_1.default.error(`Error occurred when building test steps ${error.message}}`);
436
+ aggregatedErrors.push(error.message);
437
+ }
438
+ if (((_b = testcase.testCaseDocAttachmentsAdoptedData) === null || _b === void 0 ? void 0 : _b.stepLevel) &&
439
+ testcase.testCaseDocAttachmentsAdoptedData.stepLevel.length > 0) {
440
+ this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.stepLevel, testSkin, aggregatedErrors);
441
+ }
442
+ //attachments table
443
+ try {
444
+ if (testcase.testCaseAttachments) {
445
+ if (testcase.testCaseAttachments.length > 0 && includeAttachments) {
446
+ let testDescriptionTitleParagraph = new JSONParagraph_1.default({ name: 'Title', value: 'Test Case Attachments:' }, styles, testcase.id || 0, 0);
447
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
448
+ //create test steps table
449
+ let tableSkin = new JSONTable_1.default(testcase.testCaseAttachments, headerStyles, Object.assign(Object.assign({}, styles), { Font: 'Arial' }), headingLvl, true);
450
+ let populatedTableSkin = tableSkin.getJSONTable();
451
+ testSkin.push(populatedTableSkin);
452
+ }
453
+ }
454
+ }
455
+ catch (error) {
456
+ logger_1.default.error(`Error occurred when building attachments ${error.message}}`);
457
+ aggregatedErrors.push(error.message);
458
+ }
459
+ if (((_c = testcase.testCaseDocAttachmentsAdoptedData) === null || _c === void 0 ? void 0 : _c.testCaseLevel) &&
460
+ testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel.length > 0) {
461
+ this.AppendAttachmentContent(testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel, testSkin, aggregatedErrors);
462
+ }
463
+ //append insert page break
464
+ if (testcase.insertPageBreak) {
465
+ let pageBreak = new JSONParagraph_1.default({ name: 'pageBreak', value: '' }, Object.assign(Object.assign({}, styles), { InsertPageBreak: testcase.insertPageBreak }), testcase.id || 0, 0);
466
+ testSkin.push(pageBreak.getJSONParagraph());
467
+ }
468
+ });
469
+ //append insert page break between suites with test cases, do not append it for the last test suite
470
+ if (((_c = testSuite.testCases) === null || _c === void 0 ? void 0 : _c.length) === 1 && suiteId !== lastSuiteId) {
471
+ let pageBreak = new JSONParagraph_1.default({ name: 'pageBreak', value: '' }, Object.assign(Object.assign({}, styles), { InsertPageBreak: true }), suiteId || 0, 0);
472
+ testSkin.push(pageBreak.getJSONParagraph());
452
473
  }
453
474
  });
454
- });
475
+ }
455
476
  return testSkin;
456
477
  case 'html':
457
478
  logger_1.default.info(`Generating html test data!`);
package/bin/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ class JSONRun {
34
34
  run.Italic = style.IsItalic;
35
35
  run.Underline = style.IsUnderline;
36
36
  run.Size = style.Size;
37
+ run.InsertPageBreak = style.InsertPageBreak;
37
38
  if (run.Uri === '') {
38
39
  run.Uri = null;
39
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"JSONRun.js","sourceRoot":"","sources":["../../../src/models/json/JSONRun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JSONRun.js","sourceRoot":"","sources":["../../../src/models/json/JSONRun.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,8 @@ class JSONParagraph {
35
35
  if (field.name !== 'Title: ' &&
36
36
  field.name !== 'ID: ' &&
37
37
  field.name !== 'Description: ' &&
38
- field.name !== 'text: ') {
38
+ field.name !== 'text: ' &&
39
+ field.name !== 'pageBreak: ') {
39
40
  paragraphStyles.Uri = field.url;
40
41
  jsonRun = new JSONRun_1.default(field.name, titleStyle);
41
42
  runs = [...runs, ...jsonRun.runs];
@@ -47,6 +48,11 @@ class JSONParagraph {
47
48
  jsonRun = new JSONRun_1.default(field.value, paragraphStyles);
48
49
  runs = [...runs, ...jsonRun.runs];
49
50
  }
51
+ else if (field.name === 'pageBreak: ') {
52
+ paragraphStyles.InsertPageBreak = true;
53
+ jsonRun = new JSONRun_1.default(field.value, paragraphStyles);
54
+ runs = [...runs, ...jsonRun.runs];
55
+ }
50
56
  else {
51
57
  paragraphStyles.Uri = field.url;
52
58
  jsonRun = new JSONRun_1.default(field.value, paragraphStyles);
@@ -1 +1 @@
1
- {"version":3,"file":"JSONParagraph.js","sourceRoot":"","sources":["../../../../src/models/json/paragraph/JSONParagraph.ts"],"names":[],"mappings":";;;;;AACA,yDAAiC;AAEjC,MAAqB,aAAa;IAIhC,YAAY,KAAiB,EAAE,eAA6B,EAAE,IAAY,EAAE,YAAoB;QAC9F,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,iBAAiB,GAAG;YACvB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC;SACjE,CAAC;QACF,IAAI,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE;YAC5C,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,YAAY,CAAC;SACpD;aAAM;YACL,IAAI,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC;SACzC;IACH,CAAC,CAAC,aAAa;IAEf,wBAAwB,CAAC,KAAiB,EAAE,eAAe;QACzD,IAAI,OAAgB,CAAC;QACrB,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;QAE7D,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;QAC1B,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC;QAC9B,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC;QACnC,0BAA0B;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,EAAE;YACrB,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC;SACpB;QACD,iDAAiD;QACjD,IACE,KAAK,CAAC,IAAI,KAAK,SAAS;YACxB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,KAAK,eAAe;YAC9B,KAAK,CAAC,IAAI,KAAK,QAAQ,EACvB;YACA,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YAChC,OAAO,GAAG,IAAI,iBAAO,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC9C,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAElC,eAAe,CAAC,eAAe,GAAG,KAAK,CAAC;SACzC,CAAC,QAAQ;QAEV,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE;YAC5B,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YAChC,eAAe,CAAC,eAAe,GAAG,KAAK,CAAC;YACxC,OAAO,GAAG,IAAI,iBAAO,CAAC,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YACpD,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SACnC;aAAM;YACL,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YAChC,OAAO,GAAG,IAAI,iBAAO,CAAC,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YACpD,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;SACnC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,uBAAuB;IAEzB,gBAAgB;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC,CAAC,cAAc;CACjB,CAAC,OAAO;AA7DT,gCA6DC"}
1
+ {"version":3,"file":"JSONParagraph.js","sourceRoot":"","sources":["../../../../src/models/json/paragraph/JSONParagraph.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ export interface StyleOptions {
7
7
  Font: string;
8
8
  InsertLineBreak: boolean;
9
9
  InsertSpace: boolean;
10
+ InsertPageBreak?: boolean;
10
11
  }
11
12
  export interface DocumentSkin {
12
13
  templatePath: string;
@@ -64,6 +65,7 @@ export interface Run {
64
65
  Font: string;
65
66
  InsertLineBreak: boolean;
66
67
  InsertSpace: boolean;
68
+ InsertPageBreak?: boolean;
67
69
  src?: string;
68
70
  }
69
71
  export interface WorkItemData {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elisra-devops/docgen-skins",
3
- "version": "0.15.0",
3
+ "version": "0.16.0",
4
4
  "description": "Can be outputed in various types:",
5
5
  "main": "./bin/index.js",
6
6
  "types": "./bin/index.d.ts",
package/src/index.ts CHANGED
@@ -407,7 +407,7 @@ export default class Skins {
407
407
  } //generateTraceTable
408
408
 
409
409
  generateTestBasedSkin(
410
- data: any,
410
+ suites: any,
411
411
  headerStyles: StyleOptions,
412
412
  styles: StyleOptions,
413
413
  headingLvl: number = 0,
@@ -421,201 +421,237 @@ export default class Skins {
421
421
  switch (this.skinFormat) {
422
422
  case 'json':
423
423
  let testSkin: any[] = [];
424
- if (!data) {
424
+ if (!suites) {
425
425
  throw new Error('No data provided to generate test based skin');
426
426
  }
427
427
  //create suite Header pragraph
428
- data.forEach((testSuite: any) => {
429
- let SuiteStyles = {
430
- isBold: true,
431
- IsItalic: false,
432
- IsUnderline: false,
433
- Size: 16,
434
- Uri: null,
435
- Font: 'Arial',
436
- InsertLineBreak: false,
437
- InsertSpace: true,
438
- };
439
- let testSuiteParagraphSkin = new JSONHeaderParagraph(
440
- testSuite.suiteSkinData.fields,
441
- SuiteStyles,
442
- testSuite.suiteSkinData.id || 0,
443
- testSuite.suiteSkinData.level
444
- ? headingLvl + testSuite.suiteSkinData.level
445
- : headingLvl
446
- ? headingLvl
447
- : 1
448
- );
449
- testSkin.push(testSuiteParagraphSkin.getJSONParagraph());
450
-
451
- testSuite.testCases.forEach((testcase) => {
452
- //create testcase Header paragraph
453
- let testCaseHeaderFields = [
454
- testcase.testCaseHeaderSkinData.fields[0],
455
- testcase.testCaseHeaderSkinData.fields[1],
456
- ];
457
- let TestCaseStyles = {
428
+ if (suites.length > 0) {
429
+ let lastSuite = suites[suites.length - 1];
430
+
431
+ let lastSuiteId =
432
+ lastSuite?.suiteSkinData?.fields && lastSuite.suiteSkinData.fields.length > 1
433
+ ? Number(lastSuite.suiteSkinData.fields[1]?.value)
434
+ : undefined;
435
+
436
+ suites.forEach((testSuite: any) => {
437
+ let SuiteStyles = {
458
438
  isBold: true,
459
439
  IsItalic: false,
460
440
  IsUnderline: false,
461
- Size: 14,
441
+ Size: 16,
462
442
  Uri: null,
463
443
  Font: 'Arial',
464
444
  InsertLineBreak: false,
465
445
  InsertSpace: true,
466
446
  };
467
- let testCaseParagraphSkin = new JSONHeaderParagraph(
468
- testCaseHeaderFields,
469
- TestCaseStyles,
470
- testcase.id || 0,
471
- testcase.testCaseHeaderSkinData.level
472
- ? headingLvl + testcase.testCaseHeaderSkinData.level
447
+ let suiteId =
448
+ testSuite?.suiteSkinData?.fields && testSuite.suiteSkinData.fields.length > 1
449
+ ? Number(testSuite.suiteSkinData.fields[1]?.value)
450
+ : undefined;
451
+ let testSuiteParagraphSkin = new JSONHeaderParagraph(
452
+ testSuite.suiteSkinData.fields,
453
+ SuiteStyles,
454
+ suiteId || 0,
455
+ testSuite.suiteSkinData.level
456
+ ? headingLvl + testSuite.suiteSkinData.level
473
457
  : headingLvl
474
458
  ? headingLvl
475
459
  : 1
476
460
  );
477
- testSkin.push(testCaseParagraphSkin.getJSONParagraph());
478
-
479
- let testDescriptionTitleParagraph = new JSONParagraph(
480
- { name: 'Title', value: 'Test Description:' },
481
- DescriptionandProcedureStyle,
482
- testcase.id || 0,
483
- 0
484
- );
485
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
486
-
487
- let testDescriptionParagraph = new JSONRichTextParagraph(
488
- testcase.testCaseHeaderSkinData.fields[2],
489
- styles,
490
- testcase.id || 0,
491
- 0
492
- );
493
- let richTextSkin: any[] = testDescriptionParagraph.getJSONRichTextParagraph();
494
- testSkin = [...testSkin, ...richTextSkin];
495
-
496
- if (testcase.testCaseRequirements) {
497
- if (testcase.testCaseRequirements.length > 0) {
498
- let testDescriptionTitleParagraph = new JSONParagraph(
499
- { name: 'Title', value: 'Covered Requirements:' },
500
- DescriptionandProcedureStyle,
501
- testcase.id || 0,
502
- 0
503
- );
504
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
505
- //create test steps table
506
- let tableSkin = new JSONTable(
507
- testcase.testCaseRequirements,
508
- headerStyles,
509
- styles,
510
- headingLvl
511
- );
512
-
513
- let populatedTableSkin = tableSkin.getJSONTable();
461
+ testSkin.push(testSuiteParagraphSkin.getJSONParagraph());
462
+
463
+ testSuite.testCases.forEach((testcase) => {
464
+ //create testcase Header paragraph
465
+ let testCaseHeaderFields = [
466
+ testcase.testCaseHeaderSkinData.fields[0],
467
+ testcase.testCaseHeaderSkinData.fields[1],
468
+ ];
469
+ let TestCaseStyles = {
470
+ isBold: true,
471
+ IsItalic: false,
472
+ IsUnderline: false,
473
+ Size: 14,
474
+ Uri: null,
475
+ Font: 'Arial',
476
+ InsertLineBreak: false,
477
+ InsertSpace: true,
478
+ };
479
+ let testCaseParagraphSkin = new JSONHeaderParagraph(
480
+ testCaseHeaderFields,
481
+ TestCaseStyles,
482
+ testcase.id || 0,
483
+ testcase.testCaseHeaderSkinData.level
484
+ ? headingLvl + testcase.testCaseHeaderSkinData.level
485
+ : headingLvl
486
+ ? headingLvl
487
+ : 1
488
+ );
489
+ testSkin.push(testCaseParagraphSkin.getJSONParagraph());
514
490
 
515
- testSkin.push(populatedTableSkin);
516
- }
517
- }
491
+ let testDescriptionTitleParagraph = new JSONParagraph(
492
+ { name: 'Title', value: 'Test Description:' },
493
+ DescriptionandProcedureStyle,
494
+ testcase.id || 0,
495
+ 0
496
+ );
497
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
518
498
 
519
- if (testcase.testCaseBugs) {
520
- if (testcase.testCaseBugs.length > 0) {
521
- let testDescriptionTitleParagraph = new JSONParagraph(
522
- { name: 'Title', value: 'Linked Bugs:' },
523
- DescriptionandProcedureStyle,
524
- testcase.id || 0,
525
- 0
526
- );
527
- testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
528
- //create test steps table
529
- let tableSkin = new JSONTable(testcase.testCaseBugs, headerStyles, styles, headingLvl);
499
+ let testDescriptionParagraph = new JSONRichTextParagraph(
500
+ testcase.testCaseHeaderSkinData.fields[2],
501
+ styles,
502
+ testcase.id || 0,
503
+ 0
504
+ );
505
+ let richTextSkin: any[] = testDescriptionParagraph.getJSONRichTextParagraph();
506
+ testSkin = [...testSkin, ...richTextSkin];
530
507
 
531
- let populatedTableSkin = tableSkin.getJSONTable();
508
+ if (testcase.testCaseRequirements) {
509
+ if (testcase.testCaseRequirements.length > 0) {
510
+ let testDescriptionTitleParagraph = new JSONParagraph(
511
+ { name: 'Title', value: 'Covered Requirements:' },
512
+ DescriptionandProcedureStyle,
513
+ testcase.id || 0,
514
+ 0
515
+ );
516
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
517
+ //create test steps table
518
+ let tableSkin = new JSONTable(
519
+ testcase.testCaseRequirements,
520
+ headerStyles,
521
+ styles,
522
+ headingLvl
523
+ );
532
524
 
533
- testSkin.push(populatedTableSkin);
534
- }
535
- }
525
+ let populatedTableSkin = tableSkin.getJSONTable();
536
526
 
537
- try {
538
- if (testcase.testCaseStepsSkinData?.length > 0) {
539
- let testProcedureTitleParagraph = new JSONParagraph(
540
- { name: 'Title', value: 'Test Procedure:' },
541
- DescriptionandProcedureStyle,
542
- testcase.id || 0,
543
- 0
544
- );
545
- testSkin.push(testProcedureTitleParagraph.getJSONParagraph());
546
- //create test steps table
547
- let tableSkin = new JSONTable(
548
- testcase.testCaseStepsSkinData,
549
- headerStyles,
550
- styles,
551
- headingLvl,
552
- undefined,
553
- undefined,
554
- isFlattened
555
- );
556
- let populatedTableSkin = tableSkin.getJSONTable();
557
- testSkin.push(populatedTableSkin);
527
+ testSkin.push(populatedTableSkin);
528
+ }
558
529
  }
559
- } catch (error) {
560
- logger.warn(
561
- `For suite id : ${testSuite.suiteSkinData.fields[0].value} , the testCaseStepsSkinData is not defined for ${testcase.testCaseHeaderSkinData.fields[0].value} `
562
- );
563
- logger.warn(`data ${JSON.stringify(testcase.testCaseStepsSkinData)}`);
564
- logger.error(`Error occurred when building test steps ${error.message}}`);
565
- aggregatedErrors.push(error.message);
566
- }
567
-
568
- if (
569
- testcase.testCaseDocAttachmentsAdoptedData?.stepLevel &&
570
- testcase.testCaseDocAttachmentsAdoptedData.stepLevel.length > 0
571
- ) {
572
- this.AppendAttachmentContent(
573
- testcase.testCaseDocAttachmentsAdoptedData.stepLevel,
574
- testSkin,
575
- aggregatedErrors
576
- );
577
- }
578
530
 
579
- //attachments table
580
- try {
581
- if (testcase.testCaseAttachments) {
582
- if (testcase.testCaseAttachments.length > 0 && includeAttachments) {
531
+ if (testcase.testCaseBugs) {
532
+ if (testcase.testCaseBugs.length > 0) {
583
533
  let testDescriptionTitleParagraph = new JSONParagraph(
584
- { name: 'Title', value: 'Test Case Attachments:' },
585
- styles,
534
+ { name: 'Title', value: 'Linked Bugs:' },
535
+ DescriptionandProcedureStyle,
586
536
  testcase.id || 0,
587
537
  0
588
538
  );
589
539
  testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
590
540
  //create test steps table
541
+ let tableSkin = new JSONTable(testcase.testCaseBugs, headerStyles, styles, headingLvl);
542
+
543
+ let populatedTableSkin = tableSkin.getJSONTable();
591
544
 
545
+ testSkin.push(populatedTableSkin);
546
+ }
547
+ }
548
+
549
+ try {
550
+ if (testcase.testCaseStepsSkinData?.length > 0) {
551
+ let testProcedureTitleParagraph = new JSONParagraph(
552
+ { name: 'Title', value: 'Test Procedure:' },
553
+ DescriptionandProcedureStyle,
554
+ testcase.id || 0,
555
+ 0
556
+ );
557
+ testSkin.push(testProcedureTitleParagraph.getJSONParagraph());
558
+ //create test steps table
592
559
  let tableSkin = new JSONTable(
593
- testcase.testCaseAttachments,
560
+ testcase.testCaseStepsSkinData,
594
561
  headerStyles,
595
- { ...styles, Font: 'Arial' },
562
+ styles,
596
563
  headingLvl,
597
- true
564
+ undefined,
565
+ undefined,
566
+ isFlattened
598
567
  );
599
568
  let populatedTableSkin = tableSkin.getJSONTable();
600
569
  testSkin.push(populatedTableSkin);
601
570
  }
571
+ } catch (error) {
572
+ logger.warn(
573
+ `For suite id : ${testSuite.suiteSkinData.fields[0].value} , the testCaseStepsSkinData is not defined for ${testcase.testCaseHeaderSkinData.fields[0].value} `
574
+ );
575
+ logger.warn(`data ${JSON.stringify(testcase.testCaseStepsSkinData)}`);
576
+ logger.error(`Error occurred when building test steps ${error.message}}`);
577
+ aggregatedErrors.push(error.message);
602
578
  }
603
- } catch (error: any) {
604
- logger.error(`Error occurred when building attachments ${error.message}}`);
605
- aggregatedErrors.push(error.message);
606
- }
607
- if (
608
- testcase.testCaseDocAttachmentsAdoptedData?.testCaseLevel &&
609
- testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel.length > 0
610
- ) {
611
- this.AppendAttachmentContent(
612
- testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel,
613
- testSkin,
614
- aggregatedErrors
579
+
580
+ if (
581
+ testcase.testCaseDocAttachmentsAdoptedData?.stepLevel &&
582
+ testcase.testCaseDocAttachmentsAdoptedData.stepLevel.length > 0
583
+ ) {
584
+ this.AppendAttachmentContent(
585
+ testcase.testCaseDocAttachmentsAdoptedData.stepLevel,
586
+ testSkin,
587
+ aggregatedErrors
588
+ );
589
+ }
590
+
591
+ //attachments table
592
+ try {
593
+ if (testcase.testCaseAttachments) {
594
+ if (testcase.testCaseAttachments.length > 0 && includeAttachments) {
595
+ let testDescriptionTitleParagraph = new JSONParagraph(
596
+ { name: 'Title', value: 'Test Case Attachments:' },
597
+ styles,
598
+ testcase.id || 0,
599
+ 0
600
+ );
601
+ testSkin.push(testDescriptionTitleParagraph.getJSONParagraph());
602
+ //create test steps table
603
+
604
+ let tableSkin = new JSONTable(
605
+ testcase.testCaseAttachments,
606
+ headerStyles,
607
+ { ...styles, Font: 'Arial' },
608
+ headingLvl,
609
+ true
610
+ );
611
+ let populatedTableSkin = tableSkin.getJSONTable();
612
+ testSkin.push(populatedTableSkin);
613
+ }
614
+ }
615
+ } catch (error: any) {
616
+ logger.error(`Error occurred when building attachments ${error.message}}`);
617
+ aggregatedErrors.push(error.message);
618
+ }
619
+ if (
620
+ testcase.testCaseDocAttachmentsAdoptedData?.testCaseLevel &&
621
+ testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel.length > 0
622
+ ) {
623
+ this.AppendAttachmentContent(
624
+ testcase.testCaseDocAttachmentsAdoptedData.testCaseLevel,
625
+ testSkin,
626
+ aggregatedErrors
627
+ );
628
+ }
629
+
630
+ //append insert page break
631
+ if (testcase.insertPageBreak) {
632
+ let pageBreak = new JSONParagraph(
633
+ { name: 'pageBreak', value: '' },
634
+ { ...styles, InsertPageBreak: testcase.insertPageBreak },
635
+ testcase.id || 0,
636
+ 0
637
+ );
638
+ testSkin.push(pageBreak.getJSONParagraph());
639
+ }
640
+ });
641
+
642
+ //append insert page break between suites with test cases, do not append it for the last test suite
643
+ if (testSuite.testCases?.length === 1 && suiteId !== lastSuiteId) {
644
+ let pageBreak = new JSONParagraph(
645
+ { name: 'pageBreak', value: '' },
646
+ { ...styles, InsertPageBreak: true },
647
+ suiteId || 0,
648
+ 0
615
649
  );
650
+ testSkin.push(pageBreak.getJSONParagraph());
616
651
  }
617
652
  });
618
- });
653
+ }
654
+
619
655
  return testSkin;
620
656
  case 'html':
621
657
  logger.info(`Generating html test data!`);
@@ -34,6 +34,7 @@ export default class JSONRun {
34
34
  run.Italic = style.IsItalic;
35
35
  run.Underline = style.IsUnderline;
36
36
  run.Size = style.Size;
37
+ run.InsertPageBreak = style.InsertPageBreak;
37
38
  if (run.Uri === '') {
38
39
  run.Uri = null;
39
40
  } else {
@@ -37,7 +37,8 @@ export default class JSONParagraph {
37
37
  field.name !== 'Title: ' &&
38
38
  field.name !== 'ID: ' &&
39
39
  field.name !== 'Description: ' &&
40
- field.name !== 'text: '
40
+ field.name !== 'text: ' &&
41
+ field.name !== 'pageBreak: '
41
42
  ) {
42
43
  paragraphStyles.Uri = field.url;
43
44
  jsonRun = new JSONRun(field.name, titleStyle);
@@ -51,6 +52,10 @@ export default class JSONParagraph {
51
52
  paragraphStyles.InsertLineBreak = false;
52
53
  jsonRun = new JSONRun(field.value, paragraphStyles);
53
54
  runs = [...runs, ...jsonRun.runs];
55
+ } else if (field.name === 'pageBreak: ') {
56
+ paragraphStyles.InsertPageBreak = true;
57
+ jsonRun = new JSONRun(field.value, paragraphStyles);
58
+ runs = [...runs, ...jsonRun.runs];
54
59
  } else {
55
60
  paragraphStyles.Uri = field.url;
56
61
  jsonRun = new JSONRun(field.value, paragraphStyles);
@@ -7,6 +7,7 @@ export interface StyleOptions {
7
7
  Font: string;
8
8
  InsertLineBreak: boolean;
9
9
  InsertSpace: boolean;
10
+ InsertPageBreak?: boolean;
10
11
  }
11
12
  export interface DocumentSkin {
12
13
  templatePath: string;
@@ -67,6 +68,7 @@ export interface Run {
67
68
  Font: string;
68
69
  InsertLineBreak: boolean;
69
70
  InsertSpace: boolean;
71
+ InsertPageBreak?: boolean;
70
72
  src?: string; //for image
71
73
  }
72
74
  export interface WorkItemData {}