All files / src/abap/types message.ts

89.47% Statements 34/38
80% Branches 8/10
100% Functions 5/5
89.47% Lines 34/38

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 26 27 28 29 30 31 32 33 34 35 36 37 381x 1x 1x 1x 1x 1x 1x 45x 45x 1x 1x 45x 45x     45x 45x     45x 1x 1x 9x 9x 1x 1x 61x 61x 1x 1x 71x 71x 1x 1x 21x 21x 21x 1x
export class Message {
  private readonly number: string;
  // the actual text,
  private readonly message: string;
  private readonly className: string;
 
  public constructor(number: string, message: string, className: string) {
    this.number = number;
    if (this.number === undefined) {
      this.number = "";
    }
    this.message = message;
    if (this.message === undefined) {
      this.message = "";
    }
    this.className = className;
    if (this.className === undefined) {
      this.className = "";
    }
  }
 
  public getMessageClass(): string {
    return this.className;
  }
 
  public getNumber(): string {
    return this.number;
  }
 
  public getMessage(): string {
    return this.message;
  }
 
  public getPlaceholderCount(): number {
    const escaped = (this.getMessage().match(/&&/g) || []).length;
    return (this.getMessage().match(/&/g) || []).length - escaped * 2;
  }
}