Refactor project files for improved readability and structure
CI / Backend (build + test) (push) Successful in 1m18s
CI / Frontend (lint + typecheck + build) (push) Successful in 31s

- Cleaned up whitespace in Directory.Build.props and Directory.Packages.props for consistency.
- Reformatted project file references in PnvPanel.Api.csproj for better clarity.
- Enhanced code readability in various endpoint files by adjusting line breaks and indentation.
- Standardized method signatures and improved formatting in ResultExtensions and multiple endpoint classes for better maintainability.
This commit is contained in:
Leonid Pershin
2026-07-14 07:24:13 +03:00
parent 9d5424bb9c
commit df137ca5a7
285 changed files with 6911 additions and 2063 deletions
@@ -8,7 +8,11 @@ namespace PnvPanel.IntegrationTests.Activation;
[Collection(IntegrationTestCollection.Name)]
public class ActivationFlowTests(PnvPanelWebApplicationFactory factory)
{
private sealed record ActivationRequestResponse(Guid Id, string? Comment, DateTimeOffset CreatedAt);
private sealed record ActivationRequestResponse(
Guid Id,
string? Comment,
DateTimeOffset CreatedAt
);
[Fact]
public async Task RequestThenAdminApprove_ActivatesUser()
@@ -18,7 +22,10 @@ public class ActivationFlowTests(PnvPanelWebApplicationFactory factory)
var (userId, userToken) = await RegisterAndLoginAsync(userClient, userName, "P@ssw0rd123");
userClient.UseBearerToken(userToken);
var requestResponse = await userClient.PostJsonAsync("/api/activation/request", new { comment = "Please activate me" });
var requestResponse = await userClient.PostJsonAsync(
"/api/activation/request",
new { comment = "Please activate me" }
);
Assert.Equal(HttpStatusCode.OK, requestResponse.StatusCode);
var request = await requestResponse.ReadAsAsync<ActivationRequestResponse>();
Assert.NotNull(request);
@@ -27,7 +34,10 @@ public class ActivationFlowTests(PnvPanelWebApplicationFactory factory)
var adminToken = await LoginAsAdminAsync(adminClient);
adminClient.UseBearerToken(adminToken);
var approveResponse = await adminClient.PostAsync($"/api/admin/activation-requests/{request!.Id}/approve", content: null);
var approveResponse = await adminClient.PostAsync(
$"/api/admin/activation-requests/{request!.Id}/approve",
content: null
);
Assert.Equal(HttpStatusCode.NoContent, approveResponse.StatusCode);
var meResponse = await userClient.GetAsync("/api/auth/me");
@@ -44,14 +54,20 @@ public class ActivationFlowTests(PnvPanelWebApplicationFactory factory)
var (_, userToken) = await RegisterAndLoginAsync(userClient, userName, "P@ssw0rd123");
userClient.UseBearerToken(userToken);
var requestResponse = await userClient.PostJsonAsync("/api/activation/request", new { comment = (string?)null });
var requestResponse = await userClient.PostJsonAsync(
"/api/activation/request",
new { comment = (string?)null }
);
var request = await requestResponse.ReadAsAsync<ActivationRequestResponse>();
using var adminClient = factory.CreateClient();
var adminToken = await LoginAsAdminAsync(adminClient);
adminClient.UseBearerToken(adminToken);
var rejectResponse = await adminClient.PostJsonAsync($"/api/admin/activation-requests/{request!.Id}/reject", new { reason = "not enough info" });
var rejectResponse = await adminClient.PostJsonAsync(
$"/api/admin/activation-requests/{request!.Id}/reject",
new { reason = "not enough info" }
);
Assert.Equal(HttpStatusCode.NoContent, rejectResponse.StatusCode);
var meResponse = await userClient.GetAsync("/api/auth/me");
@@ -67,10 +83,16 @@ public class ActivationFlowTests(PnvPanelWebApplicationFactory factory)
var (_, userToken) = await RegisterAndLoginAsync(userClient, userName, "P@ssw0rd123");
userClient.UseBearerToken(userToken);
var first = await userClient.PostJsonAsync("/api/activation/request", new { comment = (string?)null });
var first = await userClient.PostJsonAsync(
"/api/activation/request",
new { comment = (string?)null }
);
Assert.Equal(HttpStatusCode.OK, first.StatusCode);
var second = await userClient.PostJsonAsync("/api/activation/request", new { comment = (string?)null });
var second = await userClient.PostJsonAsync(
"/api/activation/request",
new { comment = (string?)null }
);
Assert.Equal(HttpStatusCode.Conflict, second.StatusCode);
}
}