<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>case studies on Aftermarket.dev</title>
    <link>https://aftermarket.dev/tags/case-studies/</link>
    <description>Recent content in case studies on Aftermarket.dev</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 20 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://aftermarket.dev/tags/case-studies/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Case Study: Catching a Renamed Field Before Release With AfterTest and AfterDiff</title>
      <link>https://aftermarket.dev/case-study-catching-a-renamed-field-before-release-with-aftertest-and-afterdiff/</link>
      <pubDate>Tue, 20 Oct 2026 00:00:00 +0000</pubDate>
      
      <guid>https://aftermarket.dev/case-study-catching-a-renamed-field-before-release-with-aftertest-and-afterdiff/</guid>
      <description>This is a worked case on two small stand-in versions of an orders service. Every command and every line of output below comes from a real run of aftermarket 0.3.0.
The question A team is about to replace version 1 of an orders service with version 2. The release notes say nothing about the API. Clients they don&amp;rsquo;t control call it every day. Before switching, they want to know: does v2 answer the same questions the same way?</description>
    </item>
    
    <item>
      <title>Case Study: Fixing a Moved Exchange Rate Endpoint With Two AfterPatch Rules</title>
      <link>https://aftermarket.dev/case-study-fixing-a-moved-exchange-rate-endpoint-with-two-afterpatch-rules/</link>
      <pubDate>Tue, 20 Oct 2026 00:00:00 +0000</pubDate>
      
      <guid>https://aftermarket.dev/case-study-fixing-a-moved-exchange-rate-endpoint-with-two-afterpatch-rules/</guid>
      <description>This is a worked case on a small stand-in service, built to look like a common kind of break. Every command and every line of output below comes from a real run of aftermarket 0.3.0.
What broke An app shows exchange rates. It calls GET /v1/rate?from=EUR&amp;amp;to=USD and reads rate from the answer. It&amp;rsquo;s installed on devices nobody can update this week.
The rate provider shipped a new version, and three things changed at once:</description>
    </item>
    
    <item>
      <title>Case Study: Moving an Old Client to a New Customer API With AfterAPI</title>
      <link>https://aftermarket.dev/case-study-moving-an-old-client-to-a-new-customer-api-with-afterapi/</link>
      <pubDate>Tue, 20 Oct 2026 00:00:00 +0000</pubDate>
      
      <guid>https://aftermarket.dev/case-study-moving-an-old-client-to-a-new-customer-api-with-afterapi/</guid>
      <description>This case uses the examples/customer-api folder from the code repository, so you can run every step yourself. The commands and output below come from a real run of aftermarket 0.3.0.
The situation A customer service was rewritten, and its v1 API was switched off. One old client still calls v1, and it comes with its own test suite of twelve strict checks. Field names, extra fields, status codes and error messages all count.</description>
    </item>
    
  </channel>
</rss>
