{"action":"created","issue":{"url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/11","repository_url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts","labels_url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/11/labels{/name}","comments_url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/11/comments","events_url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/11/events","html_url":"https://github.com/WeTrustPlatform/rosca-contracts/pull/11","id":193215624,"number":11,"title":"publicizer - a tool to replace internal and private methods and vars with public for testing purposes","user":{"login":"rmerom","id":650968,"avatar_url":"https://avatars.githubusercontent.com/u/650968?v=3","gravatar_id":"","url":"https://api.github.com/users/rmerom","html_url":"https://github.com/rmerom","followers_url":"https://api.github.com/users/rmerom/followers","following_url":"https://api.github.com/users/rmerom/following{/other_user}","gists_url":"https://api.github.com/users/rmerom/gists{/gist_id}","starred_url":"https://api.github.com/users/rmerom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rmerom/subscriptions","organizations_url":"https://api.github.com/users/rmerom/orgs","repos_url":"https://api.github.com/users/rmerom/repos","events_url":"https://api.github.com/users/rmerom/events{/privacy}","received_events_url":"https://api.github.com/users/rmerom/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"shine2lay","id":5243508,"avatar_url":"https://avatars.githubusercontent.com/u/5243508?v=3","gravatar_id":"","url":"https://api.github.com/users/shine2lay","html_url":"https://github.com/shine2lay","followers_url":"https://api.github.com/users/shine2lay/followers","following_url":"https://api.github.com/users/shine2lay/following{/other_user}","gists_url":"https://api.github.com/users/shine2lay/gists{/gist_id}","starred_url":"https://api.github.com/users/shine2lay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shine2lay/subscriptions","organizations_url":"https://api.github.com/users/shine2lay/orgs","repos_url":"https://api.github.com/users/shine2lay/repos","events_url":"https://api.github.com/users/shine2lay/events{/privacy}","received_events_url":"https://api.github.com/users/shine2lay/received_events","type":"User","site_admin":false},"assignees":[{"login":"shine2lay","id":5243508,"avatar_url":"https://avatars.githubusercontent.com/u/5243508?v=3","gravatar_id":"","url":"https://api.github.com/users/shine2lay","html_url":"https://github.com/shine2lay","followers_url":"https://api.github.com/users/shine2lay/followers","following_url":"https://api.github.com/users/shine2lay/following{/other_user}","gists_url":"https://api.github.com/users/shine2lay/gists{/gist_id}","starred_url":"https://api.github.com/users/shine2lay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shine2lay/subscriptions","organizations_url":"https://api.github.com/users/shine2lay/orgs","repos_url":"https://api.github.com/users/shine2lay/repos","events_url":"https://api.github.com/users/shine2lay/events{/privacy}","received_events_url":"https://api.github.com/users/shine2lay/received_events","type":"User","site_admin":false}],"milestone":null,"comments":3,"created_at":"2016-12-02T20:55:08Z","updated_at":"2016-12-03T17:07:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/pulls/11","html_url":"https://github.com/WeTrustPlatform/rosca-contracts/pull/11","diff_url":"https://github.com/WeTrustPlatform/rosca-contracts/pull/11.diff","patch_url":"https://github.com/WeTrustPlatform/rosca-contracts/pull/11.patch"},"body":"Related to our previous discussion, the new tool \"publicizer\" replaces\r\n```  uint256 internal /* publicForTesting */ someVar;```\r\nwith\r\n```  uint256 public /* modifiedForTest */ someVar;```\r\n\r\nThis is useful to let tests gain access to internal state variables and methods of the production contract.\r\n\r\nWe could have replaced every single instance of \"internal\" or \"private\" with \"public\" but this takes a more conservative approach where we specify explicitly the vars and functions we want to change, and we mark them also in the test contract.\r\n\r\n**Usage**:\r\n```publicizer.py contract.sol > contract_test.sol```\r\n\r\nIt would be nice later on to integrate it directly into ```truffle test```.\n\n<!-- Reviewable:start -->\n---\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/wetrustplatform/rosca-contracts/11)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/comments/264651653","html_url":"https://github.com/WeTrustPlatform/rosca-contracts/pull/11#issuecomment-264651653","issue_url":"https://api.github.com/repos/WeTrustPlatform/rosca-contracts/issues/11","id":264651653,"user":{"login":"shine2lay","id":5243508,"avatar_url":"https://avatars.githubusercontent.com/u/5243508?v=3","gravatar_id":"","url":"https://api.github.com/users/shine2lay","html_url":"https://github.com/shine2lay","followers_url":"https://api.github.com/users/shine2lay/followers","following_url":"https://api.github.com/users/shine2lay/following{/other_user}","gists_url":"https://api.github.com/users/shine2lay/gists{/gist_id}","starred_url":"https://api.github.com/users/shine2lay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shine2lay/subscriptions","organizations_url":"https://api.github.com/users/shine2lay/orgs","repos_url":"https://api.github.com/users/shine2lay/repos","events_url":"https://api.github.com/users/shine2lay/events{/privacy}","received_events_url":"https://api.github.com/users/shine2lay/received_events","type":"User","site_admin":false},"created_at":"2016-12-03T17:07:33Z","updated_at":"2016-12-03T17:07:33Z","body":"After researching evm_increaseTime, i am fairly certain, it is ok to leave the days as is. \n\nre contract name, we only have to change to contract name and constructor name, i think we can add that in the script you wrote. I can write a shell script that run publicizer before truffle test but that wouldn't be ideal for different OS. \n\n---\n\nReview status: 0 of 2 files reviewed at latest revision, all discussions resolved.\n\n---\n\n\n\n*Comments from [Reviewable](https://reviewable.io:443/reviews/wetrustplatform/rosca-contracts/11#-:-KY4cSMxz6Wdb-xPBUW0:b-s1nmwc)*\n<!-- Sent from Reviewable.io -->\n"}}
{"actor":{"display_login":"shine2lay"}}