diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Install/SettingsInstallControllerTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Install/SettingsInstallControllerTests.cs new file mode 100644 index 000000000000..307d91be3c35 --- /dev/null +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Install/SettingsInstallControllerTests.cs @@ -0,0 +1,41 @@ +using System.Linq.Expressions; +using System.Net; +using Umbraco.Cms.Api.Management.Controllers.Install; + +namespace Umbraco.Cms.Tests.Integration.ManagementApi.Install; + +public class SettingsInstallControllerTests : ManagementApiUserGroupTestBase +{ + protected override Expression> MethodSelector => + x => x.Settings(); + + protected override UserGroupAssertionModel AdminUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel EditorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel SensitiveDataUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel TranslatorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel WriterUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel UnauthorizedUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; +} diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Install/SetupInstallControllerTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Install/SetupInstallControllerTests.cs new file mode 100644 index 000000000000..be78c09fca2b --- /dev/null +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Install/SetupInstallControllerTests.cs @@ -0,0 +1,58 @@ +using System.Linq.Expressions; +using System.Net; +using System.Net.Http.Json; +using Umbraco.Cms.Api.Management.Controllers.Install; +using Umbraco.Cms.Api.Management.ViewModels.Installer; +using Umbraco.Cms.Core.Models; + +namespace Umbraco.Cms.Tests.Integration.ManagementApi.Install; + +public class SetupInstallControllerTests : ManagementApiUserGroupTestBase +{ + protected override Expression> MethodSelector => + x => x.Setup(null); + + protected override UserGroupAssertionModel AdminUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel EditorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel SensitiveDataUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel TranslatorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel WriterUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel UnauthorizedUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override async Task ClientRequest() + { + InstallVResponseModel installResponseModel = new() + { + User = new UserInstallResponseModel + { + Name = "Tester", Email = "Test@emails.test", Password = "123457890" + }, + Database = new DatabaseInstallResponseModel { Id = Guid.NewGuid(), ProviderName = "TestProviderName" }, + TelemetryLevel = TelemetryLevel.Basic + }; + return await Client.PostAsync(Url, JsonContent.Create(installResponseModel)); + } +} diff --git a/tests/Umbraco.Tests.Integration/ManagementApi/Install/ValidateDatabaseInstallControllerTests.cs b/tests/Umbraco.Tests.Integration/ManagementApi/Install/ValidateDatabaseInstallControllerTests.cs new file mode 100644 index 000000000000..7a85e9ae983c --- /dev/null +++ b/tests/Umbraco.Tests.Integration/ManagementApi/Install/ValidateDatabaseInstallControllerTests.cs @@ -0,0 +1,52 @@ +using System.Linq.Expressions; +using System.Net; +using System.Net.Http.Json; +using Umbraco.Cms.Api.Management.Controllers.Install; +using Umbraco.Cms.Api.Management.ViewModels.Installer; + +namespace Umbraco.Cms.Tests.Integration.ManagementApi.Install; + +public class ValidateDatabaseInstallControllerTests : ManagementApiUserGroupTestBase +{ + protected override Expression> MethodSelector => + x => x.ValidateDatabase(null); + + protected override UserGroupAssertionModel AdminUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel EditorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel SensitiveDataUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel TranslatorUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel WriterUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override UserGroupAssertionModel UnauthorizedUserGroupAssertionModel => new() + { + ExpectedStatusCode = HttpStatusCode.PreconditionRequired + }; + + protected override async Task ClientRequest() + { + DatabaseInstallResponseModel databaseInstallResponseModel = new() + { + Id = Guid.NewGuid(), ProviderName = "TestProviderName", + }; + return await Client.PostAsync(Url, JsonContent.Create(databaseInstallResponseModel)); + } +}