Browse Source

CMS: Write new test methods for GetAvailableMenuOrderAsync

pull/23576/head
EngincanV 6 months ago
parent
commit
784d959a56
  1. 16
      modules/cms-kit/test/Volo.CmsKit.Application.Tests/Menus/MenuItemAdminAppService_Tests.cs
  2. 17
      modules/cms-kit/test/Volo.CmsKit.TestBase/CmsKitDataSeedContributor.cs
  3. 12
      modules/cms-kit/test/Volo.CmsKit.TestBase/CmsKitTestData.cs

16
modules/cms-kit/test/Volo.CmsKit.Application.Tests/Menus/MenuItemAdminAppService_Tests.cs

@ -118,4 +118,20 @@ public class MenuItemAdminAppService_Tests : CmsKitApplicationTestBase
menu.ShouldBeNull();
}
[Fact]
public async Task GetAvailableMenuOrderAsync_ShouldWorkProperly_WithParentId()
{
var order = await MenuAdminAppService.GetAvailableMenuOrderAsync(TestData.MenuItem_1_Id);
order.ShouldBe(2); //has two items with order 0 and 1, so the next available order is 2
}
[Fact]
public async Task GetAvailableMenuOrderAsync_ShouldWorkProperly_WithoutParentId()
{
var order = await MenuAdminAppService.GetAvailableMenuOrderAsync();
order.ShouldBe(TestData.HighestMenuItemOrder + 1);
}
}

17
modules/cms-kit/test/Volo.CmsKit.TestBase/CmsKitDataSeedContributor.cs

@ -442,7 +442,8 @@ public class CmsKitDataSeedContributor : IDataSeedContributor, ITransientDepende
new MenuItem(
_cmsKitTestData.MenuItem_1_Id,
_cmsKitTestData.MenuItem_1_Name,
_cmsKitTestData.MenuItem_1_Url),
_cmsKitTestData.MenuItem_1_Url,
order: _cmsKitTestData.HighestMenuItemOrder),
new MenuItem(
_cmsKitTestData.MenuItem_2_Id,
_cmsKitTestData.MenuItem_2_Name,
@ -451,7 +452,19 @@ public class CmsKitDataSeedContributor : IDataSeedContributor, ITransientDepende
_cmsKitTestData.MenuItem_3_Id,
_cmsKitTestData.MenuItem_3_Name,
_cmsKitTestData.MenuItem_3_Url),
menuItem4
menuItem4,
new MenuItem(
_cmsKitTestData.MenuItem_5_Id,
_cmsKitTestData.MenuItem_5_Name,
_cmsKitTestData.MenuItem_5_Url,
order: 0,
parentId: _cmsKitTestData.MenuItem_1_Id),
new MenuItem(
_cmsKitTestData.MenuItem_6_Id,
_cmsKitTestData.MenuItem_6_Name,
_cmsKitTestData.MenuItem_6_Url,
order: 1,
parentId: _cmsKitTestData.MenuItem_1_Id)
});
}

12
modules/cms-kit/test/Volo.CmsKit.TestBase/CmsKitTestData.cs

@ -132,6 +132,18 @@ public class CmsKitTestData : ISingletonDependency
public string MenuItem_4_With_Page_1_Name { get; } = "Products";
public Guid MenuItem_5_Id { get; } = Guid.NewGuid();
public string MenuItem_5_Name { get; } = "FAQ";
public string MenuItem_5_Url { get; } = "/faq";
public Guid MenuItem_6_Id { get; } = Guid.NewGuid();
public string MenuItem_6_Name { get; } = "Contact Us";
public string MenuItem_6_Url { get; } = "/contact-us";
public int HighestMenuItemOrder { get; } = 2;
public string PollName { get; } = "Poll";
public string WidgetName { get; } = "CmsPollByCode";

Loading…
Cancel
Save