All files / output zcl_abapgit_object_zag1.clas.testclasses.mjs

15.38% Statements 20/130
75% Branches 3/4
33.33% Functions 2/6
15.38% Lines 20/130

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 116 117 118 119 120 121 122 123 124 125 126 127 128 129 1301x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x             1x       1x                                     1x 1x               1x                                                                                                                                                         1x 1x 1x 1x
const {zcl_abapgit_objects_super} = await import("./zcl_abapgit_objects_super.clas.mjs");
const {zcl_abapgit_object_zag1} = await import("./zcl_abapgit_object_zag1.clas.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// zcl_abapgit_object_zag1.clas.testclasses.abap
class lcl_tr_object_table {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_OBJECT_ZAG1-LCL_TR_OBJECT_TABLE';
  static IMPLEMENTED_INTERFACES = ["IF_FTD_INVOCATION_ANSWER"];
  static ATTRIBUTES = {};
  static METHODS = {};
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
    };
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async if_ftd_invocation_answer$answer(INPUT) {
    let $arguments = INPUT?.arguments;
    if ($arguments?.getQualifiedName === undefined || $arguments.getQualifiedName() !== "IF_FTD_INPUT_ARGUMENTS") { $arguments = undefined; }
    if ($arguments === undefined) { $arguments = new abap.types.ABAPObject({qualifiedName: "IF_FTD_INPUT_ARGUMENTS", RTTIName: "\\INTERFACE=IF_FTD_INPUT_ARGUMENTS"}).set(INPUT.arguments); }
    let result = new abap.types.ABAPObject({qualifiedName: "IF_FTD_INVOCATION_RESULT", RTTIName: "\\INTERFACE=IF_FTD_INVOCATION_RESULT"});
    if (INPUT && INPUT.result) {result = INPUT.result;}
    let lt_objects = abap.types.TableFactory.construct(new abap.types.Structure({
    "pgmid": new abap.types.Character(4, {}),
    "object": new abap.types.Character(4, {}),
    "text": new abap.types.Character(60, {})}, "KO100", "KO100", {}, {}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"name":"primary_key","type":"STANDARD","isUnique":false,"keyFields":[]},"secondary":[]}, "");
    let ls_object = new abap.types.Structure({
    "pgmid": new abap.types.Character(4, {}),
    "object": new abap.types.Character(4, {}),
    "text": new abap.types.Character(60, {})}, "KO100", "KO100", {}, {});
    ls_object.get().pgmid.set(abap.CharacterFactory.get(4, 'R3TR'));
    ls_object.get().object.set(abap.CharacterFactory.get(4, 'ZAG1'));
    abap.statements.insertInternal({data: ls_object, table: lt_objects});
    await (await result.get().if_ftd_invocation_result$get_output_configuration()).get().if_ftd_output_configuration$set_table_parameter({name: abap.CharacterFactory.get(14, 'WT_OBJECT_TEXT'), value: lt_objects});
  }
}
abap.Classes['CLAS-ZCL_ABAPGIT_OBJECT_ZAG1-LCL_TR_OBJECT_TABLE'] = lcl_tr_object_table;
class ltcl_test {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_OBJECT_ZAG1-LTCL_TEST';
  static IMPLEMENTED_INTERFACES = ["IF_FTD_INVOCATION_ANSWER"];
  static ATTRIBUTES = {"MI_ENV": {"type": () => {return new abap.types.ABAPObject({qualifiedName: "IF_FUNCTION_TEST_ENVIRONMENT", RTTIName: "\\INTERFACE=IF_FUNCTION_TEST_ENVIRONMENT"});}, "visibility": "I", "is_constant": " ", "is_class": " "},
  "C_PACKAGE": {"type": () => {return new abap.types.Character(30, {"qualifiedName":"DEVCLASS","ddicName":"DEVCLASS","description":"DEVCLASS"});}, "visibility": "I", "is_constant": "X", "is_class": "X"}};
  static METHODS = {"SETUP": {"visibility": "I", "parameters": {}},
  "TEARDOWN": {"visibility": "I", "parameters": {}},
  "UPSERT": {"visibility": "I", "parameters": {}}};
  #mi_env;
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
      "setup": this.#setup.bind(this),
      "teardown": this.#teardown.bind(this),
      "upsert": this.#upsert.bind(this),
    };
    this.#mi_env = new abap.types.ABAPObject({qualifiedName: "IF_FUNCTION_TEST_ENVIRONMENT", RTTIName: "\\INTERFACE=IF_FUNCTION_TEST_ENVIRONMENT"});
    this.FRIENDS_ACCESS_INSTANCE["mi_env"] = this.#mi_env;
    this.c_package = ltcl_test.c_package;
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async #setup() {
    let lt_deps = abap.types.TableFactory.construct(new abap.types.Character(30, {"qualifiedName":"SXCO_FM_NAME","ddicName":"SXCO_FM_NAME","description":"Function module name"}), {"withHeader":false,"keyType":"USER","primaryKey":{"name":"primary_key","type":"STANDARD","isUnique":false,"keyFields":["TABLE_LINE"]},"secondary":[]}, "if_function_test_environment=>tt_function_dependencies");
    let lo_initial = new abap.types.ABAPObject({qualifiedName: "ZIF_ABAPGIT_REPO_SRV", RTTIName: "\\INTERFACE=ZIF_ABAPGIT_REPO_SRV"});
    let lo_tr_object_table = new abap.types.ABAPObject({qualifiedName: "LCL_TR_OBJECT_TABLE", RTTIName: "\\CLASS-POOL=ZCL_ABAPGIT_OBJECT_ZAG1\\CLASS=LCL_TR_OBJECT_TABLE"});
    let lo_environment = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_WEB_ENVIRONMENT", RTTIName: "\\CLASS=ZCL_ABAPGIT_WEB_ENVIRONMENT"});
    await abap.Classes['ZCL_ABAPGIT_REPO_SRV'].inject_instance({ii_srv: lo_initial});
    lo_tr_object_table.set(await (new abap.Classes['CLAS-ZCL_ABAPGIT_OBJECT_ZAG1-LCL_TR_OBJECT_TABLE']()).constructor_());
    abap.statements.insertInternal({data: abap.CharacterFactory.get(17, 'ENQUEUE_EZABAPGIT'), table: lt_deps});
    abap.statements.insertInternal({data: abap.CharacterFactory.get(17, 'DEQUEUE_EZABAPGIT'), table: lt_deps});
    abap.statements.insertInternal({data: abap.CharacterFactory.get(15, 'TR_OBJECT_TABLE'), table: lt_deps});
    abap.statements.insertInternal({data: abap.CharacterFactory.get(25, 'SAPGUI_PROGRESS_INDICATOR'), table: lt_deps});
    this.#mi_env.set((await abap.Classes['CL_FUNCTION_TEST_ENVIRONMENT'].create({function_modules: lt_deps})));
    await (await (await (await this.#mi_env.get().if_function_test_environment$get_double({function_name: abap.CharacterFactory.get(17, 'ENQUEUE_EZABAPGIT')})).get().if_function_testdouble$configure_call()).get().if_ftd_input_config_setter$ignore_all_parameters()).get().if_ftd_output_config_setter$then_answer({answer: this.me});
    await (await (await (await this.#mi_env.get().if_function_test_environment$get_double({function_name: abap.CharacterFactory.get(17, 'DEQUEUE_EZABAPGIT')})).get().if_function_testdouble$configure_call()).get().if_ftd_input_config_setter$ignore_all_parameters()).get().if_ftd_output_config_setter$then_answer({answer: this.me});
    await (await (await (await this.#mi_env.get().if_function_test_environment$get_double({function_name: abap.CharacterFactory.get(25, 'SAPGUI_PROGRESS_INDICATOR')})).get().if_function_testdouble$configure_call()).get().if_ftd_input_config_setter$ignore_all_parameters()).get().if_ftd_output_config_setter$then_answer({answer: this.me});
    await (await (await (await this.#mi_env.get().if_function_test_environment$get_double({function_name: abap.CharacterFactory.get(15, 'TR_OBJECT_TABLE')})).get().if_function_testdouble$configure_call()).get().if_ftd_input_config_setter$ignore_all_parameters()).get().if_ftd_output_config_setter$then_answer({answer: lo_tr_object_table});
    lo_environment.set(await (new abap.Classes['ZCL_ABAPGIT_WEB_ENVIRONMENT']()).constructor_());
    await abap.Classes['ZCL_ABAPGIT_INJECTOR'].set_environment({ii_environment: lo_environment});
  }
  async #teardown() {
    let li_environment = new abap.types.ABAPObject({qualifiedName: "ZIF_ABAPGIT_ENVIRONMENT", RTTIName: "\\INTERFACE=ZIF_ABAPGIT_ENVIRONMENT"});
    await this.#mi_env.get().if_function_test_environment$clear_doubles();
    await abap.Classes['ZCL_ABAPGIT_INJECTOR'].set_environment({ii_environment: li_environment});
  }
  async if_ftd_invocation_answer$answer(INPUT) {
    let $arguments = INPUT?.arguments;
    if ($arguments?.getQualifiedName === undefined || $arguments.getQualifiedName() !== "IF_FTD_INPUT_ARGUMENTS") { $arguments = undefined; }
    if ($arguments === undefined) { $arguments = new abap.types.ABAPObject({qualifiedName: "IF_FTD_INPUT_ARGUMENTS", RTTIName: "\\INTERFACE=IF_FTD_INPUT_ARGUMENTS"}).set(INPUT.arguments); }
    let result = new abap.types.ABAPObject({qualifiedName: "IF_FTD_INVOCATION_RESULT", RTTIName: "\\INTERFACE=IF_FTD_INVOCATION_RESULT"});
    if (INPUT && INPUT.result) {result = INPUT.result;}
    return;
  }
  async #upsert() {
    let lo_online = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_REPO_ONLINE", RTTIName: "\\CLASS=ZCL_ABAPGIT_REPO_ONLINE"});
    let lt_result = abap.types.TableFactory.construct(new abap.types.Structure({
    "obj_type": new abap.types.Character(4, {}),
    "obj_name": new abap.types.Character(40, {}),
    "inactive": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
    "path": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_DEFINITIONS=>TY_RESULT-PATH"}),
    "filename": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_DEFINITIONS=>TY_RESULT-FILENAME"}),
    "package": new abap.types.Character(30, {"qualifiedName":"DEVCLASS","ddicName":"DEVCLASS","description":"DEVCLASS"}),
    "match": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
    "lstate": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_git_definitions=>ty_item_state"}),
    "rstate": new abap.types.Character(1, {"qualifiedName":"zif_abapgit_git_definitions=>ty_item_state"}),
    "packmove": new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"}),
    "srcsystem": new abap.types.Character(5, {}),
    "origlang": new abap.types.Character(1, {})}, "zif_abapgit_definitions=>ty_result", undefined, {}, {}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"name":"primary_key","type":"STANDARD","isUnique":false,"keyFields":[]},"secondary":[{"name":"sec_key","type":"SORTED","isUnique":false,"keyFields":["OBJ_TYPE","OBJ_NAME"]}]}, "zif_abapgit_definitions=>ty_results_tt");
    let lv_url = new abap.types.String({qualifiedName: "STRING"});
    abap.statements.assert(abap.compare.eq(abap.builtin.sy.get().sysid, abap.CharacterFactory.get(3, 'ABC')));
    lv_url.set((await abap.Classes['ZCL_ABAPGIT_GITEA'].create_repo({iv_name: abap.operators.concat(abap.CharacterFactory.get(5, 'repo-'),(await abap.Classes['CL_SYSTEM_UUID'].if_system_uuid_static$create_uuid_x16()))})));
    await abap.Classes['ZCL_ABAPGIT_OBJECT_ZAG1'].upsert({iv_name: abap.CharacterFactory.get(9, 'ZAG1_NAME'), iv_value: abap.CharacterFactory.get(5, 'hello'), iv_package: ltcl_test.c_package});
    await abap.statements.cast(lo_online, (await (await abap.Classes['ZCL_ABAPGIT_REPO_SRV'].get_instance()).get().zif_abapgit_repo_srv$new_online({iv_url: lv_url, iv_package: ltcl_test.c_package})));
    await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_not_initial({act: lo_online});
    lt_result.set((await abap.Classes['ZCL_ABAPGIT_REPO_STATUS'].calculate({ii_repo: lo_online})));
    await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.builtin.lines({val: lt_result}), act: abap.IntegerFactory.get(2)});
  }
}
abap.Classes['CLAS-ZCL_ABAPGIT_OBJECT_ZAG1-LTCL_TEST'] = ltcl_test;
ltcl_test.c_package = new abap.types.Character(30, {"qualifiedName":"DEVCLASS","ddicName":"DEVCLASS","description":"DEVCLASS"});
ltcl_test.c_package.set('ZFOOBAR');
export {lcl_tr_object_table, ltcl_test};