Inspecting sequences
After tracing what flows within a sequence, the second most useful diagnostic feature is to verify the sequence content against a predicted content or a static content (usually for testing purposes with mocking objects) simply because we need to check the message homogeneity. Luckily, there are different operators that help us achieve this.
Contains
This is maybe the easiest case to deal with when we need to check if/when a sequence contains a given value.
In reactive, we always deal with sequences; this is true also when we want to aspect a Boolean value, as in this case, if we were programming in a nonreactive way. The Contains
extension method produces a new sequence that will fire a single message with a value informing us if we found what we're searching for immediately after the sourcing sequence is complete. This is easily visible by instrumenting Rx materializing our Contains
sequence. Here's an example:
var r = new Random(DateTime.Now.GetHashCode()); //an infinite...