rom_comm_test.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. 'use strict';
  2. const expect = require('chai').expect;
  3. const RomComm = require('../back-end/rom_comm');
  4. describe('ESP8266', () => {
  5. const boards = require('../back-end/boards');
  6. it('defaults to the Esp12', () => {
  7. var esp = new RomComm({
  8. portName: 'TEST',
  9. baudRate: 9600
  10. });
  11. expect(esp.board).to.be.an.instanceof(boards.Esp12);
  12. });
  13. });
  14. describe('RomComm', () => {
  15. const esp = new RomComm({
  16. portName: "/dev/ttys000",
  17. baudRate: 9600
  18. });
  19. describe('handleResponse', () => {
  20. // Helper function for response creation, takes *args
  21. const handle = function() {
  22. let data = new Buffer(Uint8Array.from(arguments));
  23. return esp.handleResponse(data);
  24. }
  25. const SUCCESS = new Buffer([0x00, 0x00]);
  26. it('ignores missing headers', () => {
  27. expect(handle(1, 8, 2)).to.be.false;
  28. });
  29. it('ensures direction', () => {
  30. expect(handle(114, 108, 0, 108, 156, 158, 124, 0, 140)).to.be.false;
  31. });
  32. it('emits on success', done => {
  33. esp.on('RECEIVED-FLASH_DOWNLOAD_BEGIN', body => {
  34. expect(body).to.deep.equal(SUCCESS);
  35. done();
  36. });
  37. // Result from flash download begin
  38. let result = handle(1, 2, 2, 0, 7, 7, 18, 32, 0 ,0);
  39. expect(result).to.be.true;
  40. })
  41. });
  42. });