From c9953b8830ee024142aae28d787689058a7435d4 Mon Sep 17 00:00:00 2001 From: deadprogram Date: Sat, 19 Oct 2013 20:31:29 -0700 Subject: [PATCH] Work and create new robot --- README.md | 5 ++--- src/connection.coffee | 1 + src/cylon.coffee | 6 ++++-- src/device.coffee | 1 + src/robot.coffee | 4 ++++ test/src/specs/connection.spec.coffee | 6 ++++-- test/src/specs/cylon.spec.coffee | 5 +++-- test/src/specs/device.spec.coffee | 6 ++++-- test/src/specs/robot.spec.coffee | 9 +++++++-- 9 files changed, 30 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index f81da86..a01187a 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ var robot = cylon.robot({ }); // start working -robot.work(); +robot.start(); ``` ```coffee-script @@ -42,8 +42,7 @@ robot = cylon.robot every 1.second, -> led.toggle -# start working -robot.work +robot.start ``` ## Contributing diff --git a/src/connection.coffee b/src/connection.coffee index b3ed3da..1122089 100644 --- a/src/connection.coffee +++ b/src/connection.coffee @@ -11,3 +11,4 @@ module.exports = class Connection constructor: (opts) -> @name = opts.name + @adaptor = opts.adaptor diff --git a/src/cylon.coffee b/src/cylon.coffee index 5ddf5ca..1c56111 100644 --- a/src/cylon.coffee +++ b/src/cylon.coffee @@ -8,5 +8,7 @@ 'use strict'; -exports.robot = -> - 'irobot' +Robot = source("robot") + +exports.robot = (opts) -> + new Robot(opts) diff --git a/src/device.coffee b/src/device.coffee index 7fb585c..4b7fa08 100644 --- a/src/device.coffee +++ b/src/device.coffee @@ -11,3 +11,4 @@ module.exports = class Device constructor: (opts) -> @name = opts.name + @driver = opts.driver diff --git a/src/robot.coffee b/src/robot.coffee index ece5121..be4822b 100644 --- a/src/robot.coffee +++ b/src/robot.coffee @@ -11,3 +11,7 @@ module.exports = class Robot constructor: (opts) -> @name = opts.name + @work = opts.work or -> (console.log "No work yet") + + start: -> + (@work) diff --git a/test/src/specs/connection.spec.coffee b/test/src/specs/connection.spec.coffee index 2d62462..04d3bda 100644 --- a/test/src/specs/connection.spec.coffee +++ b/test/src/specs/connection.spec.coffee @@ -3,8 +3,10 @@ Connection = source("connection") describe "basic tests", -> - r = new Connection(name: "connective") + r = new Connection(name: "connective", adaptor: "adaptive") it "connection should have a name", -> - r.should.have.keys 'name' r.name.should.be.equal 'connective' + + it "connection should have an adaptor", -> + r.adaptor.should.be.equal 'adaptive' diff --git a/test/src/specs/cylon.spec.coffee b/test/src/specs/cylon.spec.coffee index aeaa74f..f9e03dc 100644 --- a/test/src/specs/cylon.spec.coffee +++ b/test/src/specs/cylon.spec.coffee @@ -1,6 +1,7 @@ 'use strict'; cylon = source("cylon") +Robot = source("robot") describe "basic tests", -> it "standard async test", (done) -> @@ -32,5 +33,5 @@ describe "basic tests", -> # Now on to a `real` test it "cylon should create a robot", -> cylon.should.have.keys 'robot' - cylon.robot.should.be.a 'function' - cylon.robot().should.be.equal 'irobot' + robot = cylon.robot(name: 'caprica') + robot.name.should.be.eql 'caprica' diff --git a/test/src/specs/device.spec.coffee b/test/src/specs/device.spec.coffee index 8a23bf1..aa82247 100644 --- a/test/src/specs/device.spec.coffee +++ b/test/src/specs/device.spec.coffee @@ -3,8 +3,10 @@ Device = source("device") describe "basic tests", -> - r = new Device(name: "devisive") + r = new Device(name: "devisive", driver: 'driving') it "device should have a name", -> - r.should.have.keys 'name' r.name.should.be.equal 'devisive' + + it "device should have an driver", -> + r.driver.should.be.equal 'driving' diff --git a/test/src/specs/robot.spec.coffee b/test/src/specs/robot.spec.coffee index 032855e..0627eeb 100644 --- a/test/src/specs/robot.spec.coffee +++ b/test/src/specs/robot.spec.coffee @@ -3,8 +3,13 @@ Robot = source("robot") describe "basic tests", -> - r = new Robot(name: "irobot") + testWork = -> + console.log "hi" + + r = new Robot(name: "irobot", work: testWork) it "robot should have a name", -> - r.should.have.keys 'name' r.name.should.be.equal 'irobot' + + it "robot should have work", -> + r.work.should.be.equal testWork