From 418a99bc20264b98472827dda189ac656f5f6c28 Mon Sep 17 00:00:00 2001 From: satyam Date: Sat, 10 Nov 2018 21:42:30 +0530 Subject: [PATCH 1/2] getTickersOwner fix --- contracts/SecurityTokenRegistry.sol | 10 +++++++++- test/n_security_token_registry.js | 3 ++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/contracts/SecurityTokenRegistry.sol b/contracts/SecurityTokenRegistry.sol index 7d24793f3..d13fbb2b6 100644 --- a/contracts/SecurityTokenRegistry.sol +++ b/contracts/SecurityTokenRegistry.sol @@ -427,10 +427,18 @@ contract SecurityTokenRegistry is ISecurityTokenRegistry, EternalStorage { uint counter = 0; // accessing the data structure userTotickers[_owner].length bytes32[] memory tickers = getArrayBytes32(Encoder.getKey("userToTickers", _owner)); - bytes32[] memory tempList = new bytes32[](tickers.length); for (uint i = 0; i < tickers.length; i++) { string memory ticker = Util.bytes32ToString(tickers[i]); /*solium-disable-next-line security/no-block-members*/ + if (getUint(Encoder.getKey("registeredTickers_expiryDate", ticker)) >= now || _tickerStatus(ticker)) { + counter ++; + } + } + bytes32[] memory tempList = new bytes32[](counter); + counter = 0; + for (i = 0; i < tickers.length; i++) { + ticker = Util.bytes32ToString(tickers[i]); + /*solium-disable-next-line security/no-block-members*/ if (getUint(Encoder.getKey("registeredTickers_expiryDate", ticker)) >= now || _tickerStatus(ticker)) { tempList[counter] = tickers[i]; counter ++; diff --git a/test/n_security_token_registry.js b/test/n_security_token_registry.js index ef6b80c51..37643658d 100644 --- a/test/n_security_token_registry.js +++ b/test/n_security_token_registry.js @@ -993,7 +993,8 @@ contract("SecurityTokenRegistry", accounts => { it("Should get the tickers by owner", async () => { let tickersList = await I_STRProxied.getTickersByOwner.call(token_owner); - assert.equal(tickersList.length, 4); + console.log(tickersList); + assert.equal(tickersList.length, 3); let tickersListArray = await I_STRProxied.getTickersByOwner.call(account_temp); console.log(tickersListArray); assert.equal(tickersListArray.length, 3); From 1b93ed3ebae393be719f838aea9c42c6c7102ff6 Mon Sep 17 00:00:00 2001 From: Pablo Ruiz Date: Sat, 10 Nov 2018 14:28:03 -0300 Subject: [PATCH 2/2] Update n_security_token_registry.js --- test/n_security_token_registry.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/n_security_token_registry.js b/test/n_security_token_registry.js index 37643658d..de8b7d733 100644 --- a/test/n_security_token_registry.js +++ b/test/n_security_token_registry.js @@ -994,7 +994,7 @@ contract("SecurityTokenRegistry", accounts => { it("Should get the tickers by owner", async () => { let tickersList = await I_STRProxied.getTickersByOwner.call(token_owner); console.log(tickersList); - assert.equal(tickersList.length, 3); + assert.equal(tickersList.length, 4); let tickersListArray = await I_STRProxied.getTickersByOwner.call(account_temp); console.log(tickersListArray); assert.equal(tickersListArray.length, 3);