mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-16 09:13:02 +08:00
34 lines
1.1 KiB
C#
34 lines
1.1 KiB
C#
using System;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using MQTTnet.Core.Exceptions;
|
|
using MQTTnet.Core.Internal;
|
|
|
|
namespace MQTTnet.Core.Tests
|
|
{
|
|
[TestClass]
|
|
public class ExtensionTests
|
|
{
|
|
[ExpectedException(typeof( MqttCommunicationTimedOutException ) )]
|
|
[TestMethod]
|
|
public async Task TestTimeoutAfter()
|
|
{
|
|
await Task.Delay(TimeSpan.FromMilliseconds(500)).TimeoutAfter(TimeSpan.FromMilliseconds(100));
|
|
}
|
|
|
|
[ExpectedException(typeof( MqttCommunicationTimedOutException))]
|
|
[TestMethod]
|
|
public async Task TestTimeoutAfterWithResult()
|
|
{
|
|
await Task.Delay(TimeSpan.FromMilliseconds(500)).ContinueWith(t => 5).TimeoutAfter(TimeSpan.FromMilliseconds(100));
|
|
}
|
|
|
|
[TestMethod]
|
|
public async Task TestTimeoutAfterCompleteInTime()
|
|
{
|
|
var result = await Task.Delay( TimeSpan.FromMilliseconds( 100 ) ).ContinueWith( t => 5 ).TimeoutAfter( TimeSpan.FromMilliseconds( 500 ) );
|
|
Assert.AreEqual( 5, result );
|
|
}
|
|
}
|
|
}
|