Parent Story
#1428
Requirement IDs
MEASUREMENT-R-01
Description
Write and verify the Story-level integration test for immunopeptidomics measurement registration. The test validates that the implementation Task (#1413) satisfies all acceptance criteria defined in Story #1428. Any failing ACs discovered during this Task are reported as new follow-up Tasks.
The IT belongs in project-management/src/test/groovy/.../measurement/ and runs under the Maven it profile (Spring Boot test slice or @SpringBootTest). It targets the application service layer (MeasurementService and related parsers) to avoid mocking internals.
Acceptance Criteria (from parent Story)
- Given a user is on the measurement registration page, When they select the immunopeptidomics domain, Then a downloadable registration template with the correct columns and Property Information sheet is provided.
- Given a user uploads a filled immunopeptidomics registration template with all mandatory fields valid, When the system validates the sheet, Then all measurements are registered successfully with unique
IP- prefixed measurement codes.
- Given a user uploads a sheet with a missing mandatory field (e.g., blank
MHC Antibody), When the system validates the sheet, Then an error identifying the column and row is returned and no records are created.
- Given a user uploads a sheet with an invalid
Organisation URL or Prep Date format, When validation runs, Then a domain-appropriate error is returned and no records are created.
- Given a user uploads a sheet with a non-existent or cross-experiment
QBiC Sample Id, When validation runs, Then a missing/unknown-id error is returned and no records are created.
- Given a user uploads a sheet with all optional fields blank and all mandatory fields valid, When the system processes the sheet, Then measurements are created successfully.
Technical Notes
- Test data: use the provided immunopeptidomics registration templates with valid and invalid rows.
- Assertions must cover:
IP- prefix code generation, validation rejections (missing mandatory, invalid format, unknown sample), and successful creation with optional fields blank.
- The test must pass with
./mvnw clean verify -Pit before this Task is considered complete.
- If any AC fails, create new Task(s) referencing this one and the parent Story; do not workaround in this branch.
- The OpenBIS object type for immunopeptidomics must be available in the test environment (or mocked).
Parent Story
#1428
Requirement IDs
MEASUREMENT-R-01
Description
Write and verify the Story-level integration test for immunopeptidomics measurement registration. The test validates that the implementation Task (#1413) satisfies all acceptance criteria defined in Story #1428. Any failing ACs discovered during this Task are reported as new follow-up Tasks.
The IT belongs in
project-management/src/test/groovy/.../measurement/and runs under the Mavenitprofile (Spring Boot test slice or@SpringBootTest). It targets the application service layer (MeasurementServiceand related parsers) to avoid mocking internals.Acceptance Criteria (from parent Story)
IP-prefixed measurement codes.MHC Antibody), When the system validates the sheet, Then an error identifying the column and row is returned and no records are created.Organisation URLorPrep Dateformat, When validation runs, Then a domain-appropriate error is returned and no records are created.QBiC Sample Id, When validation runs, Then a missing/unknown-id error is returned and no records are created.Technical Notes
IP-prefix code generation, validation rejections (missing mandatory, invalid format, unknown sample), and successful creation with optional fields blank../mvnw clean verify -Pitbefore this Task is considered complete.