コード例 #1
0
        public void TestMergeSimultaneous()
        {
            StreamSink <int> s    = Stream.CreateSink <int>();
            Stream <int>     s2   = s.Map(x => 2 * x);
            List <int>       @out = new List <int>();
            IListener        l    = s.Merge(s2, (x, y) => x + y).Listen(@out.Add);

            s.Send(7);
            s.Send(9);
            l.Unlisten();
            CollectionAssert.AreEqual(new[] { 21, 27 }, @out);
        }
コード例 #2
0
        public void TestMergeNonSimultaneous()
        {
            StreamSink <int> s1   = Stream.CreateSink <int>();
            StreamSink <int> s2   = Stream.CreateSink <int>();
            List <int>       @out = new List <int>();
            IListener        l    = s1.Merge(s2, (x, y) => x + y).Listen(@out.Add);

            s1.Send(7);
            s2.Send(9);
            s1.Send(8);
            l.Unlisten();
            CollectionAssert.AreEqual(new[] { 7, 9, 8 }, @out);
        }
コード例 #3
0
ファイル: StreamTests.cs プロジェクト: gitter-badger/sodium-1
        public void TestMergeSimultaneous()
        {
            StreamSink <int> s    = new StreamSink <int>();
            Stream <int>     s2   = s.Map(x => 2 * x);
            List <int>       @out = new List <int>();

            using (s.Merge(s2, (x, y) => x + y).Listen(@out.Add))
            {
                s.Send(7);
                s.Send(9);
            }
            CollectionAssert.AreEqual(new[] { 21, 27 }, @out);
        }
コード例 #4
0
ファイル: StreamTests.cs プロジェクト: gitter-badger/sodium-1
        public void TestMergeNonSimultaneous()
        {
            StreamSink <int> s1   = new StreamSink <int>();
            StreamSink <int> s2   = new StreamSink <int>();
            List <int>       @out = new List <int>();

            using (s1.Merge(s2, (x, y) => x + y).Listen(@out.Add))
            {
                s1.Send(7);
                s2.Send(9);
                s1.Send(8);
            }
            CollectionAssert.AreEqual(new[] { 7, 9, 8 }, @out);
        }
コード例 #5
0
ファイル: StreamTests.cs プロジェクト: jam40jeff/sodium
 public void TestMergeSimultaneous()
 {
     StreamSink<int> s = new StreamSink<int>();
     Stream<int> s2 = s.Map(x => 2 * x);
     List<int> @out = new List<int>();
     using (s.Merge(s2, (x, y) => x + y).Listen(@out.Add))
     {
         s.Send(7);
         s.Send(9);
     }
     CollectionAssert.AreEqual(new[] { 21, 27 }, @out);
 }
コード例 #6
0
ファイル: StreamTests.cs プロジェクト: jam40jeff/sodium
 public void TestMergeNonSimultaneous()
 {
     StreamSink<int> s1 = new StreamSink<int>();
     StreamSink<int> s2 = new StreamSink<int>();
     List<int> @out = new List<int>();
     using (s1.Merge(s2, (x, y) => x + y).Listen(@out.Add))
     {
         s1.Send(7);
         s2.Send(9);
         s1.Send(8);
     }
     CollectionAssert.AreEqual(new[] { 7, 9, 8 }, @out);
 }