{"action":"created","comment":{"url":"https://api.github.com/repos/facebook/xctool/pulls/comments/39802418","id":39802418,"diff_hunk":"@@ -359,50 +361,62 @@ - (BOOL)testsPresentInOptions\n   return (_logicTests.count > 0) || (_rawAppTestArgs.count > 0) || (_appTests.count > 0);\n }\n \n-- (NSDictionary *)onlyListAsTargetsAndSenTestList\n+- (NSDictionary *)onlyListAsTargetsAndSenTestList:(XcodeSubjectInfo *)xcodeSubjectInfo\n {\n   NSMutableDictionary *results = [NSMutableDictionary dictionary];\n   for (NSString *item in _onlyList) {\n     NSRange colonRange = [item rangeOfString:@\":\"];\n     NSString *target = nil;\n     NSString *senTestList = nil;\n-    if (colonRange.length > 0) {\n+    if (colonRange.location != NSNotFound) {\n       target = [item substringToIndex:colonRange.location];\n       senTestList = [item substringFromIndex:colonRange.location + 1];\n     } else {\n       target = item;\n     }\n-    // Prefer applying the setting to the more specific list rather than the target\n-    // if multiple -only are specified and one is a target while the other is a list\n-    if (results[target] == nil || [results[target] isEqualTo:[NSNull null]]) {\n-      results[target] = senTestList ? [@[senTestList] mutableCopy] : [NSNull null];\n-    } else if (senTestList != nil) {\n-      [results[target] addObject:senTestList];\n+    NSArray *matches;\n+    matches = [xcodeSubjectInfo testablesMatchingTarget:target];","path":"xctool/xctool/RunTestsAction.m","position":63,"original_position":63,"commit_id":"333437c2c304e1d71180eb725ffa8bba3b98a627","original_commit_id":"333437c2c304e1d71180eb725ffa8bba3b98a627","user":{"login":"ExtremeMan","id":1044236,"avatar_url":"https://avatars.githubusercontent.com/u/1044236?v=3","gravatar_id":"","url":"https://api.github.com/users/ExtremeMan","html_url":"https://github.com/ExtremeMan","followers_url":"https://api.github.com/users/ExtremeMan/followers","following_url":"https://api.github.com/users/ExtremeMan/following{/other_user}","gists_url":"https://api.github.com/users/ExtremeMan/gists{/gist_id}","starred_url":"https://api.github.com/users/ExtremeMan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ExtremeMan/subscriptions","organizations_url":"https://api.github.com/users/ExtremeMan/orgs","repos_url":"https://api.github.com/users/ExtremeMan/repos","events_url":"https://api.github.com/users/ExtremeMan/events{/privacy}","received_events_url":"https://api.github.com/users/ExtremeMan/received_events","type":"User","site_admin":false},"body":"It could be on the line above.","created_at":"2015-09-17T21:38:15Z","updated_at":"2015-09-17T21:38:15Z","html_url":"https://github.com/facebook/xctool/pull/577#discussion_r39802418","pull_request_url":"https://api.github.com/repos/facebook/xctool/pulls/577","_links":{"self":{"href":"https://api.github.com/repos/facebook/xctool/pulls/comments/39802418"},"html":{"href":"https://github.com/facebook/xctool/pull/577#discussion_r39802418"},"pull_request":{"href":"https://api.github.com/repos/facebook/xctool/pulls/577"}}},"pull_request":{"url":"https://api.github.com/repos/facebook/xctool/pulls/577","id":45330552,"html_url":"https://github.com/facebook/xctool/pull/577","diff_url":"https://github.com/facebook/xctool/pull/577.diff","patch_url":"https://github.com/facebook/xctool/pull/577.patch","issue_url":"https://api.github.com/repos/facebook/xctool/issues/577","number":577,"state":"open","locked":false,"title":"Support wildcards in target","user":{"login":"kcoons","id":2028444,"avatar_url":"https://avatars.githubusercontent.com/u/2028444?v=3","gravatar_id":"","url":"https://api.github.com/users/kcoons","html_url":"https://github.com/kcoons","followers_url":"https://api.github.com/users/kcoons/followers","following_url":"https://api.github.com/users/kcoons/following{/other_user}","gists_url":"https://api.github.com/users/kcoons/gists{/gist_id}","starred_url":"https://api.github.com/users/kcoons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kcoons/subscriptions","organizations_url":"https://api.github.com/users/kcoons/orgs","repos_url":"https://api.github.com/users/kcoons/repos","events_url":"https://api.github.com/users/kcoons/events{/privacy}","received_events_url":"https://api.github.com/users/kcoons/received_events","type":"User","site_admin":false},"body":"Support a wildcard suffix for targets with the -only and -omit options.  Don't allow -only wildcard targets that do not match any targets.  Group tests if multiple wildcard targets match the same actual target so all matching tests are used.","created_at":"2015-09-17T19:22:04Z","updated_at":"2015-09-17T21:38:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ddae2e23381568ae1e3f8e09f9cd0711eb6042a9","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/facebook/xctool/pulls/577/commits","review_comments_url":"https://api.github.com/repos/facebook/xctool/pulls/577/comments","review_comment_url":"https://api.github.com/repos/facebook/xctool/pulls/comments{/number}","comments_url":"https://api.github.com/repos/facebook/xctool/issues/577/comments","statuses_url":"https://api.github.com/repos/facebook/xctool/statuses/333437c2c304e1d71180eb725ffa8bba3b98a627","head":{"label":"kcoons:wildcard","ref":"wildcard","sha":"333437c2c304e1d71180eb725ffa8bba3b98a627","user":{"login":"kcoons","id":2028444,"avatar_url":"https://avatars.githubusercontent.com/u/2028444?v=3","gravatar_id":"","url":"https://api.github.com/users/kcoons","html_url":"https://github.com/kcoons","followers_url":"https://api.github.com/users/kcoons/followers","following_url":"https://api.github.com/users/kcoons/following{/other_user}","gists_url":"https://api.github.com/users/kcoons/gists{/gist_id}","starred_url":"https://api.github.com/users/kcoons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kcoons/subscriptions","organizations_url":"https://api.github.com/users/kcoons/orgs","repos_url":"https://api.github.com/users/kcoons/repos","events_url":"https://api.github.com/users/kcoons/events{/privacy}","received_events_url":"https://api.github.com/users/kcoons/received_events","type":"User","site_admin":false},"repo":{"id":11436081,"name":"xctool","full_name":"kcoons/xctool","owner":{"login":"kcoons","id":2028444,"avatar_url":"https://avatars.githubusercontent.com/u/2028444?v=3","gravatar_id":"","url":"https://api.github.com/users/kcoons","html_url":"https://github.com/kcoons","followers_url":"https://api.github.com/users/kcoons/followers","following_url":"https://api.github.com/users/kcoons/following{/other_user}","gists_url":"https://api.github.com/users/kcoons/gists{/gist_id}","starred_url":"https://api.github.com/users/kcoons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kcoons/subscriptions","organizations_url":"https://api.github.com/users/kcoons/orgs","repos_url":"https://api.github.com/users/kcoons/repos","events_url":"https://api.github.com/users/kcoons/events{/privacy}","received_events_url":"https://api.github.com/users/kcoons/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/kcoons/xctool","description":"xctool is a replacement for Apple's xcodebuild that makes it easier to build and test iOS and Mac projects.","fork":true,"url":"https://api.github.com/repos/kcoons/xctool","forks_url":"https://api.github.com/repos/kcoons/xctool/forks","keys_url":"https://api.github.com/repos/kcoons/xctool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/kcoons/xctool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/kcoons/xctool/teams","hooks_url":"https://api.github.com/repos/kcoons/xctool/hooks","issue_events_url":"https://api.github.com/repos/kcoons/xctool/issues/events{/number}","events_url":"https://api.github.com/repos/kcoons/xctool/events","assignees_url":"https://api.github.com/repos/kcoons/xctool/assignees{/user}","branches_url":"https://api.github.com/repos/kcoons/xctool/branches{/branch}","tags_url":"https://api.github.com/repos/kcoons/xctool/tags","blobs_url":"https://api.github.com/repos/kcoons/xctool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/kcoons/xctool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/kcoons/xctool/git/refs{/sha}","trees_url":"https://api.github.com/repos/kcoons/xctool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/kcoons/xctool/statuses/{sha}","languages_url":"https://api.github.com/repos/kcoons/xctool/languages","stargazers_url":"https://api.github.com/repos/kcoons/xctool/stargazers","contributors_url":"https://api.github.com/repos/kcoons/xctool/contributors","subscribers_url":"https://api.github.com/repos/kcoons/xctool/subscribers","subscription_url":"https://api.github.com/repos/kcoons/xctool/subscription","commits_url":"https://api.github.com/repos/kcoons/xctool/commits{/sha}","git_commits_url":"https://api.github.com/repos/kcoons/xctool/git/commits{/sha}","comments_url":"https://api.github.com/repos/kcoons/xctool/comments{/number}","issue_comment_url":"https://api.github.com/repos/kcoons/xctool/issues/comments{/number}","contents_url":"https://api.github.com/repos/kcoons/xctool/contents/{+path}","compare_url":"https://api.github.com/repos/kcoons/xctool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/kcoons/xctool/merges","archive_url":"https://api.github.com/repos/kcoons/xctool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/kcoons/xctool/downloads","issues_url":"https://api.github.com/repos/kcoons/xctool/issues{/number}","pulls_url":"https://api.github.com/repos/kcoons/xctool/pulls{/number}","milestones_url":"https://api.github.com/repos/kcoons/xctool/milestones{/number}","notifications_url":"https://api.github.com/repos/kcoons/xctool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/kcoons/xctool/labels{/name}","releases_url":"https://api.github.com/repos/kcoons/xctool/releases{/id}","created_at":"2013-07-15T23:23:46Z","updated_at":"2013-07-23T00:42:38Z","pushed_at":"2015-09-17T19:59:55Z","git_url":"git://github.com/kcoons/xctool.git","ssh_url":"git@github.com:kcoons/xctool.git","clone_url":"https://github.com/kcoons/xctool.git","svn_url":"https://github.com/kcoons/xctool","homepage":null,"size":6991,"stargazers_count":0,"watchers_count":0,"language":"Objective-C","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"facebook:master","ref":"master","sha":"4ceb94455dc0ad67c0cff4a1bee39bb39d6c911c","user":{"login":"facebook","id":69631,"avatar_url":"https://avatars.githubusercontent.com/u/69631?v=3","gravatar_id":"","url":"https://api.github.com/users/facebook","html_url":"https://github.com/facebook","followers_url":"https://api.github.com/users/facebook/followers","following_url":"https://api.github.com/users/facebook/following{/other_user}","gists_url":"https://api.github.com/users/facebook/gists{/gist_id}","starred_url":"https://api.github.com/users/facebook/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/facebook/subscriptions","organizations_url":"https://api.github.com/users/facebook/orgs","repos_url":"https://api.github.com/users/facebook/repos","events_url":"https://api.github.com/users/facebook/events{/privacy}","received_events_url":"https://api.github.com/users/facebook/received_events","type":"Organization","site_admin":false},"repo":{"id":9639981,"name":"xctool","full_name":"facebook/xctool","owner":{"login":"facebook","id":69631,"avatar_url":"https://avatars.githubusercontent.com/u/69631?v=3","gravatar_id":"","url":"https://api.github.com/users/facebook","html_url":"https://github.com/facebook","followers_url":"https://api.github.com/users/facebook/followers","following_url":"https://api.github.com/users/facebook/following{/other_user}","gists_url":"https://api.github.com/users/facebook/gists{/gist_id}","starred_url":"https://api.github.com/users/facebook/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/facebook/subscriptions","organizations_url":"https://api.github.com/users/facebook/orgs","repos_url":"https://api.github.com/users/facebook/repos","events_url":"https://api.github.com/users/facebook/events{/privacy}","received_events_url":"https://api.github.com/users/facebook/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/facebook/xctool","description":"A replacement for Apple's xcodebuild that makes it easier to build and test iOS or OSX apps.","fork":false,"url":"https://api.github.com/repos/facebook/xctool","forks_url":"https://api.github.com/repos/facebook/xctool/forks","keys_url":"https://api.github.com/repos/facebook/xctool/keys{/key_id}","collaborators_url":"https://api.github.com/repos/facebook/xctool/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/facebook/xctool/teams","hooks_url":"https://api.github.com/repos/facebook/xctool/hooks","issue_events_url":"https://api.github.com/repos/facebook/xctool/issues/events{/number}","events_url":"https://api.github.com/repos/facebook/xctool/events","assignees_url":"https://api.github.com/repos/facebook/xctool/assignees{/user}","branches_url":"https://api.github.com/repos/facebook/xctool/branches{/branch}","tags_url":"https://api.github.com/repos/facebook/xctool/tags","blobs_url":"https://api.github.com/repos/facebook/xctool/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/facebook/xctool/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/facebook/xctool/git/refs{/sha}","trees_url":"https://api.github.com/repos/facebook/xctool/git/trees{/sha}","statuses_url":"https://api.github.com/repos/facebook/xctool/statuses/{sha}","languages_url":"https://api.github.com/repos/facebook/xctool/languages","stargazers_url":"https://api.github.com/repos/facebook/xctool/stargazers","contributors_url":"https://api.github.com/repos/facebook/xctool/contributors","subscribers_url":"https://api.github.com/repos/facebook/xctool/subscribers","subscription_url":"https://api.github.com/repos/facebook/xctool/subscription","commits_url":"https://api.github.com/repos/facebook/xctool/commits{/sha}","git_commits_url":"https://api.github.com/repos/facebook/xctool/git/commits{/sha}","comments_url":"https://api.github.com/repos/facebook/xctool/comments{/number}","issue_comment_url":"https://api.github.com/repos/facebook/xctool/issues/comments{/number}","contents_url":"https://api.github.com/repos/facebook/xctool/contents/{+path}","compare_url":"https://api.github.com/repos/facebook/xctool/compare/{base}...{head}","merges_url":"https://api.github.com/repos/facebook/xctool/merges","archive_url":"https://api.github.com/repos/facebook/xctool/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/facebook/xctool/downloads","issues_url":"https://api.github.com/repos/facebook/xctool/issues{/number}","pulls_url":"https://api.github.com/repos/facebook/xctool/pulls{/number}","milestones_url":"https://api.github.com/repos/facebook/xctool/milestones{/number}","notifications_url":"https://api.github.com/repos/facebook/xctool/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/facebook/xctool/labels{/name}","releases_url":"https://api.github.com/repos/facebook/xctool/releases{/id}","created_at":"2013-04-24T05:18:44Z","updated_at":"2015-09-17T21:17:14Z","pushed_at":"2015-09-17T19:59:56Z","git_url":"git://github.com/facebook/xctool.git","ssh_url":"git@github.com:facebook/xctool.git","clone_url":"https://github.com/facebook/xctool.git","svn_url":"https://github.com/facebook/xctool","homepage":"","size":21071,"stargazers_count":4835,"watchers_count":4835,"language":"Objective-C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":519,"mirror_url":null,"open_issues_count":38,"forks":519,"open_issues":38,"watchers":4835,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/facebook/xctool/pulls/577"},"html":{"href":"https://github.com/facebook/xctool/pull/577"},"issue":{"href":"https://api.github.com/repos/facebook/xctool/issues/577"},"comments":{"href":"https://api.github.com/repos/facebook/xctool/issues/577/comments"},"review_comments":{"href":"https://api.github.com/repos/facebook/xctool/pulls/577/comments"},"review_comment":{"href":"https://api.github.com/repos/facebook/xctool/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/facebook/xctool/pulls/577/commits"},"statuses":{"href":"https://api.github.com/repos/facebook/xctool/statuses/333437c2c304e1d71180eb725ffa8bba3b98a627"}}}}