public void ShouldIgnoreException() { var exception = new Exception(); var stubEvent = new StubEvent(0); var exceptionHandler = new IgnoreExceptionHandler(); exceptionHandler.HandleEventException(exception, 0L, stubEvent); }
public bool Equals(StubEvent other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(other.Value == Value); }
public void ShouldClaimAndGetInSeparateThread() { var events = GetEvents(0, 0); var expectedEvent = new StubEvent(2701); var sequence = _ringBuffer.Next(); StubEvent oldEvent = _ringBuffer[sequence]; oldEvent.Copy(expectedEvent); _ringBuffer.Publish(sequence); Assert.AreEqual(expectedEvent, events.Result[0]); }
public void ShouldHandleFatalException() { var causeException = new Exception(); var evt = new StubEvent(0); var exceptionHandler = new FatalExceptionHandler(); try { exceptionHandler.HandleEventException(causeException, 0L, evt); } catch (Exception ex) { Assert.AreEqual(causeException, ex.InnerException); } }
public void ShouldClaimAndGetWithTimeout() { Assert.AreEqual(Sequencer.InitialCursorValue, _ringBuffer.Cursor); var expectedEvent = new StubEvent(2701); long claimSequence = _ringBuffer.Next(); StubEvent oldEvent = _ringBuffer[claimSequence]; oldEvent.Copy(expectedEvent); _ringBuffer.Publish(claimSequence); long sequence = _sequenceBarrier.WaitFor(0, TimeSpan.FromMilliseconds(5)); Assert.AreEqual(0, sequence); var evt = _ringBuffer[sequence]; Assert.AreEqual(expectedEvent, evt); Assert.AreEqual(0L, _ringBuffer.Cursor); }
public void ShouldClaimAndGet() { Assert.AreEqual(Sequencer.InitialCursorValue, _ringBuffer.Cursor); var expectedEvent = new StubEvent(2701); var claimSequence = _ringBuffer.Next(); var oldEvent = _ringBuffer[claimSequence]; oldEvent.Copy(expectedEvent); _ringBuffer.Publish(claimSequence); long sequence = _sequenceBarrier.WaitFor(0); Assert.AreEqual(0, sequence); StubEvent evt = _ringBuffer[sequence]; Assert.AreEqual(expectedEvent, evt); Assert.AreEqual(0L, _ringBuffer.Cursor); }
public void Copy(StubEvent evt) { Value = evt.Value; }
public bool Equals(StubEvent other) { if (ReferenceEquals(null, other)) return false; if (ReferenceEquals(this, other)) return true; return other.Value == Value; }