-
Notifications
You must be signed in to change notification settings - Fork 328
Expand file tree
/
Copy pathDurableTaskStorageExceptionTests.cs
More file actions
44 lines (42 loc) · 2.04 KB
/
Copy pathDurableTaskStorageExceptionTests.cs
File metadata and controls
44 lines (42 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// ----------------------------------------------------------------------------------
// Copyright Microsoft Corporation
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// ----------------------------------------------------------------------------------
#nullable enable
namespace DurableTask.AzureStorage.Tests.Storage
{
using System.Net;
using Azure;
using Azure.Storage.Blobs.Models;
using DurableTask.AzureStorage.Storage;
using Microsoft.VisualStudio.TestTools.UnitTesting;
[TestClass]
public class DurableTaskStorageExceptionTests
{
[TestMethod]
public void MissingRequestFailedException()
{
DurableTaskStorageException exception = new((RequestFailedException)null!);
Assert.AreEqual(0, exception.HttpStatusCode);
Assert.IsFalse(exception.LeaseLost);
}
[TestMethod]
[DataRow(true, HttpStatusCode.Conflict, nameof(BlobErrorCode.LeaseLost))]
[DataRow(false, HttpStatusCode.Conflict, nameof(BlobErrorCode.LeaseNotPresentWithBlobOperation))]
[DataRow(false, HttpStatusCode.NotFound, nameof(BlobErrorCode.BlobNotFound))]
public void ValidRequestFailedException(bool expectedLease, HttpStatusCode statusCode, string errorCode)
{
DurableTaskStorageException exception = new(new RequestFailedException((int)statusCode, "Error!", errorCode, innerException: null));
Assert.AreEqual((int)statusCode, exception.HttpStatusCode);
Assert.AreEqual(expectedLease, exception.LeaseLost);
}
}
}