diff --git a/js/embark.js b/js/embark.js index 45d22c333..755060fe8 100644 --- a/js/embark.js +++ b/js/embark.js @@ -29,6 +29,7 @@ EmbarkJS.Contract = function(options) { ContractClass.setProvider(this.web3.currentProvider); ContractClass.options.data = this.code; ContractClass.abi = ContractClass.options.abi; + ContractClass.address = this.address; return ContractClass; } else { ContractClass = this.web3.eth.contract(this.abi); diff --git a/lib/tests/test.js b/lib/tests/test.js index eabb68128..cbf8af0e1 100644 --- a/lib/tests/test.js +++ b/lib/tests/test.js @@ -148,6 +148,7 @@ class Test { } Object.assign(self.contracts[contractName], new self.web3.eth.Contract(contract.abiDefinition, contract.deployedAddress, {from: self.web3.eth.defaultAccount, gas: 6000000})); + self.contracts[contractName].address = contract.deployedAddress; eachCb(); }, next); } @@ -188,6 +189,7 @@ class Test { } this.contracts[contractName] = new this.web3.eth.Contract(contract.abiDefinition, contract.address, {from: this.web3.eth.defaultAccount, gas: 6000000}); + this.contracts[contractName].address = contract.address; return this.contracts[contractName]; } throw new Error(__('Unknown module %s', module)); diff --git a/test_apps/test_app/test/simple_storage_spec.js b/test_apps/test_app/test/simple_storage_spec.js index 2fe59f7c6..b03676fb2 100644 --- a/test_apps/test_app/test/simple_storage_spec.js +++ b/test_apps/test_app/test/simple_storage_spec.js @@ -32,4 +32,8 @@ contract("SimpleStorage", function () { assert.strictEqual(result, web3.eth.defaultAccount); }); + it("should alias contract address", async function () { + assert.strictEqual(SimpleStorage.options.address, SimpleStorage.address); + }); + });