All files / output zcl_abapgit_integration_git.clas.testclasses.mjs

34.17% Statements 27/79
100% Branches 3/3
22.22% Functions 2/9
34.17% Lines 27/79

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 791x 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 {zcl_abapgit_integration_git} = await import("./zcl_abapgit_integration_git.clas.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// zcl_abapgit_integration_git.clas.testclasses.abap
class lcl_memory_settings {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_INTEGRATION_GIT-LCL_MEMORY_SETTINGS';
  static IMPLEMENTED_INTERFACES = ["ZIF_ABAPGIT_PERSIST_SETTINGS"];
  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 zif_abapgit_persist_settings$modify(INPUT) {
    let io_settings = INPUT?.io_settings;
    if (io_settings?.getQualifiedName === undefined || io_settings.getQualifiedName() !== "ZCL_ABAPGIT_SETTINGS") { io_settings = undefined; }
    if (io_settings === undefined) { io_settings = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_SETTINGS", RTTIName: "\\CLASS=ZCL_ABAPGIT_SETTINGS"}).set(INPUT.io_settings); }
    return;
  }
  async zif_abapgit_persist_settings$read() {
    let ro_settings = new abap.types.ABAPObject({qualifiedName: "ZCL_ABAPGIT_SETTINGS", RTTIName: "\\CLASS=ZCL_ABAPGIT_SETTINGS"});
    ro_settings.set(await (new abap.Classes['ZCL_ABAPGIT_SETTINGS']()).constructor_());
    return ro_settings;
  }
}
abap.Classes['CLAS-ZCL_ABAPGIT_INTEGRATION_GIT-LCL_MEMORY_SETTINGS'] = lcl_memory_settings;
class ltcl_test {
  static INTERNAL_TYPE = 'CLAS';
  static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_INTEGRATION_GIT-LTCL_TEST';
  static IMPLEMENTED_INTERFACES = [];
  static ATTRIBUTES = {};
  static METHODS = {"TEST01": {"visibility": "I", "parameters": {}}};
  constructor() {
    this.me = new abap.types.ABAPObject();
    this.me.set(this);
    this.INTERNAL_ID = abap.internalIdCounter++;
    this.FRIENDS_ACCESS_INSTANCE = {
      "test01": this.#test01.bind(this),
    };
  }
  async constructor_(INPUT) {
    if (super.constructor_) { await super.constructor_(INPUT); }
    return this;
  }
  async #test01() {
    let lc_url = new abap.types.String({qualifiedName: "STRING"});
    lc_url.set('https://github.com/larshp/Empty.git');
    let lv_ref = new abap.types.String({qualifiedName: "STRING"});
    let li_memory = new abap.types.ABAPObject({qualifiedName: "LCL_MEMORY_SETTINGS", RTTIName: "\\CLASS-POOL=ZCL_ABAPGIT_INTEGRATION_GIT\\CLASS=LCL_MEMORY_SETTINGS"});
    let ls_pull = new abap.types.Structure({
    "files": abap.types.TableFactory.construct(new abap.types.Structure({
    "path": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_GIT_DEFINITIONS=>TY_FILE_SIGNATURE-PATH"}),
    "filename": new abap.types.String({qualifiedName: "ZIF_ABAPGIT_GIT_DEFINITIONS=>TY_FILE_SIGNATURE-FILENAME"}),
    "sha1": new abap.types.Character(40, {"qualifiedName":"zif_abapgit_git_definitions=>ty_sha1"}),
    "data": new abap.types.XString({qualifiedName: "ZIF_ABAPGIT_GIT_DEFINITIONS=>TY_FILE-DATA"})}, "zif_abapgit_git_definitions=>ty_file", undefined, {}, {}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"name":"primary_key","type":"STANDARD","isUnique":false,"keyFields":[]},"secondary":[{"name":"file_path","type":"SORTED","isUnique":true,"keyFields":["PATH","FILENAME"]},{"name":"file","type":"SORTED","isUnique":false,"keyFields":["FILENAME"]}]}, "zif_abapgit_git_definitions=>ty_files_tt"),
    "objects": abap.types.TableFactory.construct(new abap.types.Structure({
    "sha1": new abap.types.Character(40, {"qualifiedName":"zif_abapgit_git_definitions=>ty_sha1"}),
    "type": new abap.types.Character(6, {"qualifiedName":"zif_abapgit_git_definitions=>ty_type"}),
    "data": new abap.types.XString({qualifiedName: "ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECT-DATA"}),
    "adler32": new abap.types.Hex({length: 4}),
    "index": new abap.types.Integer({qualifiedName: "ZIF_ABAPGIT_DEFINITIONS=>TY_OBJECT-INDEX"})}, "zif_abapgit_definitions=>ty_object", undefined, {}, {}), {"withHeader":false,"keyType":"DEFAULT","primaryKey":{"name":"primary_key","type":"STANDARD","isUnique":false,"keyFields":[]},"secondary":[{"name":"sha","type":"SORTED","isUnique":false,"keyFields":["SHA1"]},{"name":"type","type":"SORTED","isUnique":false,"keyFields":["TYPE","SHA1"]}]}, "zif_abapgit_definitions=>ty_objects_tt"),
    "commit": new abap.types.Character(40, {"qualifiedName":"zif_abapgit_git_definitions=>ty_sha1"})}, "zcl_abapgit_git_porcelain=>ty_pull_result", undefined, {}, {});
    li_memory.set(await (new abap.Classes['CLAS-ZCL_ABAPGIT_INTEGRATION_GIT-LCL_MEMORY_SETTINGS']()).constructor_());
    await abap.Classes['ZCL_ABAPGIT_PERSIST_INJECTOR'].set_settings({ii_settings: li_memory});
    lv_ref.set((await (await (await abap.Classes['ZCL_ABAPGIT_GIT_FACTORY'].get_git_transport()).get().zif_abapgit_git_transport$branches({iv_url: lc_url})).get().zif_abapgit_git_branch_list$get_head_symref()));
    await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_ref, exp: abap.CharacterFactory.get(15, 'refs/heads/main')});
    ls_pull.set((await abap.Classes['ZCL_ABAPGIT_GIT_PORCELAIN'].pull_by_branch({iv_url: lc_url, iv_branch_name: lv_ref})));
    await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: abap.builtin.lines({val: ls_pull.get().files}), exp: abap.IntegerFactory.get(3)});
  }
}
abap.Classes['CLAS-ZCL_ABAPGIT_INTEGRATION_GIT-LTCL_TEST'] = ltcl_test;
export {lcl_memory_settings, ltcl_test};