Pipeline controller: plan 2 (hard +, error +50 %), backlog throttle, 2 trajectory workers, stop rules, summaries every 50; budget reserve
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
16
tasks_gen/train/G1032/faulty/m1_i_tutor_load.ddls.asddls
Normal file
16
tasks_gen/train/G1032/faulty/m1_i_tutor_load.ddls.asddls
Normal file
@@ -0,0 +1,16 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Tutor load'
|
||||
define view entity {{P}}I_TUTOR_LOAD
|
||||
as select from {{p}}tutor as tutor
|
||||
inner join {{p}}lesson as lesson on lesson.tutor_id <> tutor.tutor_id
|
||||
{
|
||||
key tutor.tutor_id as tutor_id,
|
||||
tutor.tutor_name as tutor_name,
|
||||
count( * ) as lesson_count,
|
||||
sum( lesson.dur_min ) as total_minutes
|
||||
}
|
||||
where lesson.dur_min > 0
|
||||
group by
|
||||
tutor.tutor_id,
|
||||
tutor.tutor_name
|
||||
having count( * ) >= 3
|
||||
16
tasks_gen/train/G1032/faulty/m2_i_tutor_load.ddls.asddls
Normal file
16
tasks_gen/train/G1032/faulty/m2_i_tutor_load.ddls.asddls
Normal file
@@ -0,0 +1,16 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Tutor load'
|
||||
define view entity {{P}}I_TUTOR_LOAD
|
||||
as select from {{p}}tutor as tutor
|
||||
inner join {{p}}lesson as lesson on lesson.tutor_id = tutor.tutor_id
|
||||
{
|
||||
key tutor.tutor_id as tutor_id,
|
||||
tutor.tutor_name as tutor_name,
|
||||
count( * ) as lesson_count,
|
||||
max( lesson.dur_min ) as total_minutes
|
||||
}
|
||||
where lesson.dur_min > 0
|
||||
group by
|
||||
tutor.tutor_id,
|
||||
tutor.tutor_name
|
||||
having count( * ) >= 3
|
||||
16
tasks_gen/train/G1032/faulty/m3_i_tutor_load.ddls.asddls
Normal file
16
tasks_gen/train/G1032/faulty/m3_i_tutor_load.ddls.asddls
Normal file
@@ -0,0 +1,16 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Tutor load'
|
||||
define view entity {{P}}I_TUTOR_LOAD
|
||||
as select from {{p}}tutor as tutor
|
||||
inner join {{p}}lesson as lesson on lesson.tutor_id = tutor.tutor_id
|
||||
{
|
||||
key tutor.tutor_id as tutor_id,
|
||||
tutor.tutor_name as tutor_name,
|
||||
count( * ) as lesson_count,
|
||||
sum( lesson.dur_min ) as total_minutes
|
||||
}
|
||||
where lesson.dur_min <= 0
|
||||
group by
|
||||
tutor.tutor_id,
|
||||
tutor.tutor_name
|
||||
having count( * ) >= 3
|
||||
16
tasks_gen/train/G1032/faulty/m4_i_tutor_load.ddls.asddls
Normal file
16
tasks_gen/train/G1032/faulty/m4_i_tutor_load.ddls.asddls
Normal file
@@ -0,0 +1,16 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Tutor load'
|
||||
define view entity {{P}}I_TUTOR_LOAD
|
||||
as select from {{p}}tutor as tutor
|
||||
inner join {{p}}lesson as lesson on lesson.tutor_id = tutor.tutor_id
|
||||
{
|
||||
key tutor.tutor_id as tutor_id,
|
||||
tutor.tutor_name as tutor_name,
|
||||
count( * ) as lesson_count,
|
||||
sum( lesson.dur_min ) as total_minutes
|
||||
}
|
||||
where lesson.dur_min > 0
|
||||
group by
|
||||
tutor.tutor_id,
|
||||
tutor.tutor_name
|
||||
having count( * ) >= 4
|
||||
28
tasks_gen/train/G1032/generation.json
Normal file
28
tasks_gen/train/G1032/generation.json
Normal file
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"id": "G1032",
|
||||
"pool": "train",
|
||||
"object_type": "DDLS",
|
||||
"category": "B",
|
||||
"attempts": [
|
||||
{
|
||||
"stage": "bundle",
|
||||
"errors": [
|
||||
"seed/lesson.tabl.asabap: field name minutes is a reserved word; choose another name"
|
||||
],
|
||||
"by_check": {
|
||||
"static": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"stage": "validate",
|
||||
"oracle": 100.0,
|
||||
"null": 0,
|
||||
"mutation": {
|
||||
"valid": 5,
|
||||
"killed": 4,
|
||||
"ok": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"accepted": true
|
||||
}
|
||||
112
tasks_gen/train/G1032/hidden/t31_hidden.clas.abap
Normal file
112
tasks_gen/train/G1032/hidden/t31_hidden.clas.abap
Normal file
@@ -0,0 +1,112 @@
|
||||
CLASS {{p}}t31_hidden 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 row_count FOR TESTING.
|
||||
METHODS count_of_busy_tutor FOR TESTING.
|
||||
METHODS minutes_of_busy_tutor FOR TESTING.
|
||||
METHODS count_of_top_tutor FOR TESTING.
|
||||
METHODS minutes_of_top_tutor FOR TESTING.
|
||||
METHODS zero_minutes_ignored FOR TESTING.
|
||||
METHODS zero_minutes_reduce_count FOR TESTING.
|
||||
METHODS tutor_with_two_lessons FOR TESTING.
|
||||
METHODS tutor_without_lessons FOR TESTING.
|
||||
METHODS name_is_shown FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t31_hidden IMPLEMENTATION.
|
||||
METHOD class_setup.
|
||||
go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_TUTOR_LOAD' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD class_teardown.
|
||||
go_env->destroy( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD setup.
|
||||
DATA lt_tutor TYPE STANDARD TABLE OF {{p}}tutor WITH EMPTY KEY.
|
||||
DATA lt_lesson TYPE STANDARD TABLE OF {{p}}lesson WITH EMPTY KEY.
|
||||
go_env->clear_doubles( ).
|
||||
lt_tutor = VALUE #( ( tutor_id = 'T1' tutor_name = 'ALICE' subject = 'PIANO' )
|
||||
( tutor_id = 'T2' tutor_name = 'BOB' subject = 'GUITAR' )
|
||||
( tutor_id = 'T3' tutor_name = 'CARLA' subject = 'VIOLIN' )
|
||||
( tutor_id = 'T4' tutor_name = 'DAVE' subject = 'DRUMS' )
|
||||
( tutor_id = 'T5' tutor_name = 'EMMA' subject = 'FLUTE' )
|
||||
( tutor_id = 'T6' tutor_name = 'FELIX' subject = 'CELLO' ) ).
|
||||
lt_lesson = VALUE #( ( lesson_id = 'L01' tutor_id = 'T1' dur_min = 30 )
|
||||
( lesson_id = 'L02' tutor_id = 'T1' dur_min = 45 )
|
||||
( lesson_id = 'L03' tutor_id = 'T1' dur_min = 45 )
|
||||
( lesson_id = 'L04' tutor_id = 'T2' dur_min = 60 )
|
||||
( lesson_id = 'L05' tutor_id = 'T2' dur_min = 60 )
|
||||
( lesson_id = 'L06' tutor_id = 'T2' dur_min = 30 )
|
||||
( lesson_id = 'L07' tutor_id = 'T2' dur_min = 15 )
|
||||
( lesson_id = 'L08' tutor_id = 'T4' dur_min = 30 )
|
||||
( lesson_id = 'L09' tutor_id = 'T4' dur_min = 30 )
|
||||
( lesson_id = 'L10' tutor_id = 'T5' dur_min = 30 )
|
||||
( lesson_id = 'L11' tutor_id = 'T5' dur_min = 30 )
|
||||
( lesson_id = 'L12' tutor_id = 'T5' dur_min = 0 )
|
||||
( lesson_id = 'L13' tutor_id = 'T6' dur_min = 30 )
|
||||
( lesson_id = 'L14' tutor_id = 'T6' dur_min = 30 )
|
||||
( lesson_id = 'L15' tutor_id = 'T6' dur_min = 30 )
|
||||
( lesson_id = 'L16' tutor_id = 'T6' dur_min = 0 ) ).
|
||||
go_env->insert_test_data( lt_tutor ).
|
||||
go_env->insert_test_data( lt_lesson ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD row_count.
|
||||
SELECT COUNT(*) FROM {{p}}i_tutor_load INTO @DATA(lv_rows).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 3 act = CONV i( lv_rows ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD count_of_busy_tutor.
|
||||
SELECT SINGLE lesson_count FROM {{p}}i_tutor_load WHERE tutor_id = 'T1' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 3 act = CONV i( lv_count ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD minutes_of_busy_tutor.
|
||||
SELECT SINGLE total_minutes FROM {{p}}i_tutor_load WHERE tutor_id = 'T1' INTO @DATA(lv_total).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( 120 ) act = CONV decfloat34( lv_total ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD count_of_top_tutor.
|
||||
SELECT SINGLE lesson_count FROM {{p}}i_tutor_load WHERE tutor_id = 'T2' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 4 act = CONV i( lv_count ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD minutes_of_top_tutor.
|
||||
SELECT SINGLE total_minutes FROM {{p}}i_tutor_load WHERE tutor_id = 'T2' INTO @DATA(lv_total).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( 165 ) act = CONV decfloat34( lv_total ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zero_minutes_ignored.
|
||||
SELECT SINGLE lesson_count, total_minutes FROM {{p}}i_tutor_load
|
||||
WHERE tutor_id = 'T6' INTO @DATA(ls_load).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 3 act = CONV i( ls_load-lesson_count ) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( 90 )
|
||||
act = CONV decfloat34( ls_load-total_minutes ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zero_minutes_reduce_count.
|
||||
SELECT COUNT(*) FROM {{p}}i_tutor_load WHERE tutor_id = 'T5' INTO @DATA(lv_rows).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = CONV i( lv_rows ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD tutor_with_two_lessons.
|
||||
SELECT COUNT(*) FROM {{p}}i_tutor_load WHERE tutor_id = 'T4' INTO @DATA(lv_rows).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = CONV i( lv_rows ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD tutor_without_lessons.
|
||||
SELECT COUNT(*) FROM {{p}}i_tutor_load WHERE tutor_id = 'T3' INTO @DATA(lv_rows).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = CONV i( lv_rows ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD name_is_shown.
|
||||
SELECT SINGLE tutor_name FROM {{p}}i_tutor_load WHERE tutor_id = 'T2' INTO @DATA(lv_name).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'BOB' act = lv_name ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
71
tasks_gen/train/G1032/mutation.json
Normal file
71
tasks_gen/train/G1032/mutation.json
Normal file
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"task": "G1032",
|
||||
"mutants": [
|
||||
{
|
||||
"object": "{{P}}I_TUTOR_LOAD",
|
||||
"mutant": "line 5: inner join -> left outer join (join)",
|
||||
"status": "survived",
|
||||
"hidden": "10/10",
|
||||
"failed_tests": []
|
||||
},
|
||||
{
|
||||
"object": "{{P}}I_TUTOR_LOAD",
|
||||
"mutant": "line 5: = -> <> (eq)",
|
||||
"status": "killed",
|
||||
"hidden": "1/10",
|
||||
"failed_tests": [
|
||||
"COUNT_OF_BUSY_TUTOR",
|
||||
"COUNT_OF_TOP_TUTOR",
|
||||
"MINUTES_OF_BUSY_TUTOR",
|
||||
"MINUTES_OF_TOP_TUTOR",
|
||||
"ROW_COUNT",
|
||||
"TUTOR_WITHOUT_LESSONS",
|
||||
"TUTOR_WITH_TWO_LESSONS",
|
||||
"ZERO_MINUTES_IGNORED",
|
||||
"ZERO_MINUTES_REDUCE_COUNT"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}I_TUTOR_LOAD",
|
||||
"mutant": "line 10: sum( -> max( (agg)",
|
||||
"status": "killed",
|
||||
"hidden": "7/10",
|
||||
"failed_tests": [
|
||||
"MINUTES_OF_BUSY_TUTOR",
|
||||
"MINUTES_OF_TOP_TUTOR",
|
||||
"ZERO_MINUTES_IGNORED"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}I_TUTOR_LOAD",
|
||||
"mutant": "line 12: > -> <= (rel)",
|
||||
"status": "killed",
|
||||
"hidden": "3/10",
|
||||
"failed_tests": [
|
||||
"COUNT_OF_BUSY_TUTOR",
|
||||
"COUNT_OF_TOP_TUTOR",
|
||||
"MINUTES_OF_BUSY_TUTOR",
|
||||
"MINUTES_OF_TOP_TUTOR",
|
||||
"NAME_IS_SHOWN",
|
||||
"ROW_COUNT",
|
||||
"ZERO_MINUTES_IGNORED"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}I_TUTOR_LOAD",
|
||||
"mutant": "line 16: 3 -> 4 (const)",
|
||||
"status": "killed",
|
||||
"hidden": "6/10",
|
||||
"failed_tests": [
|
||||
"COUNT_OF_BUSY_TUTOR",
|
||||
"MINUTES_OF_BUSY_TUTOR",
|
||||
"ROW_COUNT",
|
||||
"ZERO_MINUTES_IGNORED"
|
||||
]
|
||||
}
|
||||
],
|
||||
"valid": 5,
|
||||
"killed": 4,
|
||||
"kill_rate": 0.8,
|
||||
"ok": true
|
||||
}
|
||||
16
tasks_gen/train/G1032/reference/i_tutor_load.ddls.asddls
Normal file
16
tasks_gen/train/G1032/reference/i_tutor_load.ddls.asddls
Normal file
@@ -0,0 +1,16 @@
|
||||
@AccessControl.authorizationCheck: #NOT_REQUIRED
|
||||
@EndUserText.label: 'Tutor load'
|
||||
define view entity {{P}}I_TUTOR_LOAD
|
||||
as select from {{p}}tutor as tutor
|
||||
inner join {{p}}lesson as lesson on lesson.tutor_id = tutor.tutor_id
|
||||
{
|
||||
key tutor.tutor_id as tutor_id,
|
||||
tutor.tutor_name as tutor_name,
|
||||
count( * ) as lesson_count,
|
||||
sum( lesson.dur_min ) as total_minutes
|
||||
}
|
||||
where lesson.dur_min > 0
|
||||
group by
|
||||
tutor.tutor_id,
|
||||
tutor.tutor_name
|
||||
having count( * ) >= 3
|
||||
40
tasks_gen/train/G1032/reference/t31_test.clas.abap
Normal file
40
tasks_gen/train/G1032/reference/t31_test.clas.abap
Normal file
@@ -0,0 +1,40 @@
|
||||
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 load_of_one_tutor FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t31_test IMPLEMENTATION.
|
||||
METHOD class_setup.
|
||||
go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_TUTOR_LOAD' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD class_teardown.
|
||||
go_env->destroy( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD setup.
|
||||
go_env->clear_doubles( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD load_of_one_tutor.
|
||||
DATA lt_tutor TYPE STANDARD TABLE OF {{p}}tutor WITH EMPTY KEY.
|
||||
DATA lt_lesson TYPE STANDARD TABLE OF {{p}}lesson WITH EMPTY KEY.
|
||||
lt_tutor = VALUE #( ( tutor_id = 'A' tutor_name = 'ANNA' subject = 'PIANO' ) ).
|
||||
lt_lesson = VALUE #( ( lesson_id = 'X1' tutor_id = 'A' dur_min = 20 )
|
||||
( lesson_id = 'X2' tutor_id = 'A' dur_min = 40 )
|
||||
( lesson_id = 'X3' tutor_id = 'A' dur_min = 60 ) ).
|
||||
go_env->insert_test_data( lt_tutor ).
|
||||
go_env->insert_test_data( lt_lesson ).
|
||||
SELECT SINGLE lesson_count, total_minutes FROM {{p}}i_tutor_load
|
||||
WHERE tutor_id = 'A' INTO @DATA(ls_load).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 3 act = CONV i( ls_load-lesson_count ) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( 120 )
|
||||
act = CONV decfloat34( ls_load-total_minutes ) ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
12
tasks_gen/train/G1032/seed/lesson.tabl.asabap
Normal file
12
tasks_gen/train/G1032/seed/lesson.tabl.asabap
Normal file
@@ -0,0 +1,12 @@
|
||||
@EndUserText.label : 'Lesson'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}lesson {
|
||||
key client : abap.clnt not null;
|
||||
key lesson_id : abap.char(10) not null;
|
||||
tutor_id : abap.char(10);
|
||||
lesson_date : abap.dats;
|
||||
dur_min : abap.int4;
|
||||
}
|
||||
11
tasks_gen/train/G1032/seed/tutor.tabl.asabap
Normal file
11
tasks_gen/train/G1032/seed/tutor.tabl.asabap
Normal file
@@ -0,0 +1,11 @@
|
||||
@EndUserText.label : 'Tutor'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}tutor {
|
||||
key client : abap.clnt not null;
|
||||
key tutor_id : abap.char(10) not null;
|
||||
tutor_name : abap.char(30);
|
||||
subject : abap.char(20);
|
||||
}
|
||||
39
tasks_gen/train/G1032/spec.md
Normal file
39
tasks_gen/train/G1032/spec.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# 1. Goal
|
||||
Show the workload of each tutor of a music school. A report and an OData
|
||||
service will read the workload, so the calculation must be in the database,
|
||||
in a CDS view.
|
||||
|
||||
# 2. Open questions
|
||||
None.
|
||||
|
||||
# 3. Context
|
||||
- Table {{P}}TUTOR (tutor master data), package $TMP. Key: TUTOR_ID (CHAR 10).
|
||||
Fields: TUTOR_NAME (CHAR 30), SUBJECT (CHAR 20).
|
||||
- Table {{P}}LESSON (the lessons that the tutors give), package $TMP.
|
||||
Key: LESSON_ID (CHAR 10). Fields: TUTOR_ID (CHAR 10), LESSON_DATE (DATS),
|
||||
DUR_MIN (INT4, the length of the lesson in minutes).
|
||||
|
||||
# 4. Contract
|
||||
- Create the CDS view entity {{P}}I_TUTOR_LOAD in package $TMP.
|
||||
- Elements, with these names: TUTOR_ID (key), TUTOR_NAME, LESSON_COUNT,
|
||||
TOTAL_MINUTES.
|
||||
- No authorization check (#NOT_REQUIRED).
|
||||
|
||||
# 5. Business rules
|
||||
1. Count only lessons with DUR_MIN greater than 0. A lesson with DUR_MIN = 0
|
||||
is not a lesson of this view. It does not count and it does not add minutes.
|
||||
2. Show one row for each tutor who has at least 3 lessons. Do not show a tutor
|
||||
with fewer than 3 lessons. Do not show a tutor without lessons.
|
||||
3. LESSON_COUNT is the number of lessons of the tutor.
|
||||
4. TOTAL_MINUTES is the sum of the DUR_MIN values of all lessons of the tutor.
|
||||
5. TUTOR_NAME is the name of the tutor.
|
||||
|
||||
# 6. Constraints
|
||||
- Release target: 8.16 (SAP_BASIS 816).
|
||||
- Coding standards: Clean ABAP.
|
||||
- Out of scope: do not change {{P}}TUTOR and {{P}}LESSON.
|
||||
|
||||
# 7. Acceptance
|
||||
- The view is active and has no syntax error.
|
||||
- The hidden tests pass.
|
||||
- Write ABAP Unit tests with CL_CDS_TEST_ENVIRONMENT in a global test class.
|
||||
65
tasks_gen/train/G1032/task.json
Normal file
65
tasks_gen/train/G1032/task.json
Normal file
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"id": "G1032",
|
||||
"category": "B",
|
||||
"object_type": "DDLS",
|
||||
"difficulty": 2,
|
||||
"release_target": "v816",
|
||||
"expected_outcome": "implement",
|
||||
"budget": {
|
||||
"max_tool_calls": 60,
|
||||
"max_activations": 15
|
||||
},
|
||||
"seed": [
|
||||
{
|
||||
"type": "TABL",
|
||||
"name": "{{P}}TUTOR",
|
||||
"file": "seed/tutor.tabl.asabap",
|
||||
"description": "Tutor master data"
|
||||
},
|
||||
{
|
||||
"type": "TABL",
|
||||
"name": "{{P}}LESSON",
|
||||
"file": "seed/lesson.tabl.asabap",
|
||||
"description": "Lessons that the tutors give"
|
||||
}
|
||||
],
|
||||
"contract": [
|
||||
{
|
||||
"type": "DDLS",
|
||||
"name": "{{P}}I_TUTOR_LOAD",
|
||||
"fields": [
|
||||
"TUTOR_ID",
|
||||
"TUTOR_NAME",
|
||||
"LESSON_COUNT",
|
||||
"TOTAL_MINUTES"
|
||||
]
|
||||
}
|
||||
],
|
||||
"out_of_scope": [
|
||||
"{{P}}TUTOR",
|
||||
"{{P}}LESSON"
|
||||
],
|
||||
"hidden_tests": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}T31_HIDDEN",
|
||||
"file": "hidden/t31_hidden.clas.abap",
|
||||
"description": "T31 hidden tests"
|
||||
}
|
||||
],
|
||||
"reference": [
|
||||
{
|
||||
"type": "DDLS",
|
||||
"name": "{{P}}I_TUTOR_LOAD",
|
||||
"file": "reference/i_tutor_load.ddls.asddls",
|
||||
"description": "Workload of each tutor"
|
||||
},
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}T31_TEST",
|
||||
"file": "reference/t31_test.clas.abap",
|
||||
"description": "T31 own tests"
|
||||
}
|
||||
],
|
||||
"craft_checks": []
|
||||
}
|
||||
Reference in New Issue
Block a user