All files / output zcx_abapgit_ajson_error.clas.testclasses.mjs

87.06% Statements 101/116
42.1% Branches 8/19
100% Functions 7/7
87.06% Lines 101/116

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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 1161x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 1x 4x 4x 4x 1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x     1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x     1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x     1x 1x 1x 1x 1x 1x   1x 1x 1x 1x 1x 1x 1x 1x     1x 1x 1x   1x 1x 1x 1x 1x 1x 1x 1x     1x 1x 1x 1x 1x
const {cx_static_check} = await import("./cx_static_check.clas.mjs");
const {zcx_abapgit_ajson_error} = await import("./zcx_abapgit_ajson_error.clas.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// zcx_abapgit_ajson_error.clas.testclasses.abap
class ltcl_error {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-ZCX_ABAPGIT_AJSON_ERROR-LTCL_ERROR';
  static IMPLEMENTED_INTERFACES = [];
  static ATTRIBUTES = {};
  static METHODS = {"RAISE": {"visibility": "I", "parameters": {}},
  "RAISE_W_LOCATION": {"visibility": "I", "parameters": {}},
  "RAISE_W_NODE": {"visibility": "I", "parameters": {}},
  "SET_LOCATION": {"visibility": "I", "parameters": {}}};
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
      "raise": this.#raise.bind(this),
      "raise_w_location": this.#raise_w_location.bind(this),
      "raise_w_node": this.#raise_w_node.bind(this),
      "set_location": this.#set_location.bind(this),
    };
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async #raise() {
    let lx = new abap.types.ABAPObject({qualifiedName: "ZCX_ABAPGIT_AJSON_ERROR", RTTIName: "\\CLASS=ZCX_ABAPGIT_AJSON_ERROR"});
    let lv_msg = new abap.types.String({qualifiedName: "STRING"});
    lv_msg.set(abap.operators.concat(abap.builtin.repeat({val: abap.CharacterFactory.get(1, 'a'), occ: abap.IntegerFactory.get(50)}),abap.operators.concat(abap.builtin.repeat({val: abap.CharacterFactory.get(1, 'b'), occ: abap.IntegerFactory.get(50)}),abap.CharacterFactory.get(3, '123'))));
    try {
      await abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'].raise({iv_msg: lv_msg});
      await abap.Classes['CL_ABAP_UNIT_ASSERT'].fail();
    } catch (e) {
      if ((abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'] && e instanceof abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'])) {
        lx.set(e);
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: lv_msg, act: (await lx.get().if_message$get_text())});
      } else {
        throw e;
      }
    }
  }
  async #raise_w_location() {
    let lx = new abap.types.ABAPObject({qualifiedName: "ZCX_ABAPGIT_AJSON_ERROR", RTTIName: "\\CLASS=ZCX_ABAPGIT_AJSON_ERROR"});
    try {
      await abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'].raise({iv_msg: abap.CharacterFactory.get(1, 'a'), iv_location: abap.CharacterFactory.get(1, 'b')});
      await abap.Classes['CL_ABAP_UNIT_ASSERT'].fail();
    } catch (e) {
      if ((abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'] && e instanceof abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'])) {
        lx.set(e);
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.CharacterFactory.get(4, 'a @b'), act: (await lx.get().if_message$get_text())});
      } else {
        throw e;
      }
    }
  }
  async #raise_w_node() {
    let lx = new abap.types.ABAPObject({qualifiedName: "ZCX_ABAPGIT_AJSON_ERROR", RTTIName: "\\CLASS=ZCX_ABAPGIT_AJSON_ERROR"});
    let ls_node = new abap.types.Structure({
    "path": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-PATH"}),
    "name": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-NAME"}),
    "type": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE_TYPE"}),
    "value": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-VALUE"}),
    "index": new abap.types.Integer({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-INDEX"}),
    "order": new abap.types.Integer({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-ORDER"}),
    "children": new abap.types.Integer({qualifiedName: "ZIF_ABAPGIT_AJSON_TYPES=>TY_NODE-CHILDREN"})}, "zif_abapgit_ajson_types=>ty_node", undefined, {}, {});
    ls_node.get().path.set(abap.CharacterFactory.get(3, '/x/'));
    ls_node.get().name.set(abap.CharacterFactory.get(1, 'y'));
    try {
      await abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'].raise({iv_msg: abap.CharacterFactory.get(1, 'a'), is_node: ls_node});
      await abap.Classes['CL_ABAP_UNIT_ASSERT'].fail();
    } catch (e) {
      if ((abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'] && e instanceof abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'])) {
        lx.set(e);
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.CharacterFactory.get(7, 'a @/x/y'), act: (await lx.get().if_message$get_text())});
      } else {
        throw e;
      }
    }
  }
  async #set_location() {
    let lx = new abap.types.ABAPObject({qualifiedName: "ZCX_ABAPGIT_AJSON_ERROR", RTTIName: "\\CLASS=ZCX_ABAPGIT_AJSON_ERROR"});
    try {
      await abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'].raise({iv_msg: abap.CharacterFactory.get(1, 'a'), iv_location: abap.CharacterFactory.get(1, 'b')});
      await abap.Classes['CL_ABAP_UNIT_ASSERT'].fail();
    } catch (e) {
      if ((abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'] && e instanceof abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'])) {
        lx.set(e);
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: lx.get().location, act: abap.CharacterFactory.get(1, 'b')});
        await lx.get().set_location({iv_location: abap.CharacterFactory.get(1, 'c')});
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: lx.get().location, act: abap.CharacterFactory.get(1, 'c')});
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.CharacterFactory.get(4, 'a @c'), act: (await lx.get().if_message$get_text())});
      } else {
        throw e;
      }
    }
    try {
      await abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'].raise({iv_msg: abap.CharacterFactory.get(1, 'a')});
      await abap.Classes['CL_ABAP_UNIT_ASSERT'].fail();
    } catch (e) {
      if ((abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'] && e instanceof abap.Classes['ZCX_ABAPGIT_AJSON_ERROR'])) {
        lx.set(e);
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: lx.get().location, act: abap.CharacterFactory.get(1, '')});
        await lx.get().set_location({iv_location: abap.CharacterFactory.get(1, 'c')});
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: lx.get().location, act: abap.CharacterFactory.get(1, 'c')});
        await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.CharacterFactory.get(4, 'a @c'), act: (await lx.get().if_message$get_text())});
      } else {
        throw e;
      }
    }
  }
}
abap.Classes['CLAS-ZCX_ABAPGIT_AJSON_ERROR-LTCL_ERROR'] = ltcl_error;
export {ltcl_error};