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

     1  'use strict';
     2  
     3  var FS = require('fs');
     4  var expect = require('chai').expect;
     5  var process = require('child_process');
     6  
     7  var neb = './neb';
     8  var newAccount;
     9  
    10  function countSubstr(str, substr) {
    11      var reg = new RegExp(substr, "g");
    12      return str.match(reg) ? str.match(reg).length : 0;//若match返回不为null,则结果为true,输出match返回的数组(["test","test"])的长度  
    13  }
    14  
    15  describe('neb config', () => {
    16  
    17      it('neb config new', (done) => {
    18          process.exec(neb + ' config new ./config.tmp', (err, stdout, stderr) => {
    19              try {
    20                  expect(err).to.be.equal(null);
    21                  expect(stderr).to.be.equal("");
    22  
    23                  var genesisConf = FS.readFileSync('./config.tmp','utf-8');
    24                  console.log(stdout);
    25                  console.log(genesisConf);
    26                  
    27                  expect(stdout).to.be.equal('create default config ./config.tmp\n');
    28                  expect(genesisConf).to.be.equal('\n\tnetwork {\n\t\tlisten: ["127.0.0.1:8680"]\n\t}\n\n\tchain '+
    29                      '{\n\t\tchain_id: 100\n\t\tdatadir: "data.db"\n\t\tgenesis: "conf/default/genesis.conf"\n\t'+
    30                      '\tkeydir: "keydir"\n\t\tcoinbase: "eb31ad2d8a89a0ca6935c308d5425730430bc2d63f2573b8"\n\t'+
    31                      '\tsignature_ciphers: ["ECC_SECP256K1"]\n\t}\n\n\trpc {\n\t\trpc_listen: ["127.0.0.1:8684"]\n'+
    32                      '\t\thttp_listen: ["127.0.0.1:8685"]\n\t\thttp_module: ["api","admin"]\n\t}\n\n  \tapp {\n\t' + 
    33                      '\tlog_level: "info"\n    \tlog_file: "logs"\n    \tenable_crash_report: false\n  \t}\n\n\t' + 
    34                      'stats {\n\t\tenable_metrics: false\n\t}\n\t');
    35              } catch (err) {
    36                  done(err);
    37                  return;
    38              }
    39              done();
    40          });
    41      });
    42      after('rm tmp file', (done) => {
    43          process.exec('rm -f ./config.tmp', (err, stdout, stderr) => {
    44              try {
    45                  expect(err).to.be.equal(null);
    46                  expect(stderr).to.be.equal("");
    47              } catch(err) {
    48                  done(err);
    49                  return;
    50              }
    51              done();
    52          })
    53      })
    54  });