/Main/Testing/Rxx.UnitTests/Interactive/TraceTests - System.Diagnostics.TraceSouce.cs
C# | 134 lines | 94 code | 40 blank | 0 comment | 0 complexity | 331d60f985c39ce57b5d7a250ff6a072 MD5 | raw file
- using System;
- using System.Linq;
- using Microsoft.VisualStudio.TestTools.UnitTesting;
-
- namespace Rxx.UnitTests.Interactive
- {
- public partial class TraceTests : RxxTraceTests
- {
- [TestMethod]
- public void IxTraceSource()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.Trace(source).ForEach();
-
- AssertEqual(Listener.Messages, Concat(
- Enumerable.Range(0, 5).Select(value => TraceDefaults.DefaultOnNext(value)),
- TraceDefaults.DefaultOnCompleted()));
- }
-
- [TestMethod]
- public void IxTraceSourceOnNext()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnNext(source).ForEach();
-
- AssertEqual(Listener.Messages, Enumerable.Range(0, 5).Select(value => TraceDefaults.DefaultOnNext(value)));
- }
-
- [TestMethod]
- public void IxTraceSourceOnNextFormat()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnNext(source, "OnNext: {0}").ForEach();
-
- AssertEqual(Listener.Messages, Enumerable.Range(0, 5).Select(value => "OnNext: " + value));
- }
-
- [TestMethod]
- public void IxTraceSourceOnNextLazyMessage()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnNext(source, value => "OnNext: " + value).ForEach();
-
- AssertEqual(Listener.Messages, Enumerable.Range(0, 5).Select(value => "OnNext: " + value));
- }
-
- [TestMethod]
- public void IxTraceSourceOnError()
- {
- var source = CreateTraceSource();
-
- var ex = new RxxMockException("Error");
- var xs = EnumerableEx.Throw<int>(ex);
-
- xs.TraceOnError(source).Catch(Enumerable.Empty<int>()).ForEach();
-
- AssertEqual(Listener.Messages, TraceDefaults.DefaultOnError(ex));
- }
-
- [TestMethod]
- public void IxTraceSourceOnErrorFormat()
- {
- var source = CreateTraceSource();
-
- var ex = new RxxMockException("Error");
- var xs = EnumerableEx.Throw<int>(ex);
-
- xs.TraceOnError(source, "OnError: {0}").Catch(Enumerable.Empty<int>()).ForEach();
-
- AssertEqual(Listener.Messages, "OnError: " + ex.ToString());
- }
-
- [TestMethod]
- public void IxTraceSourceOnErrorLazyMessage()
- {
- var source = CreateTraceSource();
-
- var ex = new RxxMockException("Error");
- var xs = EnumerableEx.Throw<int>(ex);
-
- xs.TraceOnError(source, error => "OnError: " + error.Message).Catch(Enumerable.Empty<int>()).ForEach();
-
- AssertEqual(Listener.Messages, "OnError: " + ex.Message);
- }
-
- [TestMethod]
- public void IxTraceSourceOnCompleted()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnCompleted(source).ForEach();
-
- AssertEqual(Listener.Messages, TraceDefaults.DefaultOnCompleted());
- }
-
- [TestMethod]
- public void IxTraceSourceOnCompletedFormat()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnCompleted(source, "OnCompleted").ForEach();
-
- AssertEqual(Listener.Messages, "OnCompleted");
- }
-
- [TestMethod]
- public void IxTraceSourceOnCompletedLazyMessage()
- {
- var source = CreateTraceSource();
-
- var xs = Enumerable.Range(0, 5);
-
- xs.TraceOnCompleted(source, () => "OnCompleted").ForEach();
-
- AssertEqual(Listener.Messages, "OnCompleted");
- }
- }
- }