I'm trying to return sender address and value in truffle under private blockchain. When function is called from truffle console I'm not getting proper msg.sender address.
Contract code
pragma solidity ^0.4.13; contract Sample { mapping (address => uint) Id; event log(address sender, uint value); function getSender() payable returns (uint,address) { Id[msg.sender] = msg.value; log(msg.sender,msg.value); return (Id[msg.sender],msg.sender); } } Truffle console function code
Sample.deployed().then(function(i) {i.getSender(web3.eth.coinbase,2,{from : web3.eth.coinbase, value : web3.toWei(1, "ether")}).then(function(f) {console.log(f)})});
Sample.deployed().then(function(i) {i.getSender.call(web3.eth.coinbase,2,{from : web3.eth.coinbase, value : web3.toWei(1, "ether")}).then(function(f) {console.log(f)})});
Output
truffle(development)> [ BigNumber { s: 1, e: 0, c: [ 0 ] }, '0x' ]
This contracts fine in remix.