{"action":"created","issue":{"url":"https://api.github.com/repos/cbeust/testng/issues/1650","repository_url":"https://api.github.com/repos/cbeust/testng","labels_url":"https://api.github.com/repos/cbeust/testng/issues/1650/labels{/name}","comments_url":"https://api.github.com/repos/cbeust/testng/issues/1650/comments","events_url":"https://api.github.com/repos/cbeust/testng/issues/1650/events","html_url":"https://github.com/cbeust/testng/issues/1650","id":283460386,"node_id":"MDU6SXNzdWUyODM0NjAzODY=","number":1650,"title":"Assertions in threads distinct from the main test one","user":{"login":"oakad","id":139498,"node_id":"MDQ6VXNlcjEzOTQ5OA==","avatar_url":"https://avatars1.githubusercontent.com/u/139498?v=4","gravatar_id":"","url":"https://api.github.com/users/oakad","html_url":"https://github.com/oakad","followers_url":"https://api.github.com/users/oakad/followers","following_url":"https://api.github.com/users/oakad/following{/other_user}","gists_url":"https://api.github.com/users/oakad/gists{/gist_id}","starred_url":"https://api.github.com/users/oakad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oakad/subscriptions","organizations_url":"https://api.github.com/users/oakad/orgs","repos_url":"https://api.github.com/users/oakad/repos","events_url":"https://api.github.com/users/oakad/events{/privacy}","received_events_url":"https://api.github.com/users/oakad/received_events","type":"User","site_admin":false},"labels":[{"id":425230728,"node_id":"MDU6TGFiZWw0MjUyMzA3Mjg=","url":"https://api.github.com/repos/cbeust/testng/labels/Feature:%20assertions","name":"Feature: assertions","color":"0e8a16","default":false},{"id":239156267,"node_id":"MDU6TGFiZWwyMzkxNTYyNjc=","url":"https://api.github.com/repos/cbeust/testng/labels/Feature:%20parallel","name":"Feature: parallel","color":"0e8a16","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2017-12-20T06:20:16Z","updated_at":"2018-06-28T03:12:53Z","closed_at":null,"author_association":"NONE","body":"The issue of signalling assertions from other threads is not new; moreover, modern code relies increasingly on various executors (thread pools, etc) so the need to do so arises quite often.\r\n\r\nWithin JUnit ecosystem the need was addressed to some extent by \"ConcurrentUnit\" extension. However, I failed to find any info regarding possibility (or impossibility) of adding support for \"not the main thread\" assertions to TestNG.\r\n\r\nFrom the look of it, adding an annotation and a special argument (allowing the test to signal starts/completions of scheduled sub-tasks) to a test method should quite do it from the user's perspective.\r\n\r\nHaving such a feature available out of the box will surely increase the utility of TestNG considerably, as Executors and Async frameworks in general are clearly the future."},"comment":{"url":"https://api.github.com/repos/cbeust/testng/issues/comments/400897235","html_url":"https://github.com/cbeust/testng/issues/1650#issuecomment-400897235","issue_url":"https://api.github.com/repos/cbeust/testng/issues/1650","id":400897235,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMDg5NzIzNQ==","user":{"login":"krmahadevan","id":909773,"node_id":"MDQ6VXNlcjkwOTc3Mw==","avatar_url":"https://avatars0.githubusercontent.com/u/909773?v=4","gravatar_id":"","url":"https://api.github.com/users/krmahadevan","html_url":"https://github.com/krmahadevan","followers_url":"https://api.github.com/users/krmahadevan/followers","following_url":"https://api.github.com/users/krmahadevan/following{/other_user}","gists_url":"https://api.github.com/users/krmahadevan/gists{/gist_id}","starred_url":"https://api.github.com/users/krmahadevan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krmahadevan/subscriptions","organizations_url":"https://api.github.com/users/krmahadevan/orgs","repos_url":"https://api.github.com/users/krmahadevan/repos","events_url":"https://api.github.com/users/krmahadevan/events{/privacy}","received_events_url":"https://api.github.com/users/krmahadevan/received_events","type":"User","site_admin":false},"created_at":"2018-06-28T03:12:53Z","updated_at":"2018-06-28T03:12:53Z","author_association":"COLLABORATOR","body":"@oakad \r\n\r\nHave you tried using any of the alternatives suggested and seen if it works for you? Just like TestNG the alternatives are also full fledged open source projects by themselves. So if they have some quirks, would it not be more apt to basically send a PR to that project and fix it ?\r\n\r\nFor e.g., Even though TestNG has assertions, but a lot of people make use of `assertj` for their assertion needs. \r\nI don't think it makes sense for TestNG to basically `re-invent the wheel` when there's something already out there doing what is being expected.\r\n\r\nI would like to look at these 3rd party libraries as specialization's of something.\r\n\r\nThe intent is merely to avoid duplication of functionalities and focus on what TestNG can offer to its users as unique value adds. IMO adding another 3rd party library which can do this, is also meant to be visualized as \"out of the box\" support for a functionality.\r\n\r\nI hope that explains the rationale behind `no, no` 😄 "}}
{"actor":{"display_login":"krmahadevan"}}