github.com/igggame/nebulas-go@v2.1.0+incompatible/nebtestkit/cases/command/account.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 describe('neb account', () => { 10 11 it('account new', (done) => { 12 process.exec(neb + ' account new 123456', (err, stdout, stderr) => { 13 try { 14 expect(err).to.be.equal(null); 15 expect(stderr).to.be.equal(""); 16 var expectStdout = /Address: ([0-9]|[a-f]){48}\n$/; 17 expect(expectStdout.test(stdout)).to.be.equal(true); 18 newAccount = stdout.slice(9, 57); 19 } catch (err) { 20 done(err); 21 return; 22 } 23 done(); 24 }); 25 }); 26 27 it('account list', (done) => { 28 process.exec(neb + ' account list', (err, stdout, stderr) => { 29 try { 30 expect(err).to.be.equal(null); 31 expect(stderr).to.be.equal(""); 32 var expectStdout = /^(Account #[0-9]+: ([0-9]|[a-f]){48}\n)+$/ 33 expect(expectStdout.test(stdout)).to.be.equal(true); 34 } catch(err) { 35 done(err); 36 return; 37 } 38 done(); 39 }); 40 }); 41 42 it('account update', (done) => { 43 var child = process.exec(neb + ' account update ' + newAccount, (err, stdout, stderr) => { 44 try { 45 expect(err).to.be.equal(null); 46 expect(stderr).to.be.equal(""); 47 console.log(stdout); 48 var expectStdout = 'Please input current passhprase\nPassphrase: \n'+ 49 'Please give a new password. Do not forget this password.\n'+ 50 'Passphrase: \nRepeat passphrase: \nUpdated address: ' + newAccount +'\n'; 51 expect(expectStdout).to.be.equal(stdout); 52 } catch(err) { 53 done(err); 54 return; 55 } 56 done(); 57 }); 58 child.stdin.write("123456\n123\n123\n"); 59 }); 60 61 it('account import', (done) => { 62 var child = process.exec(neb + ' account import keydir/' + newAccount, (err, stdout, stderr) => { 63 try { 64 expect(err).to.be.equal(null); 65 expect(stderr).to.be.equal(""); 66 var expectStdout = 'Passphrase: \nImport address: ' + newAccount + '\n'; 67 expect(expectStdout).to.be.equal(stdout); 68 } catch (err) { 69 done(err); 70 return; 71 } 72 done(); 73 }); 74 child.stdin.write('123\n'); 75 }); 76 77 after('remove the accout file', (done) => { 78 var child = process.exec('rm -f ./keydir/' + newAccount, (err, stdout, stderr) => { 79 try { 80 expect(err).to.be.equal(null); 81 expect(stderr).to.be.equal(""); 82 done(); 83 } catch (err) { 84 done(err); 85 } 86 }); 87 }); 88 });