← ClaudeAtlas

yulin-aws-simulationlisted

Use the @kensio/yulin in-process AWS simulator well when testing AWS code, using it directly rather than building a harness around it, driving tests, local dev and production from the templates a CDK app already synthesizes, deploying one of them or a whole cdk.out cloud assembly, binding real handlers to the functions a template declares, intercepting SDK clients with SimSdk, driving HTTP requests into the simulation with SimAwsHttp, controlling simulated time, reading back the names CloudFormation generates, matching service errors by name, and handling properties Yulin refuses to simulate. Use when writing or reviewing tests that touch AWS, when replacing aws-sdk-client-mock or hand-rolled AWS stubs, when a CDK stack needs testing, when a CloudFront Distribution, its DNS records or its certificate need testing, when test setup around Yulin is growing helper classes or wrapper functions, and when Yulin refuses a template property or an SDK command.
KensioSoftware/kensio.ai · ★ 1 · DevOps & Infrastructure · score 68
Install: claude install-skill KensioSoftware/kensio.ai
# Testing with Yulin [Yulin](https://yulinsim.dev/) (`@kensio/yulin`) simulates AWS in process, in memory, with no network and no AWS account. This skill is how to use it well. It serves `isolated-testing-style`, the general argument for simulation over stubs. Each rule says what it buys, and a case that does not want that trade can go the other way knowingly. For the API read `node_modules/@kensio/yulin/llms.txt`. It indexes the 45 markdown pages beside it under `node_modules/@kensio/yulin/docs/`, one per simulated service and per feature guide, documenting the version installed. Open the page it names for the service in hand and grep it for the operation or property, since Cognito runs to 210 KB with DynamoDB and Lambda close behind. Where the package is absent, or predates the 1.20.x that started carrying it, [yulinsim.dev/llms.txt](https://yulinsim.dev/llms.txt) has the same index for the current release (drop the `llms.txt` for HTML). ## Use what Yulin already gives you The most common way to go wrong is to build something on top of it. The failure looks like a `TestAwsEnvironment` class, a `setupSimulatedAws()` helper returning six things, a factory per service, or a `beforeEach` that reassembles the world. Yulin is built to be used directly. `new SimAws()` and `new SimSdk()` are plain constructors with no side effects, no network, no cleanup and no awaiting. Service accessors take the same Command objects the SDK does. `using simSdk = new SimSdk()` is the teardown