Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

producer/consumer: ability to mock for tests #182

Closed
jchauncey opened this issue Jun 13, 2016 · 6 comments
Closed

producer/consumer: ability to mock for tests #182

jchauncey opened this issue Jun 13, 2016 · 6 comments

Comments

@jchauncey
Copy link

Would be awesome if there was some way to create a mock producer/consumer that acted like it was actually interacting with a real nsq instance.

@jchauncey
Copy link
Author

Basically I'd like to have some of these methods made public - https://github.com/nsqio/go-nsq/blob/master/mock_test.go

@jehiah
Copy link
Member

jehiah commented Jun 13, 2016

@jchauncey I'm not sure how i feel about exposing an interface in go-nsq for testing, but I've used this to much success https://gist.github.com/jehiah/572be9b20c55e5ebbd2d21c73da5b08e It might be sufficient for your needs too. The included NoOpMessageDelegate can make it easier to construct nsq.Message for calling a handler directly to test consumers.

@jchauncey
Copy link
Author

So what i wanted to do was test the consumption of a mock message in an app I was writing without having to actually start nsq. I ended up copying a lot of the functions in mock_test to get it to work but that seemed rather clunky.

@mreiferson mreiferson changed the title Ability to mock producer/consumer interaction producer/consumer: ability to mock for tests Jun 25, 2016
@mreiferson
Copy link
Member

The code in mock_test feels like too much to be exporting, mostly because it's designed to validate low level protocol behaviors.

I feel like what you want could be much simpler, and depending on what we came up with I think we could at least consider providing as a set of exported types in go-nsq.

Are you interested in taking a pass?

@mreiferson
Copy link
Member

See #146

@sefasenturk95
Copy link

Is it still not possible to mock NSQ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants