UNPKG

jssm

Version:

A Javascript state machine with a simple API. Well tested, and typed with Flowtype. MIT License.

29 lines (16 loc) 840 B
import {describe} from 'ava-spec'; const jssm = require('../../../build/jssm.es5.js'); describe('weighted_sample_select/2', async it => { const fruit = [ { label: 'apple', probability: 0.1 }, { label: 'orange', probability: 0.4 }, { label: 'banana', probability: 0.5 } ]; const none = jssm.weighted_sample_select(0, fruit), one = jssm.weighted_sample_select(1, fruit), some = jssm.weighted_sample_select(2, fruit), over = jssm.weighted_sample_select(4, fruit); it('0 returns []', t => t.deepEqual(0, none.length)); it('1 returns [any]', t => t.deepEqual(1, one.length) ); it('2 returns [any,any]', t => t.deepEqual(2, some.length)); it('4 returns [any,any,any,any]', t => t.deepEqual(4, over.length)); }); // stochable