{"action":"opened","issue":{"url":"https://api.github.com/repos/dmlc/ps-lite/issues/46","repository_url":"https://api.github.com/repos/dmlc/ps-lite","labels_url":"https://api.github.com/repos/dmlc/ps-lite/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/dmlc/ps-lite/issues/46/comments","events_url":"https://api.github.com/repos/dmlc/ps-lite/issues/46/events","html_url":"https://github.com/dmlc/ps-lite/issues/46","id":146957506,"number":46,"title":"Make public methods in SimpleApp and KVWorker, KVServer virtual to enable testing.","user":{"login":"shilad","id":329888,"avatar_url":"https://avatars.githubusercontent.com/u/329888?v=3","gravatar_id":"","url":"https://api.github.com/users/shilad","html_url":"https://github.com/shilad","followers_url":"https://api.github.com/users/shilad/followers","following_url":"https://api.github.com/users/shilad/following{/other_user}","gists_url":"https://api.github.com/users/shilad/gists{/gist_id}","starred_url":"https://api.github.com/users/shilad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shilad/subscriptions","organizations_url":"https://api.github.com/users/shilad/orgs","repos_url":"https://api.github.com/users/shilad/repos","events_url":"https://api.github.com/users/shilad/events{/privacy}","received_events_url":"https://api.github.com/users/shilad/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-04-08T15:18:55Z","updated_at":"2016-04-08T15:18:55Z","closed_at":null,"body":"I'd like to write tests for components that rely on SimpleApp, KVWorker, and KVServer. The easiest approach to do this is fake or mock SimpleApp, etc., but this is difficult now because the public methods are non-virtual. \r\n\r\nDoes it seem reasonable to make these virtual?"}}