예제 #1
0
 public async Task HttpマッチングP2Pテスト()
 {
     using (var matching = new TestMatchingServer())
     {
         matching.Start();
         await Task.WhenAll(GetConn(7));
     }
 }
예제 #2
0
 public async Task Httpマッチングタイムアウトテスト()
 {
     using (var matching = new TestMatchingServer())
     {
         matching.Start();
         bool error = false;
         try
         {
             await P2PTestConn();
         }
         catch
         {
             error = true;
         }
         Assert.IsTrue(error, "タイムアウトする");
     }
 }
예제 #3
0
        public async Task Httpマッチングキャンセルテスト()
        {
            using (var matching = new TestMatchingServer())
            {
                matching.Start();
                await Assert.ThrowsExceptionAsync <OperationCanceledException>(async() =>
                {
                    CancellationTokenSource source = new CancellationTokenSource();
                    source.Cancel();
                    await P2PTestConn(source.Token);
                }, "即時キャンセルの場合");

                await Assert.ThrowsExceptionAsync <TaskCanceledException>(async() =>
                {
                    CancellationTokenSource source = new CancellationTokenSource(TimeSpan.FromMilliseconds(500));
                    await P2PTestConn(source.Token);
                }, "即時キャンセルではない場合");
            }
        }