PACT Conformance Testing Checklist

Living Document,

This version:
https://wbcsd.github.io/pact-conformance-testing/checklist
Feedback:
public-dev@pathfinder.sine.dev with subject line “[pact-conf-test-checklist] … message topic …
Editors:
Prasad Tilloo (SINE Foundation)
Raimundo Henriques (SINE Foundation)

Abstract

Checklist for conformance testing within the PACT ecosystem.

1. Background: Definition of Conformance

Note: The following sections are copied from the tech specs. See the respective technical specification for the latest definition.

A conforming host system is any algorithm realized as software and/or hardware that complies with the relevant normative statements in §6 HTTP REST API.

A conforming requesting data recipient is any algorithm realized as software and/or hardware that complies with the relevant normative statements in §6 HTTP REST API.

This checklist is a recommendation from WBCSD to be used as a reference for the Bilateral Conformance Testing.

Click here to go back to the Conformance Testing guidelines.

2. Checklist of/for Functionality for V1 & V2

2.1. Mandatory Functionality

Host system has implemented the following Http actions as specified and standardized in Pathfinder Technical Specification V2:
Action Authenticate
Action ListFootprints
Action GetFootprint
Host system offers its actions under https method only
Host System performs the Authentication Flow for PCF Data exchange as specified in the Pathfinder Technical Specification V2 for all Actions
Host System endpoint follows the Request/ Response syntax for all mandatory actions (Authenticate, ListFootPrints, GetFootPrints) and optional action (Action Events – not applicable for V 1) as specified in the Pathfinder Technical Specification V2
Host System has implemented the Error Responses as specified in the Pathfinder Technical Specification V2 Section 6.9

3. Additional Checklist of/for Functionality for V2

3.1. Mandatory Functionality

Host system has:
Implemented Action Events as specified in Pathfinder Technical Specification V2 and PCF data was exchanged successfully

Or

If not Implemented Action Events then it responded to authenticated Action Events calls with an error response with code NotImplemented
Host system Action ListFootprints implements mandatory server side pagination as specified in Pathfinder Technical Specification V2
Host System has implemented Product Footprint Lifecycle events and rules as specified in Pathfinder Technical Specification V2 Section 5

3.2. Optional (sic!) Functionality

Host System has implemented Asynchronous request and retrieval of Product Footprints and PCF data was exchanged successfully based as specified in the Pathfinder Technical Specification V2 Section 6.8.4
Host System has implemented V2 Section 6.8.3
Host System has implemented footprint Filter functionality (refer this)
Host system has implemented the Partial Result feature (see [details]((https://wbcsd.github.io/data-exchange-protocol/v2/#liststatuscode) for the status code 202-case)