{"action":"created","issue":{"url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/233","labels_url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/233/labels{/name}","comments_url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/233/comments","events_url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/233/events","html_url":"https://github.com/reactive-streams/reactive-streams-jvm/issues/233","id":59633491,"number":233,"title":"Question on validity of SubscriberBlackboxVerification.required_spec201_blackbox_mustSignalDemandViaSubscriptionRequest","user":{"login":"purplefox","id":701906,"avatar_url":"https://avatars.githubusercontent.com/u/701906?v=3","gravatar_id":"","url":"https://api.github.com/users/purplefox","html_url":"https://github.com/purplefox","followers_url":"https://api.github.com/users/purplefox/followers","following_url":"https://api.github.com/users/purplefox/following{/other_user}","gists_url":"https://api.github.com/users/purplefox/gists{/gist_id}","starred_url":"https://api.github.com/users/purplefox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/purplefox/subscriptions","organizations_url":"https://api.github.com/users/purplefox/orgs","repos_url":"https://api.github.com/users/purplefox/repos","events_url":"https://api.github.com/users/purplefox/events{/privacy}","received_events_url":"https://api.github.com/users/purplefox/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-03-03T12:14:27Z","updated_at":"2015-03-03T13:40:06Z","closed_at":null,"body":"Hi folks,\r\n\r\nThis test is currently failing when run against Vert.x.\r\n\r\nThe test appears to expect Subscription.request(..) to be called sometime shortly after the onSubscribe method of the Subscriber is called.\r\n\r\nFrom the docs, it appears this is trying to validate Subscriber requirement 2.1:\r\n\r\nhttps://github.com/reactive-streams/reactive-streams-jvm#2.1\r\n\r\n\"A Subscriber MUST signal demand via Subscription.request(long n) to receive onNext signals.\"\r\n\r\nHowever, I can't see anything in the above that says request() must be invoked when the onSubscribe method is called.\r\n\r\nThe Vert.x subscriber implementation won't call Subscription.request until some time later when the user has actually set a handler on the subscriber.\r\n\r\nSo I would like to question the validity of this test.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/comments/76946400","html_url":"https://github.com/reactive-streams/reactive-streams-jvm/issues/233#issuecomment-76946400","issue_url":"https://api.github.com/repos/reactive-streams/reactive-streams-jvm/issues/233","id":76946400,"user":{"login":"purplefox","id":701906,"avatar_url":"https://avatars.githubusercontent.com/u/701906?v=3","gravatar_id":"","url":"https://api.github.com/users/purplefox","html_url":"https://github.com/purplefox","followers_url":"https://api.github.com/users/purplefox/followers","following_url":"https://api.github.com/users/purplefox/following{/other_user}","gists_url":"https://api.github.com/users/purplefox/gists{/gist_id}","starred_url":"https://api.github.com/users/purplefox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/purplefox/subscriptions","organizations_url":"https://api.github.com/users/purplefox/orgs","repos_url":"https://api.github.com/users/purplefox/repos","events_url":"https://api.github.com/users/purplefox/events{/privacy}","received_events_url":"https://api.github.com/users/purplefox/received_events","type":"User","site_admin":false},"created_at":"2015-03-03T13:40:06Z","updated_at":"2015-03-03T13:40:06Z","body":"On the basis that when requestMore gets called is implementation dependent, then one way of fixing the TCK test would be to provide a new method on SubscriberBlackboxVerification which can be implemented by me which calls the implementation specific method that ensures the initial requestMore gets called, e.g. I would implement this on my class that extends SubscriberBlackboxVerification:\r\n\r\n@Override\r\n  public void callInitialRequestMore() {\r\n    myimplementation.handler(buff -> });\r\n  }\r\n\r\n"}}