Fix coverage with several contract classes; table annotation and file path checks; clean task dir on write
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
This commit is contained in:
13
tasks_gen/eval/G0109/reference/i_employee.ddls.asddls
Normal file
13
tasks_gen/eval/G0109/reference/i_employee.ddls.asddls
Normal file
@@ -0,0 +1,13 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Employee'
|
||||
define view entity {{P}}I_EMPLOYEE
|
||||
as select from {{p}}emp
|
||||
association [0..1] to {{P}}I_MANAGER as _Manager
|
||||
on $projection.manager_id = _Manager.mgr_id
|
||||
{
|
||||
key emp_id as emp_id,
|
||||
manager_id as manager_id,
|
||||
emp_name as emp_name,
|
||||
department as department,
|
||||
_Manager
|
||||
}
|
||||
11
tasks_gen/eval/G0109/reference/i_manager.ddls.asddls
Normal file
11
tasks_gen/eval/G0109/reference/i_manager.ddls.asddls
Normal file
@@ -0,0 +1,11 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Manager'
|
||||
define view entity {{P}}I_MANAGER
|
||||
as select from {{p}}emp
|
||||
{
|
||||
key emp_id as mgr_id,
|
||||
emp_name as mgr_name,
|
||||
department as mgr_dept
|
||||
}
|
||||
where
|
||||
is_manager = 'X'
|
||||
47
tasks_gen/eval/G0109/reference/t31_test.clas.abap
Normal file
47
tasks_gen/eval/G0109/reference/t31_test.clas.abap
Normal file
@@ -0,0 +1,47 @@
|
||||
CLASS {{p}}t31_test DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
CLASS-DATA go_env TYPE REF TO if_cds_test_environment.
|
||||
CLASS-METHODS class_setup.
|
||||
CLASS-METHODS class_teardown.
|
||||
METHODS setup.
|
||||
METHODS manager_of_employee FOR TESTING.
|
||||
METHODS manager_view_shown FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t31_test IMPLEMENTATION.
|
||||
METHOD class_setup.
|
||||
go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_EMPLOYEE' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD class_teardown.
|
||||
go_env->destroy( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD setup.
|
||||
DATA lt_emp TYPE STANDARD TABLE OF {{p}}emp WITH EMPTY KEY.
|
||||
go_env->clear_doubles( ).
|
||||
lt_emp = VALUE #(
|
||||
( emp_id = 'E1' manager_id = '' emp_name = 'Anna' department = 'IT' is_manager = 'X' )
|
||||
( emp_id = 'E2' manager_id = 'E1' emp_name = 'Ben' department = 'HR' is_manager = 'X' )
|
||||
( emp_id = 'E3' manager_id = 'E1' emp_name = 'Cara' department = 'IT' is_manager = '' )
|
||||
( emp_id = 'E4' manager_id = 'E2' emp_name = 'Dan' department = 'HR' is_manager = '' )
|
||||
( emp_id = 'E5' manager_id = 'E2' emp_name = 'Eve' department = 'IT' is_manager = '' )
|
||||
( emp_id = 'E6' manager_id = 'E3' emp_name = 'Fay' department = 'IT' is_manager = '' ) ).
|
||||
go_env->insert_test_data( lt_emp ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD manager_of_employee.
|
||||
SELECT FROM {{p}}i_employee\_manager
|
||||
FIELDS mgr_name
|
||||
WHERE mgr_name <> ''
|
||||
INTO TABLE @DATA(lt_mgr).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 4 act = lines( lt_mgr ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD manager_view_shown.
|
||||
SELECT COUNT(*) FROM {{p}}i_manager INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 2 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user