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 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 1x 5x 5x 5x 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 1x 1x 1x 1x 1x 1x 1x | const {zcl_abapgit_path} = await import("./zcl_abapgit_path.clas.mjs");
const {cx_root} = await import("./cx_root.clas.mjs");
// zcl_abapgit_path.clas.testclasses.abap
class ltcl_path {
static INTERNAL_TYPE = 'CLAS';
static INTERNAL_NAME = 'CLAS-ZCL_ABAPGIT_PATH-LTCL_PATH';
static IMPLEMENTED_INTERFACES = [];
static ATTRIBUTES = {};
static METHODS = {"IS_ROOT": {"visibility": "U", "parameters": {}},
"SPLIT_FILE_LOCATION": {"visibility": "U", "parameters": {}},
"IS_SUBDIR": {"visibility": "U", "parameters": {}},
"CHANGE_DIR": {"visibility": "U", "parameters": {}},
"GET_FILENAME_FROM_SYSPATH": {"visibility": "U", "parameters": {}}};
constructor() {
this.me = new abap.types.ABAPObject();
this.me.set(this);
this.INTERNAL_ID = abap.internalIdCounter++;
this.FRIENDS_ACCESS_INSTANCE = {
"is_root": this.is_root.bind(this),
"split_file_location": this.split_file_location.bind(this),
"is_subdir": this.is_subdir.bind(this),
"change_dir": this.change_dir.bind(this),
"get_filename_from_syspath": this.get_filename_from_syspath.bind(this),
};
}
async constructor_(INPUT) {
if (super.constructor_) { await super.constructor_(INPUT); }
return this;
}
async is_root() {
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.builtin.abap_true, act: (await abap.Classes['ZCL_ABAPGIT_PATH'].is_root({iv_path: abap.CharacterFactory.get(1, '/')}))});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.builtin.abap_false, act: (await abap.Classes['ZCL_ABAPGIT_PATH'].is_root({iv_path: abap.CharacterFactory.get(1, '')}))});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.builtin.abap_false, act: (await abap.Classes['ZCL_ABAPGIT_PATH'].is_root({iv_path: abap.CharacterFactory.get(7, 'somedir')}))});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({exp: abap.builtin.abap_false, act: (await abap.Classes['ZCL_ABAPGIT_PATH'].is_root({iv_path: abap.CharacterFactory.get(8, '/somedir')}))});
}
async split_file_location() {
let lv_path = new abap.types.String({qualifiedName: "STRING"});
let lv_name = new abap.types.String({qualifiedName: "STRING"});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(1, ''), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(1, '')});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(8, 'somefile'), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(8, 'somefile')});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(1, '/'), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '/')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(1, '')});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(9, '/somefile'), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '/')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(8, 'somefile')});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(9, '/somedir/'), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(9, '/somedir/')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(1, '')});
await abap.Classes['ZCL_ABAPGIT_PATH'].split_file_location({iv_fullpath: abap.CharacterFactory.get(17, '/somedir/somefile'), ev_path: lv_path, ev_filename: lv_name});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(9, '/somedir/')});
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_name, exp: abap.CharacterFactory.get(8, 'somefile')});
}
async is_subdir() {
let lv_yes = new abap.types.Character(1, {"qualifiedName":"ABAP_BOOL","ddicName":"ABAP_BOOL"});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(11, '/dir/subdir'), iv_parent: abap.CharacterFactory.get(4, '/dir')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_true});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(11, '/dir/subdir'), iv_parent: abap.CharacterFactory.get(5, '/dir/')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_true});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(8, '/another'), iv_parent: abap.CharacterFactory.get(4, '/dir')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_false});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(4, '/dir'), iv_parent: abap.CharacterFactory.get(4, '/dir')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_false});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(4, '/dir'), iv_parent: abap.CharacterFactory.get(1, '/')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_true});
lv_yes.set((await abap.Classes['ZCL_ABAPGIT_PATH'].is_subdir({iv_path: abap.CharacterFactory.get(5, '/dir2'), iv_parent: abap.CharacterFactory.get(4, '/dir')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_yes, exp: abap.builtin.abap_false});
}
async change_dir() {
let lv_path = new abap.types.String({qualifiedName: "STRING"});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(1, ''), iv_cd: abap.CharacterFactory.get(1, '')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(4, '/dir'), iv_cd: abap.CharacterFactory.get(1, '')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(4, '/dir')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(4, '/dir'), iv_cd: abap.CharacterFactory.get(1, '.')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(4, '/dir')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(4, '/dir'), iv_cd: abap.CharacterFactory.get(2, '..')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(1, '/')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(8, '/dir/sub'), iv_cd: abap.CharacterFactory.get(2, '..')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(5, '/dir/')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(5, '/dir/'), iv_cd: abap.CharacterFactory.get(3, 'sub')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(8, '/dir/sub')});
lv_path.set((await abap.Classes['ZCL_ABAPGIT_PATH'].change_dir({iv_cur_dir: abap.CharacterFactory.get(4, '/dir'), iv_cd: abap.CharacterFactory.get(3, 'sub')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_path, exp: abap.CharacterFactory.get(8, '/dir/sub')});
}
async get_filename_from_syspath() {
let lv_filename = new abap.types.String({qualifiedName: "STRING"});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(8, 'file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(15, 'c:\\dir\\file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(11, 'c:\\file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(13, '/dir/file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(9, '/file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(18, '\\\\server$\\file.txt')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(8, 'file.txt')});
lv_filename.set((await abap.Classes['ZCL_ABAPGIT_PATH'].get_filename_from_syspath({iv_path: abap.CharacterFactory.get(80, 'C:\\foo\\bar\\moo.boo\\dev\\qas\\_blah\\goog\\muuh\\sap\\hello\\world\\lorem\\ipsum\\s_foo.gif')})));
await abap.Classes['CL_ABAP_UNIT_ASSERT'].assert_equals({act: lv_filename, exp: abap.CharacterFactory.get(9, 's_foo.gif')});
}
}
abap.Classes['CLAS-ZCL_ABAPGIT_PATH-LTCL_PATH'] = ltcl_path;
export {ltcl_path}; |