https://github.com/ssbc/ssb-netsim
a nodejs-based helper module for generating netsim statements
https://github.com/ssbc/ssb-netsim
Last synced: about 1 year ago
JSON representation
a nodejs-based helper module for generating netsim statements
- Host: GitHub
- URL: https://github.com/ssbc/ssb-netsim
- Owner: ssbc
- Created: 2021-08-04T12:10:02.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-10-12T10:33:51.000Z (over 4 years ago)
- Last Synced: 2025-06-09T14:54:41.339Z (about 1 year ago)
- Language: JavaScript
- Size: 8.79 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSES/CC0-1.0.txt
Awesome Lists containing this project
README
# ssb-netsim
A [netsim](https://github.com/ssb-ngi-pointer/netsim/) helper library.
`ssb-netsim` allows you to write javascript to generate netsim statements. For more info regarding netsim's statements, [read the docs](https://github.com/ssb-ngi-pointer/netsim/blob/main/commands.md).
## Example
```js
var netsim = require("./index.js")
var sim = netsim()
sim.comment("start the show")
var peer = sim.peer("peer", { hops: 1, caps: "asasd", skipoffsets: true, id: "@asdasd.ed25519" })
var bob = sim.peer("bob", { hops: 1, caps: "asasd", skipoffsets: true, id: "@2asdasd.ed25519" })
peer.start("ssb-server")
bob.start("go-ssb")
sim.wait(100)
peer.follow("bob")
peer.has("bob") // equivalent to peer.has("bob", "latest")
peer.has("bob", 123)
peer.connect("bob")
peer.disconnect("bob")
peer.waituntil("bob", 1337)
peer.waituntil("bob") // equivalent to peer.waituntil("bob", "latest")
peer.post()
peer.isfollowing("bob")
peer.isnotfollowing("bob")
var a = { "content": "is king", "nested": { "type": "cool", "extremely": { "deep": "key" } }, "ary": ["one", "two", "three"] }
peer.publish(a)
peer.stop()
peer.log() // equivalent to peer.log(1)
```
```
comment start the show
enter peer
hops peer 1
caps peer asasd
skipoffsets peer
load peer @asdasd.ed25519
enter bob
hops bob 1
caps bob asasd
skipoffsets bob
load bob @2asdasd.ed25519
start peer ssb-server
start bob go-ssb
wait 100
follow peer bob
has peer bob@latest
has peer bob@123
connect peer bob
disconnect peer bob
waituntil peer bob@1337
waituntil peer bob@latest
post peer
isfollowing peer bob
isnotfollowing peer bob
publish peer (content is king) (nested.type cool) (nested.extremely.deep key) (.ary one,two,three)
stop peer
log peer 1
```