github.com/igggame/nebulas-go@v2.1.0+incompatible/nebtestkit/cases/command/dump.test.js (about)

     1  'use strict';
     2  
     3  var expect = require('chai').expect;
     4  var process = require('child_process');
     5  
     6  var neb = './neb';
     7  var newAccount;
     8  
     9  function countSubstr(str, substr) {
    10      var reg = new RegExp(substr, "g");
    11      return str.match(reg) ? str.match(reg).length : 0;//若match返回不为null,则结果为true,输出match返回的数组(["test","test"])的长度  
    12  }
    13  
    14  describe('neb dump', () => {
    15  
    16      it('neb dump', (done) => {
    17          process.exec(neb + ' dump 1', (err, stdout, stderr) => {
    18              try {
    19                  expect(err).to.be.equal(null);
    20                  expect(stderr).to.be.equal("");
    21                  var expectStdout = /blockchain dump: \[\{"height": [0-9]+, "hash": "([0-9]|[a-f]){64}"/;
    22                  expect(expectStdout.test(stdout)).to.be.equal(true);
    23                  newAccount = stdout.slice(9, 57);
    24              } catch (err) {
    25                  done(err);
    26                  return;
    27              }
    28              done();
    29          });
    30      });
    31  
    32      it('neb dump 2', (done) => {
    33          process.exec(neb + ' dump 2', (err, stdout, stderr) => {
    34              try {
    35                  expect(err).to.be.equal(null);
    36                  expect(stderr).to.be.equal("");
    37                  //   console.log(stdout);
    38                  var dump_str = /"height": [0-9]+, "hash": "([0-9]|[a-f]){64}"/;
    39                  var dump_count = countSubstr(stdout, dump_str);
    40  
    41                  expect(dump_count).to.be.equal(2);
    42                  newAccount = stdout.slice(9, 57);
    43              } catch (err) {
    44                  done(err);
    45                  return;
    46              }
    47              done();
    48          });
    49      })
    50  });