Merge branch 'main' into v17/dev
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "^2.0.37",
|
||||
"@umbraco/playwright-testhelpers": "^16.0.36",
|
||||
"@umbraco/playwright-testhelpers": "^16.0.37",
|
||||
"camelize": "^1.0.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"node-fetch": "^2.6.7"
|
||||
@@ -67,9 +67,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@umbraco/playwright-testhelpers": {
|
||||
"version": "16.0.36",
|
||||
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-16.0.36.tgz",
|
||||
"integrity": "sha512-SjPrVgWI18ErfyCUEuIwt1V7HjCGXFLae0S8u3NO74QBbOO9z79+JM0/U4Xwqwq9KdV2XMiVPkzDm/5xThSvMg==",
|
||||
"version": "16.0.37",
|
||||
"resolved": "https://registry.npmjs.org/@umbraco/playwright-testhelpers/-/playwright-testhelpers-16.0.37.tgz",
|
||||
"integrity": "sha512-hpYrQJRxB8yK/1B2THsh2NDBaXM4DdM4npnjjFSwujBxnjOFjpJj8VfDU/D4eR8pyzZUu9qV4UkzrGxDuf9uvQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "2.0.37",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@umbraco/json-models-builders": "^2.0.37",
|
||||
"@umbraco/playwright-testhelpers": "^16.0.36",
|
||||
"@umbraco/playwright-testhelpers": "^16.0.37",
|
||||
"camelize": "^1.0.0",
|
||||
"dotenv": "^16.3.1",
|
||||
"node-fetch": "^2.6.7"
|
||||
|
||||
@@ -687,6 +687,25 @@ internal sealed class ContentServiceTests : UmbracoIntegrationTestWithContent
|
||||
Assert.That(contents.Count(), Is.EqualTo(1));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Can_Get_Scheduled_Content_Keys()
|
||||
{
|
||||
// Arrange
|
||||
var root = ContentService.GetById(Textpage.Id);
|
||||
ContentService.Publish(root!, root!.AvailableCultures.ToArray());
|
||||
var content = ContentService.GetById(Subpage.Id);
|
||||
var contentSchedule = ContentScheduleCollection.CreateWithEntry(DateTime.UtcNow.AddDays(1), null);
|
||||
ContentService.PersistContentSchedule(content!, contentSchedule);
|
||||
ContentService.Publish(content, content.AvailableCultures.ToArray());
|
||||
|
||||
// Act
|
||||
var keys = ContentService.GetScheduledContentKeys([Textpage.Key, Subpage.Key, Subpage2.Key]).ToList();
|
||||
|
||||
// Assert
|
||||
Assert.AreEqual(1, keys.Count);
|
||||
Assert.AreEqual(Subpage.Key, keys.First());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Can_Get_Content_For_Release()
|
||||
{
|
||||
|
||||
@@ -0,0 +1,196 @@
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Cms.Api.Management.Services.Signs;
|
||||
using Umbraco.Cms.Api.Management.ViewModels;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Collection;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Item;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.DocumentType;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Media.Collection;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Media.Item;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.MediaType;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Tree;
|
||||
|
||||
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Cms.Api.Management.Services.Signs;
|
||||
|
||||
[TestFixture]
|
||||
internal class HasCollectionSignProviderTests
|
||||
{
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Document_Tree_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentTreeItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Document_Collection_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentCollectionResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Document_Item_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Media_Tree_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<MediaTreeItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Media_Collection_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<MediaCollectionResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasCollectionSignProvider_Can_Provide_Media_Item_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<MediaItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Document_Tree_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentTreeItemResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), DocumentType = new DocumentTypeReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Document_Collection_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentCollectionResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), DocumentType = new DocumentTypeCollectionReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Document_Item_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentItemResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), DocumentType = new DocumentTypeReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Media_Tree_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<MediaTreeItemResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), MediaType = new MediaTypeReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Media_Collection_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<MediaCollectionResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), MediaType = new MediaTypeCollectionReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasCollectionSignProvider_Should_Populate_Media_Item_Signs()
|
||||
{
|
||||
var sut = new HasCollectionSignProvider();
|
||||
|
||||
var viewModels = new List<MediaItemResponseModel>
|
||||
{
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), MediaType = new MediaTypeReferenceResponseModel() { Collection = new ReferenceByIdModel(Guid.NewGuid()) },
|
||||
},
|
||||
new() { Id = Guid.NewGuid() },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 1);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 0);
|
||||
|
||||
var signModel = viewModels[0].Signs.First();
|
||||
Assert.AreEqual("Umb.HasCollection", signModel.Alias);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,126 @@
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Cms.Api.Management.Services.Signs;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Collection;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Item;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Tree;
|
||||
|
||||
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Cms.Api.Management.Services.Signs;
|
||||
|
||||
[TestFixture]
|
||||
internal class HasPendingChangesSignProviderTests
|
||||
{
|
||||
[Test]
|
||||
public void HasPendingChangesSignProvider_Can_Provide_Document_Tree_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentTreeItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasPendingChangesSignProvider_Can_Provide_Document_Collection_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentCollectionResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasPendingChangesSignProvider_Can_Provide_Document_Item_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasPendingChangesSignProvider_Should_Populate_Document_Tree_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentTreeItemResponseModel>
|
||||
{
|
||||
new() { Id = Guid.NewGuid() },
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), Variants =
|
||||
[
|
||||
new()
|
||||
{
|
||||
State = DocumentVariantState.PublishedPendingChanges,
|
||||
Culture = null,
|
||||
Name = "Test",
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.PendingChanges", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasPendingChangesSignProvider_Should_Populate_Document_Collection_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentCollectionResponseModel>
|
||||
{
|
||||
new() { Id = Guid.NewGuid() },
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), Variants =
|
||||
[
|
||||
new()
|
||||
{
|
||||
State = DocumentVariantState.PublishedPendingChanges,
|
||||
Culture = null,
|
||||
Name = "Test",
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.PendingChanges", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasPendingChangesSignProvider_Should_Populate_Document_Item_Signs()
|
||||
{
|
||||
var sut = new HasPendingChangesSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentItemResponseModel>
|
||||
{
|
||||
new() { Id = Guid.NewGuid() },
|
||||
new()
|
||||
{
|
||||
Id = Guid.NewGuid(), Variants =
|
||||
[
|
||||
new()
|
||||
{
|
||||
State = DocumentVariantState.PublishedPendingChanges,
|
||||
Culture = null,
|
||||
Name = "Test",
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.PendingChanges", signModel.Alias);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Cms.Api.Management.Services.Signs;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Collection;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Item;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Tree;
|
||||
using Umbraco.Cms.Core.Models.Entities;
|
||||
using Umbraco.Cms.Core.Services;
|
||||
|
||||
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Cms.Api.Management.Services.Signs;
|
||||
|
||||
[TestFixture]
|
||||
internal class HasScheduleSignProviderTests
|
||||
{
|
||||
[Test]
|
||||
public void HasScheduleSignProvider_Can_Provide_Document_Tree_Signs()
|
||||
{
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentTreeItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasScheduleSignProvider_Can_Provide_Document_Collection_Signs()
|
||||
{
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentCollectionResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void HasScheduleSignProvider_Can_Provide_Document_Item_Signs()
|
||||
{
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasScheduleSignProvider_Should_Populate_Document_Tree_Signs()
|
||||
{
|
||||
var entities = new List<EntitySlim>
|
||||
{
|
||||
new() { Key = Guid.NewGuid(), Name = "Item 1" }, new() { Key = Guid.NewGuid(), Name = "Item 2" },
|
||||
};
|
||||
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
contentServiceMock
|
||||
.Setup(x => x.GetScheduledContentKeys(It.IsAny<IEnumerable<Guid>>()))
|
||||
.Returns([entities[1].Key]);
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
|
||||
var viewModels = new List<DocumentTreeItemResponseModel>
|
||||
{
|
||||
new() { Id = entities[0].Key }, new() { Id = entities[1].Key },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.ScheduledForPublish", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasScheduleSignProvider_Should_Populate_Document_Collection_Signs()
|
||||
{
|
||||
var entities = new List<EntitySlim>
|
||||
{
|
||||
new() { Key = Guid.NewGuid(), Name = "Item 1" }, new() { Key = Guid.NewGuid(), Name = "Item 2" },
|
||||
};
|
||||
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
contentServiceMock
|
||||
.Setup(x => x.GetScheduledContentKeys(It.IsAny<IEnumerable<Guid>>()))
|
||||
.Returns([entities[1].Key]);
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
|
||||
var viewModels = new List<DocumentCollectionResponseModel>
|
||||
{
|
||||
new() { Id = entities[0].Key }, new() { Id = entities[1].Key },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.ScheduledForPublish", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HasScheduleSignProvider_Should_Populate_Document_Item_Signs()
|
||||
{
|
||||
var entities = new List<EntitySlim>
|
||||
{
|
||||
new() { Key = Guid.NewGuid(), Name = "Item 1" }, new() { Key = Guid.NewGuid(), Name = "Item 2" },
|
||||
};
|
||||
|
||||
var contentServiceMock = new Mock<IContentService>();
|
||||
contentServiceMock
|
||||
.Setup(x => x.GetScheduledContentKeys(It.IsAny<IEnumerable<Guid>>()))
|
||||
.Returns([entities[1].Key]);
|
||||
var sut = new HasScheduleSignProvider(contentServiceMock.Object);
|
||||
|
||||
var viewModels = new List<DocumentItemResponseModel>
|
||||
{
|
||||
new() { Id = entities[0].Key }, new() { Id = entities[1].Key },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.ScheduledForPublish", signModel.Alias);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Cms.Api.Management.Services.Signs;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Collection;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Document.Item;
|
||||
using Umbraco.Cms.Api.Management.ViewModels.Tree;
|
||||
|
||||
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Cms.Api.Management.Services.Signs;
|
||||
|
||||
[TestFixture]
|
||||
internal class IsProtectedSignProviderTests
|
||||
{
|
||||
[Test]
|
||||
public void IsProtectedSignProvider_Can_Provide_Tree_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentTreeItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void IsProtectedSignProvider_Can_Provide_Collection_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentCollectionResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void IsProtectedSignProvider_Can_Provide_Plain_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
Assert.IsTrue(sut.CanProvideSigns<DocumentItemResponseModel>());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task IsProtectedSignProvider_Should_Populate_Tree_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentTreeItemResponseModel>
|
||||
{
|
||||
new(),
|
||||
new() { IsProtected = true },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.IsProtected", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task IsProtectedSignProvider_Should_Populate_Collection_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentCollectionResponseModel>
|
||||
{
|
||||
new(),
|
||||
new() { IsProtected = true },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.IsProtected", signModel.Alias);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task IsProtectedSignProvider_Should_Populate_Plain_Signs()
|
||||
{
|
||||
var sut = new IsProtectedSignProvider();
|
||||
|
||||
var viewModels = new List<DocumentItemResponseModel>
|
||||
{
|
||||
new(),
|
||||
new() { IsProtected = true },
|
||||
};
|
||||
|
||||
await sut.PopulateSignsAsync(viewModels);
|
||||
|
||||
Assert.AreEqual(viewModels[0].Signs.Count(), 0);
|
||||
Assert.AreEqual(viewModels[1].Signs.Count(), 1);
|
||||
|
||||
var signModel = viewModels[1].Signs.First();
|
||||
Assert.AreEqual("Umb.IsProtected", signModel.Alias);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user