mirror of https://github.com/embarklabs/embark.git
add tests for getContract
This commit is contained in:
parent
e470a63905
commit
3f09d5d3f0
|
@ -83,6 +83,7 @@ class Provider {
|
|||
this.logger.warn('Unsupported account configuration: ' + JSON.stringify(accountConfig));
|
||||
this.logger.warn('Try using one of those: ' +
|
||||
'{ "privateKey": "your-private-key", "privateKeyFile": "path/to/file/containing/key", "mnemonic": "12 word mnemonic" }');
|
||||
return null;
|
||||
}
|
||||
|
||||
eth_accounts(payload, cb) {
|
||||
|
|
|
@ -85,5 +85,8 @@
|
|||
"Init complete": "Init complete",
|
||||
"App ready at ": "App ready at ",
|
||||
"already initialized": "already initialized",
|
||||
"deployed at": "deployed at"
|
||||
"deployed at": "deployed at",
|
||||
"executing onDeploy commands": "executing onDeploy commands",
|
||||
"executing: ": "executing: ",
|
||||
"no config file found at %s using default config": "no config file found at %s using default config"
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
key1;key2
|
|
@ -0,0 +1,81 @@
|
|||
/*global describe, it, before*/
|
||||
const assert = require('assert');
|
||||
const sinon = require('sinon');
|
||||
const Provider = require('../lib/core/provider');
|
||||
let TestLogger = require('../lib/tests/test_logger.js');
|
||||
|
||||
describe('embark.provider', function () {
|
||||
describe('#getAccount', function () {
|
||||
let provider;
|
||||
|
||||
before(() => {
|
||||
const web3 = {
|
||||
eth: {
|
||||
accounts: {
|
||||
privateKeyToAccount: sinon.stub().callsFake((key) => {
|
||||
return {key};
|
||||
})
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
provider = new Provider({
|
||||
accountsConfig: [],
|
||||
logger: new TestLogger({}),
|
||||
web3Endpoint: 'http:localhost:555',
|
||||
web3
|
||||
});
|
||||
});
|
||||
|
||||
it('should return one account with the key', function () {
|
||||
const account = provider.getAccount({
|
||||
privateKey: 'myKey'
|
||||
});
|
||||
|
||||
assert.deepEqual(account, {key: 'myKey'});
|
||||
});
|
||||
|
||||
it('should return two accounts from the keys in the file', function () {
|
||||
const account = provider.getAccount({
|
||||
privateKeyFile: 'test/keyFiles/twoKeys'
|
||||
});
|
||||
|
||||
assert.deepEqual(account, [
|
||||
{key: 'key1'},
|
||||
{key: 'key2'}
|
||||
]);
|
||||
});
|
||||
|
||||
it('should return one account from the mnemonic', function () {
|
||||
const account = provider.getAccount({
|
||||
mnemonic: 'example exile argue silk regular smile grass bomb merge arm assist farm'
|
||||
});
|
||||
|
||||
|
||||
assert.deepEqual(account,
|
||||
[{key: Buffer.from('f942d5d524ec07158df4354402bfba8d928c99d0ab34d0799a6158d56156d986', 'hex')}]);
|
||||
});
|
||||
|
||||
it('should return two accounts from the mnemonic using numAddresses', function () {
|
||||
const account = provider.getAccount({
|
||||
mnemonic: 'example exile argue silk regular smile grass bomb merge arm assist farm',
|
||||
numAddresses: 2
|
||||
});
|
||||
|
||||
assert.deepEqual(account,
|
||||
[
|
||||
{key: Buffer.from('f942d5d524ec07158df4354402bfba8d928c99d0ab34d0799a6158d56156d986', 'hex')},
|
||||
{key: Buffer.from('88f37cfbaed8c0c515c62a17a3a1ce2f397d08bbf20dcc788b69f11b5a5c9791', 'hex')}
|
||||
]);
|
||||
});
|
||||
|
||||
it('should return nothing with bad config', function () {
|
||||
const account = provider.getAccount({
|
||||
badConfig: 'not working'
|
||||
});
|
||||
|
||||
assert.strictEqual(account, null);
|
||||
});
|
||||
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue