---
id: TST-COM-ORD-131
title: The cancellation plan (11 §1.2)
kind: unit
product_area: commerce
module: orders
revision: 1
status: draft
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
repository: services-commerce
files:
  - modules/orders/tests/unit/cancellations/cancellation-plan.spec.js
implements:
  - ATS-COM-ORD-014-05
  - ATS-COM-ORD-014-06
  - ATS-COM-ORD-014-07
  - ATS-COM-ORD-014-12
environment: mock
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 1
isolation: 'The suite owns its in-memory inputs, scripted responses and rendered component state.'
evidence:
  - provenance: test
    source: 'services-commerce:modules/orders/tests/unit/cancellations/cancellation-plan.spec.js'
    test_cases:
      - >-
        credits 2 of 5 units at the discounted amount with the tax share, estimates the refund from the funded
        part, and approves the document
      - >-
        takes the participant’s fee, else the frozen terms’, else none, and waives an amount with no product
        with a warning
      - >-
        reduces the estimate by the refundable fraction and the non-refundable part, and caps it at what was
        funded
      - 'rejects the document when the participant denies the line, and says must_return when it says so (B9)'
      - >-
        refuses more than the line has left, and a part of a waiting line-grain line (whole_line_only,
        D-P7-05)
      - answers no_participant for a line nothing owns
      - >-
        waits for a person when the participant requires approval, and when the refund is above the order
        type’s threshold
      - keeps the requester’s money action over the settings’ when one was given
      - 'names every status of the three documents, open while something is still to happen'
      - >-
        tells the buyer a return’s refund is less the return label while its money moves or moved, never on a
        closed request (D-P7-32)
scenario_coverage:
  - scenario: ATS-COM-ORD-014-05
    test_cases:
      - >-
        credits 2 of 5 units at the discounted amount with the tax share, estimates the refund from the funded
        part, and approves the document
      - >-
        reduces the estimate by the refundable fraction and the non-refundable part, and caps it at what was
        funded
    scope: >-
      The cited cases exercise the scenario’s listed fixture outcomes; this register makes no verified
      conformance claim.
  - scenario: ATS-COM-ORD-014-06
    test_cases:
      - >-
        takes the participant’s fee, else the frozen terms’, else none, and waives an amount with no product
        with a warning
    scope: >-
      The cited cases exercise the scenario’s listed fixture outcomes; this register makes no verified
      conformance claim.
  - scenario: ATS-COM-ORD-014-07
    test_cases:
      - >-
        waits for a person when the participant requires approval, and when the refund is above the order
        type’s threshold
    scope: >-
      The cited cases exercise the scenario’s listed fixture outcomes; this register makes no verified
      conformance claim.
  - scenario: ATS-COM-ORD-014-12
    test_cases:
      - >-
        refuses more than the line has left, and a part of a waiting line-grain line (whole_line_only,
        D-P7-05)
    scope: >-
      The cited cases exercise the scenario’s listed fixture outcomes; this register makes no verified
      conformance claim.
dependency_evidence:
  provenance: test
  source: 'services-commerce:modules/orders/tests/unit/cancellations/cancellation-plan.spec.js'
  declared_by_test: 'the assembly, the credit arithmetic. Doubled: nothing (the inputs are literals).'
---

# The cancellation plan (11 §1.2)

## Verification Boundary

The unit suite checks the named contract or helper with controlled inputs.

## What This Suite Proves

The registered cases check the cancellation plan (11 §1.2) with their fixture records and assertions. Scenario bindings name only the examples those cases exercise.

## What It Does Not Prove

A registered file supplies no run result or verified conformance by itself. Local fixtures do not establish deployed cross-service behavior or complete browser journeys.

## Real Dependencies and Test Doubles

Inputs and external responses are controlled in process; this suite establishes no deployed service behavior.

## Must Not Be Doubled

The named contract validation or component behavior under assertion must use its actual implementation.
