tc: A Language-Agnostic Testing Framework for Unix-Style Development
By
mooreds
If you only eat one bagel today, this is the bagel.
Summary
tc is a language-agnostic testing framework designed for Unix-style development workflows. It allows developers to write tests once and run them against any programming language (bash, Python, Rust, Go, etc.). The framework uses a simple directory-based approach where tests read input.json from stdin and write expected.json to stdout. The tool is named after Theodore 'tc' Calvin, a helicopter pilot and legend. The article provides setup instructions, including PATH configuration to avoid conflicts with the Unix traffic control command, and offers documentation for advanced features.
Key quotes
· 4 pulledtc is a language-agnostic test framework. Write tests once, run against any language (bash, python, rust, go, whatever).
Tests are directories. Your code reads input.json from stdin, writes expected.json to stdout. That's it.
tc conflicts with the Unix traffic control command. You MUST add this project's tc to your PATH.
theodore 'tc' calvin - helicopter pilot, testing framework namesake, legend
You might also wanna read
Tusk: Open-Source Platform Converts Production Traffic into Automated Tests
Tusk is an open-source testing platform that automatically converts production traffic into unit and API tests. The platform allows develope
Tusk CLI: Automated Testing Suite with API Record/Replay and Unit Test Management
Tusk CLI is an automated testing suite that provides two main products: Tusk Drift for API record/replay testing that captures real traffic
Rubberduck: A Local LLM Caching Proxy Server for Testing and Development
Rubberduck is a local LLM caching reverse proxy server that emulates major LLM providers, offering features like caching, failure simulation
Cucumber: A Tool for Plain-Language Automated Acceptance Testing
Cucumber is a tool designed for running automated acceptance tests written in plain language, making them accessible to all team members. It
Why Average LLM Use Is Likely Destroying Value in Software Development
The author argues that, contrary to prevailing hype, the average use of Large Language Models (LLMs) is likely destroying value rather than
How AI Accelerated Prototyping: From Idea to Tangible in Record Time
The author reflects on how AI has transformed their prototyping workflow. Previously, the biggest bottleneck was the time needed to scaffold
