Puppet Mocker/Starter for Wechaty
Clone or download
huan Merge pull request #12 from Chatie/greenkeeper/tslint-config-standard…
…-8.0.0

Update tslint-config-standard to the latest version 🚀
Latest commit 7c68ca0 Dec 30, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode init Jun 27, 2018
docs/images add badges & logo Jun 27, 2018
scripts clean code Aug 27, 2018
src follow latest puppet design Aug 13, 2018
tests/fixtures merge Jul 4, 2018
.editorconfig
.gitignore ignore ds store Jun 27, 2018
.markdownlintrc init Jun 27, 2018
.travis.yml test under linux only Jun 29, 2018
LICENSE Initial commit Jun 27, 2018
README.md merge Aug 13, 2018
package.json Merge pull request #12 from Chatie/greenkeeper/tslint-config-standard… Dec 29, 2018
tsconfig.json init Jun 27, 2018
tslint.json init Jun 27, 2018

README.md

PUPPET-MOCK

Powered by Wechaty NPM Version npm (tag) TypeScript Linux/Mac Build Status Greenkeeper badge

chatie puppet

Picture Credit: https://softwareautotools.com/2017/03/01/mocking-explained-in-python/

Puppet Mocker & Starter for Wechaty, it is very useful when you:

  1. Want to test the Wechaty framework with a mock puppet, or
  2. You want to write your own Puppet implenmentation.

Then PuppetMock will helps you a lot.

USAGE

import { MemoryCard } from 'memory-card'
import { PuppetMock } from 'wechaty-puppet-mock'

const puppet  = new PuppetMock({ memory: new MemoryCard() })
const wechaty = new Wechaty({ puppet })

HELPER UTILITIES

StateSwitch

this.state.on('pending')
this.state.on(true)
this.state.off('pending')
this.state.off(true)

await this.state.ready('on')
await this.state.ready('off')

Watchdog

MemoryCard

await memory.set('config', { id: 1, key: 'xxx' })
const config = await memory.get('config')
console.log(config)
// Output: { id: 1, key: 'xxx' }

AUTHOR

Huan LI <zixia@zixia.net>

profile for zixia on Stack Exchange, a network of free, community-driven Q&A sites

COPYRIGHT & LICENSE

  • Code & Docs © 2018 Huan LI <zixia@zixia.net>
  • Code released under the Apache-2.0 License
  • Docs released under Creative Commons