All files / rmrk1.0.0/classes changeissuer.ts

70% Statements 7/10
100% Branches 0/0
100% Functions 2/2
70% Lines 7/10

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              3x 3x       3x 3x 3x 3x 3x                
import { validateChangeIssuer } from "../../tools/validate-remark";
 
export class ChangeIssuer {
  issuer: string;
  id: string;
 
  constructor(issuer: string, id: string) {
    this.issuer = issuer;
    this.id = id;
  }
 
  static fromRemark(remark: string): ChangeIssuer | string {
    const exploded = remark.split("::");
    try {
      validateChangeIssuer(remark);
      const [prefix, op_type, version, id, issuer] = remark.split("::");
      return new ChangeIssuer(issuer, id);
    } catch (e) {
      console.error(e.message);
      console.log(`CHANGEISSUER error: full input was ${remark}`);
      return e.message;
    }
  }
}