Skip to content

Commit

Permalink
A unit test to support the timeout scenario
Browse files Browse the repository at this point in the history
Issue #112
  • Loading branch information
lprichar committed Jan 24, 2018
1 parent f45a16a commit 17dfbbc
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions SirenOfShame.Test.Unit/TfsRestServices/TfsRestWatcherTest.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using System.Collections.Generic;
using System.Net;
using System.Threading.Tasks;
using Moq;
using NUnit.Framework;
using SirenOfShame.Lib.Exceptions;
Expand Down Expand Up @@ -97,6 +98,23 @@ public void GivenHttpRequestException_WhenGettingBuildStatus_ThenServerUnavailab
);
}

[Test]
public void GivenTaskCanceledExceptionAkaTimeout_WhenGettingBuildStatus_ThenServerUnavailableException()
{
// arrange
var buildDefinitionSettings = new[] {new BuildDefinitionSetting()};
var tfsRestService = new Mock<TfsRestService>();
var ciEntryPointSetting = new CiEntryPointSetting { Url = "url" };
tfsRestService.Setup(i => i.GetBuildsStatuses(ciEntryPointSetting, buildDefinitionSettings))
.ThrowsAsync(new TaskCanceledException());
var tfsRestWatcher = new MyTfsRestWatcher(tfsRestService.Object, buildDefinitionSettings, ciEntryPointSetting);

// assert & act
Assert.Throws<ServerUnavailableException>(() =>
tfsRestWatcher.MyGetBuildStatus()
);
}

[Test]
public void GivenHttpRequestExceptionWith401InMessage_WhenGettingBuildStatus_ThenInvalidCredentialsException()
{
Expand Down

0 comments on commit 17dfbbc

Please sign in to comment.