addin heading to convertPrrByKey2Csv() method

This commit is contained in:
frankknoll
2023-10-15 14:22:46 +02:00
parent d3acdd66f4
commit f066966f20
3 changed files with 29 additions and 14 deletions

View File

@@ -1,12 +1,19 @@
class PrrByKey2CsvConverter {
static convertPrrByKey2Csv({ prrByKey, keyColumn, prrColumn }) {
return PrrByKey2CsvConverter.#convert2Csv(
{
prrByKey: PrrByKey2CsvConverter.#quoteKeys(prrByKey),
keyColumn: PrrByKey2CsvConverter.#quote(keyColumn),
prrColumn: PrrByKey2CsvConverter.#quote(prrColumn)
});
static convertPrrByKey2Csv(
{
heading,
columns: { keyColumn, prrColumn },
prrByKey
}
) {
return heading + '\n\n' +
PrrByKey2CsvConverter.#convert2Csv(
{
prrByKey: PrrByKey2CsvConverter.#quoteKeys(prrByKey),
keyColumn: PrrByKey2CsvConverter.#quote(keyColumn),
prrColumn: PrrByKey2CsvConverter.#quote(prrColumn)
});
}
static #quoteKeys(prrByKey) {

View File

@@ -38,9 +38,12 @@ class PrrByVaccineTableView {
[
PrrByKey2CsvConverter.convertPrrByKey2Csv(
{
prrByKey: this.#prrByVaccine,
keyColumn: 'Vaccine',
prrColumn: 'Proportional Reporting Ratio'
heading: '# Symptom: ' + this.#symptom,
columns: {
keyColumn: 'Vaccine',
prrColumn: 'Proportional Reporting Ratio'
},
prrByKey: this.#prrByVaccine
})
],
{ type: 'text/csv' })),

View File

@@ -10,14 +10,19 @@ QUnit.module('PrrByKey2CsvConverterTest', function () {
// When
const csv = PrrByKey2CsvConverter.convertPrrByKey2Csv(
{
prrByKey: prrByKey,
keyColumn: 'Vaccine',
prrColumn: 'Proportional Reporting Ratio'
heading: '# Symptom: Acute hepatitis C',
columns: {
keyColumn: 'Vaccine',
prrColumn: 'Proportional Reporting Ratio'
},
prrByKey: prrByKey
});
// Then
const csvExpected =
`"Vaccine","Proportional Reporting Ratio"
`# Symptom: Acute hepatitis C
"Vaccine","Proportional Reporting Ratio"
"MM,R",26.17432376240791
"VARCEL",10.549534724816644`;
assert.equal(csv, csvExpected);