Skip to content

Commit 0312af9

Browse files
epasos573const-cloudinary
authored andcommitted
Add support for BackgroundRemoval in GetUsage Admin API
1 parent 1084ef8 commit 0312af9

File tree

3 files changed

+62
-0
lines changed

3 files changed

+62
-0
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
using NUnit.Framework;
2+
using SystemHttp = System.Net.Http;
3+
4+
namespace CloudinaryDotNet.Tests.AdminApi
5+
{
6+
[TestFixture]
7+
public class UsageReportResponseTest
8+
{
9+
[Test]
10+
public void TestBackgroundRemovalInUsageResponse()
11+
{
12+
var responseData = @"
13+
{
14+
'plan': 'Basic',
15+
'last_updated': '2019-11-10',
16+
'transformations': { 'usage': 1218018, 'credits_usage': 1.22},
17+
'objects': { 'usage': 1217216},
18+
'bandwidth': { 'usage': 268903064875, 'credits_usage': 0.24},
19+
'storage': { 'usage': 10298444599, 'credits_usage': 0.01},
20+
'credits': { 'usage': 1.47},
21+
'requests': 877212,
22+
'resources': 1239,
23+
'derived_resources': 10091,
24+
'background_removal': { 'usage': 15, 'limit': 50},
25+
'azure_video_indexer': { 'usage': 2340, 'limit': 5000},
26+
'object_detection': { 'usage': 340, 'limit': 500},
27+
'media_limits': {
28+
'image_max_size_bytes': 157286400,
29+
'video_max_size_bytes': 3145728000,
30+
'raw_max_size_bytes': 2097152000,
31+
'image_max_px': 100000000,
32+
'asset_max_total_px': 300000000
33+
}
34+
}";
35+
36+
var localCloudinaryMock = new MockedCloudinary(responseData);
37+
38+
var result = localCloudinaryMock.GetUsage();
39+
40+
localCloudinaryMock.AssertHttpCall(SystemHttp.HttpMethod.Get, "usage");
41+
42+
Assert.NotNull(result);
43+
44+
Assert.AreEqual(result.BackgroundRemoval.CreditsUsage, 0);
45+
Assert.AreEqual(result.BackgroundRemoval.Limit, 50);
46+
Assert.AreEqual(result.BackgroundRemoval.Used, 15);
47+
Assert.AreEqual(result.BackgroundRemoval.UsedPercent, 0);
48+
}
49+
}
50+
}

CloudinaryDotNet.Tests/CloudinaryDotNet.Tests.csproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,10 @@
2626
<Reference Include="System.Net.Http" />
2727
</ItemGroup>
2828

29+
<ItemGroup>
30+
<None Remove="AdminApi\" />
31+
</ItemGroup>
32+
<ItemGroup>
33+
<Folder Include="AdminApi\" />
34+
</ItemGroup>
2935
</Project>

CloudinaryDotNet/Actions/AssetsManagement/UsageResult.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,5 +129,11 @@ public class UsageResult : BaseResult
129129
/// </summary>
130130
[DataMember(Name = "media_limits")]
131131
public Dictionary<string, long> MediaLimits { get; set; }
132+
133+
/// <summary>
134+
/// Gets or sets information about the background removal usage in your account.
135+
/// </summary>
136+
[DataMember(Name = "background_removal")]
137+
public Usage BackgroundRemoval { get; set; }
132138
}
133139
}

0 commit comments

Comments
 (0)