Thanks for the great post Kevin, well written and easy to follow. I also found this one example here https://redux-observable.js.org/docs/recipes/WritingTests.html, however I believe your example more precisely tests the output of the epic which is what I needed.
I did add mocking logic for mocking the store (as shown in the link mentioned), which is needed in the cases where you have epics that depend on having access to the state — in your example it is null.
EDIT: Also one other comment, you can always stub your dependencies instead of forcing the signature of your epics to allow for injection of the dependencies themselves. It’s a matter of taste, but I prefer stubbing dependencies in tests instead of making the actual code fit my test needs.
Thanks!