All files Secret.ts

100% Statements 7/7
100% Branches 0/0
100% Functions 5/5
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 16 17 18 19 20 21 22 23 24 252x       22x       11x       7x       7x       14x 14x      
export class SecretString {
  private _value: string;
 
  constructor(value: string) {
    this._value = value;
  }
 
  value(): string {
    return this._value;
  }
 
  toString(): string {
    return this.mask();
  }
 
  toJSON(): string {
    return this.mask();
  }
 
  private mask(): string {
    const unmaskedLength = Math.max(this._value.length - 3, 0);
    return this._value.substring(0, unmaskedLength) + "**********";
  }
}