All files / array/operator takeWhileInclusive.ts

100% Statements 9/9
100% Branches 2/2
100% Functions 2/2
100% Lines 7/7

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    3x 8x 8x 5x 5x 2x     4x        
import {Predicate} from 'fnxt/fnxt-types';
 
export const takeWhileInclusive = <T>(predicate: Predicate<T>) => (array: T[]): T[] => {
  const result = [];
  for (const element of array) {
    result.push(element);
    if (!predicate(element)) {
      break;
    }
  }
  return result;
};