コード例 #1
0
ファイル: FutureFacts.cs プロジェクト: JeffCyr/SeerDotNet
        public void Future_Equals()
        {
            void TestEquals <T>(Future <T> future1, Future <T> future2)
            {
                var future1Copy = future1;
                var future2Copy = future2;

                Assert.True(Equals(future1, (Future <T>)(Future) future1Copy));
                Assert.True(future1 == future1Copy);

                Assert.True(!Equals(future1, future2Copy));
                Assert.True(future1 != future2);

                Assert.True(Equals((Future)future1, future1));
                Assert.True(Equals(future1, (Future)future1));
                Assert.True(Equals((Future)future1, (Future)future1Copy));

                Assert.True(!Equals((Future)future1, future2));
                Assert.True(!Equals(future1, (Future)future2));
                Assert.True(!Equals((Future)future1, (Future)future2));
            }

            TestEquals(Future.FromValue(1), Future.FromValue(2));

            TestEquals(Future.FromValue(1), CreateCompleted(1));

            TestEquals(CreateCompleted(1), CreateCompleted(1));

            TestEquals(new Promise <int>().Future, new Promise <int>().Future);
        }
コード例 #2
0
ファイル: FutureFacts.cs プロジェクト: JeffCyr/SeerDotNet
        public async Task Await_PrecompletedFuture()
        {
            var future = Future.FromValue("test");

            Assert.True(future.IsCompleted);
            Assert.False(future.IsFailed);
            Assert.True(future.IsSucceeded);

            Assert.Equal("test", await future);
        }
コード例 #3
0
        public async Task Test()
        {
            async Future <int> LocalTest()
            {
                await Task.Delay(100);

                return(await Future.FromValue(5));
            }

            int n = await LocalTest();

            Assert.Equal(5, n);
        }