All files / src/app/shared/pipes ordinal.pipe.ts

60% Statements 6/10
0% Branches 0/10
50% Functions 1/2
50% Lines 4/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2699x         99x 99x                                   99x  
import { Pipe, PipeTransform } from '@angular/core';
 
@Pipe({
  name: 'ordinal'
})
export class OrdinalPipe implements PipeTransform {
  transform(value: any): any {
    const num = parseInt(value, 10);
    if (isNaN(num)) {
      return value;
    }
    return (
      value +
      (Math.floor(num / 10) === 1
        ? 'th'
        : num % 10 === 1
        ? 'st'
        : num % 10 === 2
        ? 'nd'
        : num % 10 === 3
        ? 'rd'
        : 'th')
    );
  }
}