{"action":"created","issue":{"url":"https://api.github.com/repos/SFTtech/openage/issues/189","labels_url":"https://api.github.com/repos/SFTtech/openage/issues/189/labels{/name}","comments_url":"https://api.github.com/repos/SFTtech/openage/issues/189/comments","events_url":"https://api.github.com/repos/SFTtech/openage/issues/189/events","html_url":"https://github.com/SFTtech/openage/issues/189","id":53755760,"number":189,"title":"Create test cases for existing subsystems","user":{"login":"TheJJ","id":673543,"avatar_url":"https://avatars.githubusercontent.com/u/673543?v=3","gravatar_id":"","url":"https://api.github.com/users/TheJJ","html_url":"https://github.com/TheJJ","followers_url":"https://api.github.com/users/TheJJ/followers","following_url":"https://api.github.com/users/TheJJ/following{/other_user}","gists_url":"https://api.github.com/users/TheJJ/gists{/gist_id}","starred_url":"https://api.github.com/users/TheJJ/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TheJJ/subscriptions","organizations_url":"https://api.github.com/users/TheJJ/orgs","repos_url":"https://api.github.com/users/TheJJ/repos","events_url":"https://api.github.com/users/TheJJ/events{/privacy}","received_events_url":"https://api.github.com/users/TheJJ/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/SFTtech/openage/labels/c++","name":"c++","color":"000000"},{"url":"https://api.github.com/repos/SFTtech/openage/labels/code%20quality","name":"code quality","color":"006b75"},{"url":"https://api.github.com/repos/SFTtech/openage/labels/easy","name":"easy","color":"ccee20"},{"url":"https://api.github.com/repos/SFTtech/openage/labels/just%20do%20it","name":"just do it","color":"3fe5bf"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2015-01-08T14:27:35Z","updated_at":"2015-06-04T13:19:11Z","closed_at":null,"body":"Because reasons we should add more tests to the code.\r\n\r\nSubstems with test coverage:\r\n\r\n- [X] Pathfinding\r\n- [ ] Jobmanager\r\n- [ ] Terrain blending\r\n- [x] Coordinate system\r\n- [ ] Asset manager\r\n- [ ] Logger\r\n\r\nFor the missing ones, please create some creative tests.\r\nAn example how that could look like can be seen in `cpp/datastructure/`.\r\n\r\n<bountysource-plugin>\r\n---\r\nWant to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7588860-create-test-cases-for-existing-subsystems?utm_campaign=plugin&utm_content=tracker%2F371436&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F371436&utm_medium=issues&utm_source=github).\r\n</bountysource-plugin>"},"comment":{"url":"https://api.github.com/repos/SFTtech/openage/issues/comments/108895832","html_url":"https://github.com/SFTtech/openage/issues/189#issuecomment-108895832","issue_url":"https://api.github.com/repos/SFTtech/openage/issues/189","id":108895832,"user":{"login":"sreejithr","id":1938876,"avatar_url":"https://avatars.githubusercontent.com/u/1938876?v=3","gravatar_id":"","url":"https://api.github.com/users/sreejithr","html_url":"https://github.com/sreejithr","followers_url":"https://api.github.com/users/sreejithr/followers","following_url":"https://api.github.com/users/sreejithr/following{/other_user}","gists_url":"https://api.github.com/users/sreejithr/gists{/gist_id}","starred_url":"https://api.github.com/users/sreejithr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sreejithr/subscriptions","organizations_url":"https://api.github.com/users/sreejithr/orgs","repos_url":"https://api.github.com/users/sreejithr/repos","events_url":"https://api.github.com/users/sreejithr/events{/privacy}","received_events_url":"https://api.github.com/users/sreejithr/received_events","type":"User","site_admin":false},"created_at":"2015-06-04T13:19:11Z","updated_at":"2015-06-04T13:19:11Z","body":"I'm make a test case for abortable jobs. I spawn 20 jobs and stop the JobManager in between (at ~12jobs). Each job has a delay of 1sec. I wait for 20 sec (to make sure that if aborting doesn't work, all the jobs will get completed). After this, I check how many got finished. Hopefully, <20 jobs would be finished which implies aborting worked.\r\n\r\nI know it's not elegant. But I can't find a better solution since there's no way to know whether a job is aborted or if it's still in progress (since aborting doesn't set any flags anywhere)."}}