
Security News
PodRocket Podcast: Inside the Recent npm Supply Chain Attacks
Socket CEO Feross Aboukhadijeh discusses the recent npm supply chain attacks on PodRocket, covering novel attack vectors and how developers can protect themselves.
█████ ███████ ████████ ███████ ███████ ████████
██ ██ ██ ██ ██ ██ ██
███████ ███████ █████ ██ █████ ███████ ██
██ ██ ██ ██ ██ ██ ██
██ ██ ███████ ██ ███████ ███████ ██
AssemblyScript - v0.4.3
A lightweight testing framework for AssemblyScript.
🔹 Minimal and fast – Run your tests without unnecessary overhead.
🔹 Familiar API – Inspired by modern JavaScript testing frameworks.
🔹 Powerful mocking – Easily override functions and track calls.
🔹 Seamless CI/CD integration – Works effortlessly in automation pipelines.
🔹 Universal environment – Run your tests on any platform, runtime, or bindings.
npm install as-test
npm intall json-as
Initialize your test setup with:
as-test init
This creates a test directory at assembly/__tests__/
with a sample test file.
Create a new test file in assembly/__tests__/
, for example, math.spec.ts
:
import { describe, test, expect, run } from "as-test";
describe("Math operations", () => {
test("Addition", () => {
expect(1 + 2).toBe(3);
});
test("Subtraction", () => {
expect(5 - 2).toBe(3);
});
test("Multiplication", () => {
expect(3 * 3).toBe(9);
});
});
run();
Use mockFn
to override functions during testing:
import { mockFn } from "as-test";
// Mock console.log
mockFn<void>("console.log", (data: string): void => {
console.log("[MOCKED]: " + data);
});
run();
Or override imported functions with mockImport
.
Use beforeAll
and afterAll
to run code before and after a test is run.
import { beforeAll, afterAll } from "as-test";
beforeAll(() => {
log("Setting up test environment...");
});
afterAll(() => {
log("Tearing down test environment...");
});
run();
Using console.log
will mess up the terminal output. Instead, use the inbuilt log
function:
import { log } from "as-test";
log("This is a pretty log function");
run();
Or override all existing console.log
calls with log
:
import { mockFn, log } from "as-test";
mockFn<void>("console.log", (data: string): void => {
log(data);
});
run();
To integrate as-test
into your CI/CD workflow, see the example configuration.
assembly/__tests__/example.spec.ts
This project is distributed under an open source license. You can view the full license using the following link: License
Please send all issues to GitHub Issues and to converse, please send me an email at me@jairus.dev
2025-05-28 - v0.4.4
v1.1.13
FAQs
Testing framework for AssemblyScript. Compatible with WASI or Bindings
We found that as-test demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Socket CEO Feross Aboukhadijeh discusses the recent npm supply chain attacks on PodRocket, covering novel attack vectors and how developers can protect themselves.
Security News
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.
Product
Socket Firewall is a free tool that blocks malicious packages at install time, giving developers proactive protection against rising supply chain attacks.