EnvelopeNetwork, or how to abstract Alamofire, and provide strongly-typed mock responses in unit-tests + RxSwift bindings.
This article opens a series of technical posts describing [Envelope framework](https://github.com/ivanmisuno/Envelope), which aims at providing modern protocol-based abstraction layers over several existing foundational frameworks, including `UIKit`, `Alamofire`, `Realm`, and others, that make unit-testing a first-class citizen™. Every set of APIs and extensions is organized as a separate framework under the `Envelope` umbrella project. In each article, I’ll provide a rationale, discuss design choices, and give examples using the new APIs. While I will be mostly focusing on Swift implementation, the discussed ideas could be applied in wider contexts.
Tags: swift, ios, solid, testing