UNPKG

masterblaster

Version:

Scheduling and componsation system for biodome

39 lines (35 loc) 1.16 kB
var chai = require('chai') , expect = chai.expect , assert = chai.assert , schedule = require('../lib/schedule') describe('Device event scheduling', function() { describe('#schedule', function() { it('returns a new RecurringDeviceEvent with null options', function() { var sched = schedule('dummy', 'off'); expect(sched.opts.device).to.equal('dummy'); expect(sched.opts.scheduledState).to.equal('off'); expect(sched.opts.goTime).to.be.null; expect(sched.resolved).to.be.false; }); }); describe('#on', function() { before(function() { sched = schedule('monkey', 'hungry').on('every 5 minutes'); }); it('sets goTime option', function() { assert(sched.opts.goTime == 'every 5 minutes'); }); it('is chainable', function() { assert(sched instanceof schedule.RecurringDeviceEvent); }); }); describe('#resolveOptions', function() { before(function() { sched = schedule('pump', 'on').at('10:15am') sched.resolveOptions(); }); it('ensures goTime is parsed', function() { assert(sched.parsed.startSchedule instanceof Object); }); }); });