Skip to content

Commit

Permalink
Update tests to use fresh board instances
Browse files Browse the repository at this point in the history
  • Loading branch information
rwaldron committed Jul 15, 2015
1 parent 84ede7b commit ad3c465
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 45 deletions.
72 changes: 49 additions & 23 deletions test/accelerometer.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,26 @@ var MockFirmata = require("./util/mock-firmata"),
Board = five.Board,
Accelerometer = five.Accelerometer;

var io = new MockFirmata();
var board = new Board({
io: io,
debug: false,
repl: false
});
function newBoard() {
var io = new MockFirmata();
var board = new Board({
io: io,
debug: false,
repl: false
});

io.emit("connect");
io.emit("ready");
return board;
}


exports["Accelerometer -- Analog"] = {

setUp: function(done) {

var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.accel = new Accelerometer({
pins: ["A0", "A1"],
freq: 100,
Expand Down Expand Up @@ -198,8 +204,9 @@ exports["Accelerometer -- Analog"] = {

exports["Accelerometer -- distinctZeroV"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.accel = new Accelerometer({
pins: ["A0", "A1", "A2"],
freq: 100,
Expand Down Expand Up @@ -238,8 +245,9 @@ exports["Accelerometer -- distinctZeroV"] = {

exports["Accelerometer -- autoCalibrate"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.accel = new Accelerometer({
pins: ["A0", "A1", "A2"],
board: board,
Expand Down Expand Up @@ -283,8 +291,9 @@ exports["Accelerometer -- autoCalibrate"] = {
exports["Accelerometer -- ADXL335"] = {

setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.accel = new Accelerometer({
controller: "ADXL335",
pins: ["A0", "A1", "A2"],
Expand Down Expand Up @@ -329,11 +338,11 @@ exports["Accelerometer -- ADXL335"] = {
exports["Accelerometer -- MPU-6050"] = {

setUp: function(done) {

var board = newBoard();
this.clock = sinon.useFakeTimers();
this.i2cConfig = sinon.spy(board.io, "i2cConfig");
this.i2cWrite = sinon.spy(board.io, "i2cWrite");
this.i2cRead = sinon.spy(board.io, "i2cRead");
this.i2cConfig = sinon.spy(MockFirmata.prototype, "i2cConfig");
this.i2cWrite = sinon.spy(MockFirmata.prototype, "i2cWrite");
this.i2cRead = sinon.spy(MockFirmata.prototype, "i2cRead");
this.accel = new Accelerometer({
controller: "MPU6050",
freq: 100,
Expand All @@ -351,6 +360,21 @@ exports["Accelerometer -- MPU-6050"] = {
done();
},

// config: function(test) {
// test.expect(1);

// this.i2cConfig.reset();

// new Accelerometer({
// controller: "MPU6050",
// freq: 100,
// board: board
// });


// test.done();
// },

data: function(test) {
var read, dataSpy = sinon.spy(), changeSpy = sinon.spy();

Expand Down Expand Up @@ -400,11 +424,11 @@ exports["Accelerometer -- MPU-6050"] = {
exports["Accelerometer -- ADXL345"] = {

setUp: function(done) {

var board = newBoard();
this.clock = sinon.useFakeTimers();
this.i2cConfig = sinon.spy(board.io, "i2cConfig");
this.i2cWrite = sinon.spy(board.io, "i2cWrite");
this.i2cRead = sinon.spy(board.io, "i2cRead");
this.i2cConfig = sinon.spy(MockFirmata.prototype, "i2cConfig");
this.i2cWrite = sinon.spy(MockFirmata.prototype, "i2cWrite");
this.i2cRead = sinon.spy(MockFirmata.prototype, "i2cRead");
this.accel = new Accelerometer({
controller: "ADXL345",
board: board
Expand Down Expand Up @@ -466,10 +490,11 @@ exports["Accelerometer -- ADXL345"] = {

exports["Accelerometer -- MMA7361"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.pinMode = sinon.spy(board.io, "pinMode");
this.digitalWrite = sinon.spy(board.io, "digitalWrite");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.pinMode = sinon.spy(MockFirmata.prototype, "pinMode");
this.digitalWrite = sinon.spy(MockFirmata.prototype, "digitalWrite");
this.accel = new Accelerometer({
controller: "MMA7361",
pins: ["A0", "A1", "A2"],
Expand Down Expand Up @@ -538,8 +563,9 @@ exports["Accelerometer -- MMA7361"] = {

exports["Accelerometer -- ESPLORA"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.accel = new Accelerometer({
controller: "ESPLORA",
freq: 100,
Expand Down
63 changes: 41 additions & 22 deletions test/proximity.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,27 @@ var MockFirmata = require("./util/mock-firmata"),
events = require("events"),
sinon = require("sinon"),
Board = five.Board,
Proximity = five.Proximity,
board = new Board({
io: new MockFirmata(),
Proximity = five.Proximity;

function newBoard() {
var io = new MockFirmata();
var board = new Board({
io: io,
debug: false,
repl: false
});

io.emit("connect");
io.emit("ready");

return board;
}

exports["Proximity"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2Y0A21YK",
pin: "A1",
Expand Down Expand Up @@ -55,8 +65,9 @@ exports["Proximity"] = {

exports["Proximity: GP2Y0A21YK"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2Y0A21YK",
pin: "A1",
Expand Down Expand Up @@ -135,8 +146,9 @@ exports["Proximity: GP2Y0A21YK"] = {

exports["Proximity: GP2D120XJ00F"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2D120XJ00F",
pin: "A1",
Expand Down Expand Up @@ -214,8 +226,9 @@ exports["Proximity: GP2D120XJ00F"] = {

exports["Proximity: GP2Y0A02YK0F"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2Y0A02YK0F",
pin: "A1",
Expand Down Expand Up @@ -293,8 +306,9 @@ exports["Proximity: GP2Y0A02YK0F"] = {

exports["Proximity: GP2Y0A41SK0F"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2Y0A41SK0F",
pin: "A1",
Expand Down Expand Up @@ -373,8 +387,9 @@ exports["Proximity: GP2Y0A41SK0F"] = {

exports["Proximity: GP2Y0A710K0F"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "GP2Y0A710K0F",
pin: "A1",
Expand Down Expand Up @@ -452,8 +467,9 @@ exports["Proximity: GP2Y0A710K0F"] = {

exports["Proximity: MB1000"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "MB1000",
pin: "A1",
Expand Down Expand Up @@ -532,8 +548,9 @@ exports["Proximity: MB1000"] = {

exports["Proximity: MB1010"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "MB1010",
pin: "A1",
Expand Down Expand Up @@ -612,8 +629,9 @@ exports["Proximity: MB1010"] = {

exports["Proximity: MB1003"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "MB1003",
pin: "A1",
Expand Down Expand Up @@ -692,8 +710,9 @@ exports["Proximity: MB1003"] = {

exports["Proximity: MB1230"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.analogRead = sinon.spy(board.io, "analogRead");
this.analogRead = sinon.spy(MockFirmata.prototype, "analogRead");
this.proximity = new Proximity({
controller: "MB1230",
pin: "A1",
Expand Down Expand Up @@ -774,11 +793,11 @@ exports["Proximity: MB1230"] = {
exports["Proximity: SRF10"] = {

setUp: function(done) {

var board = newBoard();
this.clock = sinon.useFakeTimers();
this.i2cReadOnce = sinon.spy(board.io, "i2cReadOnce");
this.i2cWrite = sinon.spy(board.io, "i2cWrite");
this.i2cConfig = sinon.spy(board.io, "i2cConfig");
this.i2cReadOnce = sinon.spy(MockFirmata.prototype, "i2cReadOnce");
this.i2cWrite = sinon.spy(MockFirmata.prototype, "i2cWrite");
this.i2cConfig = sinon.spy(MockFirmata.prototype, "i2cConfig");

this.proximity = new Proximity({
controller: "SRF10",
Expand Down Expand Up @@ -826,12 +845,11 @@ exports["Proximity: SRF10"] = {
},

initialize: function(test) {
test.expect(5);
test.expect(4);

test.ok(this.i2cConfig.called);
test.ok(this.i2cWrite.calledThrice);

test.deepEqual(this.i2cConfig.args[0], [0]);
test.deepEqual(
this.i2cWrite.firstCall.args, [0x70, [0x01, 16]]
);
Expand Down Expand Up @@ -907,10 +925,11 @@ exports["Proximity: SRF10"] = {

exports["Proximity: HCSR04"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();
this.pulseVal = 1000;

sinon.stub(board.io, "pingRead", function(settings, handler) {
sinon.stub(MockFirmata.prototype, "pingRead", function(settings, handler) {
handler(this.pulseVal);
}.bind(this));

Expand Down Expand Up @@ -939,7 +958,7 @@ exports["Proximity: HCSR04"] = {
},

tearDown: function(done) {
board.io.pingRead.restore();
MockFirmata.prototype.pingRead.restore();
this.clock.restore();
done();
},
Expand Down Expand Up @@ -1011,8 +1030,8 @@ exports["Proximity: HCSR04"] = {

exports["Proximity: LIDARLITE"] = {
setUp: function(done) {
var board = newBoard();
this.clock = sinon.useFakeTimers();

this.i2cConfig = sinon.spy(MockFirmata.prototype, "i2cConfig");
this.i2cWrite = sinon.spy(MockFirmata.prototype, "i2cWrite");
this.i2cReadOnce = sinon.stub(MockFirmata.prototype, "i2cReadOnce", function(ADDRESS, READREGISTER, BYTES_TO_READ, callback) {
Expand Down

0 comments on commit ad3c465

Please sign in to comment.