Example #1
0
  stocks : function (test) {
    'use strict';

    var stocks     = require(__dirname + '/../../../../apps/gerty/stocks'),
        deviceGood = stocks.stocks({ value : { 'STOCK1' : { dayChangePercent : '5%' },  'STOCK2' : { dayChangePercent : '7%' } } }),
        deviceOk   = stocks.stocks({ value : { 'STOCK1' : { dayChangePercent : '3%' },  'STOCK2' : { dayChangePercent : '1%' } } }),
        deviceBad  = stocks.stocks({ value : { 'STOCK1' : { dayChangePercent : '-5%' }, 'STOCK2' : { dayChangePercent : '-7%' } } });

    test.deepEqual(deviceGood, { excited: 5,  scared: 0 },  'Your stocks are doing well');
    test.deepEqual(deviceOk,   { excited: 2,  scared: 0 },  'Your stocks are doing ok');
    test.deepEqual(deviceBad,  { excited: -5, scared: -5 }, 'Your stocks are doing pretty bad');

    test.done();
  }
Example #2
0
  parser : function (test) {
    'use strict';

    var stocksParser = require(__dirname + '/../../../../devices/stocks/parser'),
        markup       = '<h1>Foo</h1> <div>{{STOCKS_DYNAMIC}}</div>',
        value        = { foo : { dayChangeValue : '+1.00', name : 'YHOO', price : '50.00',  dayChangePercent : '1%' },
                         bar : { dayChangeValue : '-1.00', name : 'TSLA', price : '250.00', dayChangePercent : '2%' },
                         baz : { dayChangeValue : '0.00',  name : 'GOOG', price : '400.00', dayChangePercent : '0%' } },
        fragments    = { list : '<li class="{{STOCK_CHANGE}}"><span class="fa fa-{{STOCK_ARROW}}"><span>{{STOCK_DIRECTION}}</span></span><span class="name">{{STOCK_NAME}}</span> <span class="price">{{STOCK_PRICE}}</span> <span class="change">({{STOCK_CHANGE_VALUE}} {{STOCK_CHANGE_PERCENT}})</li>' },
        goodMarkup   = stocksParser.stocks('dummy', markup, 'ok', value, fragments),
        badMarkup    = stocksParser.stocks('dummy', markup, 'ok', null,  fragments);

    test.strictEqual(goodMarkup.indexOf('{{'),          -1, 'All values replaced');
    test.notStrictEqual(goodMarkup.indexOf('<li class="gain"><span class="fa fa-arrow-up"><span>Gain</span></span><span class="name">YHOO</span> <span class="price">50.00</span> <span class="change">(+1.00 1%)</li>'),       -1, 'Passed markup validated');
    test.notStrictEqual(goodMarkup.indexOf('<li class="loss"><span class="fa fa-arrow-down"><span>Loss</span></span><span class="name">TSLA</span> <span class="price">250.00</span> <span class="change">(-1.00 2%)</li>'),    -1, 'Passed markup validated');
    test.notStrictEqual(goodMarkup.indexOf('<li class="neutral"><span class="fa fa-arrows-h"><span>Neutral</span></span><span class="name">GOOG</span> <span class="price">400.00</span> <span class="change">(0.00 0%)</li>'), -1, 'Passed markup validated');
    test.strictEqual(badMarkup.indexOf('{{'),           -1, 'All values replaced');
    test.strictEqual(badMarkup, '<h1>Foo</h1> <div></div>', 'Passed markup validated');

    test.done();
  }