UNPKG

scientist.js

Version:

A JavaScript interpretation of the Ruby library Scientist, a library for carefully refactoring critical paths.

17 lines (14 loc) 505 B
import {Experiment, Result} from '../src/index'; import Permission from './permission'; import Model from './model'; export default class MyWidget { constructor() { this.model = new Model(); } allows(user) { var experiment = new Experiment("widget-permissions"); experiment.use(() => this.model.checkUser(user).valid); // old way experiment.try(() => user.can(Permission.Read, this.model)); // new way return experiment.run(); } }