Stage 2 summary at 50 accepted trajectories
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
102
tasks_gen/train/G1137/hidden/t42_hidden.clas.abap
Normal file
102
tasks_gen/train/G1137/hidden/t42_hidden.clas.abap
Normal file
@@ -0,0 +1,102 @@
|
||||
CLASS {{p}}t42_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
METHODS call
|
||||
IMPORTING
|
||||
iv_style TYPE string
|
||||
iv_sessions TYPE i
|
||||
iv_fee TYPE decfloat34 DEFAULT 0
|
||||
EXPORTING
|
||||
ev_deposit TYPE abap_bool
|
||||
ev_fee TYPE decfloat34
|
||||
ev_subrc TYPE sysubrc.
|
||||
METHODS line_minimum FOR TESTING.
|
||||
METHODS line_two_sessions FOR TESTING.
|
||||
METHODS line_three_sessions FOR TESTING.
|
||||
METHODS line_maximum FOR TESTING.
|
||||
METHODS shade_minimum FOR TESTING.
|
||||
METHODS shade_two_sessions FOR TESTING.
|
||||
METHODS shade_maximum FOR TESTING.
|
||||
METHODS other_style_zero FOR TESTING.
|
||||
METHODS invalid_sessions FOR TESTING.
|
||||
METHODS deposit_long_project FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t42_hidden IMPLEMENTATION.
|
||||
METHOD call.
|
||||
ev_fee = iv_fee.
|
||||
CALL FUNCTION '{{P}}TATTOO_FEE'
|
||||
EXPORTING
|
||||
iv_style = iv_style
|
||||
iv_sessions = iv_sessions
|
||||
IMPORTING
|
||||
ev_deposit = ev_deposit
|
||||
CHANGING
|
||||
cv_fee = ev_fee
|
||||
EXCEPTIONS
|
||||
invalid_sessions = 1
|
||||
OTHERS = 2.
|
||||
ev_subrc = sy-subrc.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD line_minimum.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 1 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '150.00' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD line_two_sessions.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 2 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '200.00' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD line_three_sessions.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 3 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '266.67' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD line_maximum.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 12 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '800.00' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD shade_minimum.
|
||||
call( EXPORTING iv_style = `SHADE` iv_sessions = 1 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '110.00' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD shade_two_sessions.
|
||||
call( EXPORTING iv_style = `SHADE` iv_sessions = 2 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '146.66' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD shade_maximum.
|
||||
call( EXPORTING iv_style = `SHADE` iv_sessions = 12 IMPORTING ev_fee = DATA(lv_fee) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '600.00' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD other_style_zero.
|
||||
call( EXPORTING iv_style = `XX` iv_sessions = 3
|
||||
IMPORTING ev_fee = DATA(lv_fee) ev_deposit = DATA(lv_deposit) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( 0 ) act = lv_fee ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = abap_false act = lv_deposit ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD invalid_sessions.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 0 IMPORTING ev_subrc = DATA(lv_rc) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 1 act = lv_rc ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD deposit_long_project.
|
||||
DATA lv_fee TYPE decfloat34.
|
||||
DATA lv_deposit TYPE abap_bool.
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 6
|
||||
IMPORTING ev_fee = lv_fee ev_deposit = lv_deposit ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = abap_false act = lv_deposit ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '466.68' ) act = lv_fee ).
|
||||
call( EXPORTING iv_style = `LINE` iv_sessions = 7
|
||||
IMPORTING ev_fee = lv_fee ev_deposit = lv_deposit ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = abap_true act = lv_deposit ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '533.35' ) act = lv_fee ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user