summaryrefslogtreecommitdiff
path: root/peripheral/libmraa/jsstub/test/index.js
blob: 47d76577d76099a9c4df918b170536c9ced6bddb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
var expect = require('expect.js');
var m = require('../index');
var LightBulb = require('./lightbulb');

describe('LightBulb', function() {

    /** Model the internal data of LightBulb as a buffer */
    var bufferFullBrightness = new Buffer(
       [ 'N',   // Four bytes allocated for name
         'a',
         'm',
         'e',
          95    // One byte allocated for brightness. Stuff in '95' value!
       ]);

    it('getBrightness() function should return 95', function() {

        // Create a fake I2c bus based on the 'full brightness' data model
        var testI2cBus = new m.I2c(0);
        testI2cBus._setRegisterMapInternal(bufferFullBrightness);

        // Create a new LightBulb that opens the testI2cBus, instead of a real
        // mraa I2c bus.
        var lightBulbI2c = new LightBulb(testI2cBus);

        // presumably getBrightness will gather data from I2C and get '95'
        var brightness = lightBulbI2c.getBrightness();

        expect(brightness).to.be(95);
    })
});