
Research
/Security News
jscrambler npm Package Compromised in Supply Chain Attack
A compromised jscrambler npm release added a malicious preinstall hook that runs hidden native binaries on Linux, macOS, and Windows.
smartweave-testing
Advanced tools
A testing client for SmartWeave contracts. You can execute any kind of interactWrite input against your contract. It does not require any connection to Arweave.
This enables fast and reliable testing. The new state
of the contract will be stored and by this enabling multi input testing.
yarn add --dev smartweave-testing
import SmartWeaveTester from "smartweave-testing"
import { handle } from [my-contract]
const caller = "..." // -> e.g your Arweave Address
const initialState = {}
const smartweave = new SmartWeaveTester(handle, initialState, caller)
input = { function: "my_function" };
result = await smartweave.execute(input); // -> state of the contract
In case you don't want to update the state of your contract use execute({}, false)
If your contract uses SmartWeave.block.height, the client will make use of it's internal block logic.
Every time you execute an action, the block height will increase by 1. You can use
smartweave.block.height = ... to manually adjust the block height.
import SmartWeaveTester from "smartweave-testing"
import { handle } from [my-contract]
const caller = "..." // -> e.g your Arweave Address
const initialState = {
balances: {}
}
const smartweave = new SmartWeaveTester(handle, initialState, caller)
let input, result;
// the dispense function increases the callers balance by 100
input = { function: "dispense" };
result = await smartweave.execute(input);
if (result.balances[caller] !== 100) throw Error("Dispense does not work")
// be rerunning the action, the old state is preserved and get's updated
input = { function: "dispense" };
result = await smartweave.execute(input);
if (result.balances[caller] !== 200) throw Error("Dispense does not work")
FAQs
A testing client for SmartWeave contracts.
The npm package smartweave-testing receives a total of 21 weekly downloads. As such, smartweave-testing popularity was classified as not popular.
We found that smartweave-testing demonstrated a not healthy version release cadence and project activity because the last version was released 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.

Research
/Security News
A compromised jscrambler npm release added a malicious preinstall hook that runs hidden native binaries on Linux, macOS, and Windows.

Research
/Security News
A malicious .NET package is typosquatting the Braintree SDK to steal live payment card data, merchant API keys, and host secrets from production apps.

Security News
/Research
Compromised Injective SDK npm version 1.20.21 exfiltrates wallet private keys and mnemonics through fake telemetry functionality.