Adjust null input response, and tests

pull/634/head
Brice Bauer 5 months ago
parent a5893f0bf9
commit c5943a1ca4

@ -31,19 +31,17 @@ describe("DeviceHoursPipe", () => {
{
input: null,
configuration: "device_hours",
result: "null hours",
result: "Unknown",
},
{
input: null,
configuration: "humanize",
result: "0 seconds",
result: "Unknown",
},
];
testCases.forEach((test, index) => {
it(`should format input ${test.input} with configuration '${
test.configuration
}' (testcase: ${index + 1})`, () => {
it(`format input '${test.input}' with configuration '${test.configuration}', should be '${test.result}' (testcase: ${index + 1})`, () => {
// test
const pipe = new DeviceHoursPipe();
const formatted = pipe.transform(test.input, test.configuration);

@ -4,7 +4,10 @@ import humanizeDuration from 'humanize-duration';
@Pipe({ name: 'deviceHours' })
export class DeviceHoursPipe implements PipeTransform {
static format(hoursOfRunTime: number, unit: string, humanizeConfig: object): string {
if (unit === 'device_hours') {
if (hoursOfRunTime === null) {
return 'Unknown';
}
if (unit === 'device_hours') {
return `${hoursOfRunTime} hours`;
}
return humanizeDuration(hoursOfRunTime * 60 * 60 * 1000, humanizeConfig);

Loading…
Cancel
Save