Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions API.IntegrationTests/Helpers/TestHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Net;
using System.Text;
using System.Text.Json;
using Microsoft.AspNetCore.Mvc.Testing;
using Microsoft.Extensions.DependencyInjection;
using OpenShock.Common.Constants;
using OpenShock.Common.OpenShockDb;
Expand Down Expand Up @@ -50,7 +51,7 @@ public static async Task<AuthenticatedUser> CreateAndLoginUser(
/// </summary>
public static HttpClient CreateAuthenticatedClient(WebApplicationFactory factory, string sessionToken)
{
var client = factory.CreateClient(new Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactoryClientOptions
var client = factory.CreateClient(new WebApplicationFactoryClientOptions
{
AllowAutoRedirect = false,
HandleCookies = false
Expand All @@ -64,7 +65,7 @@ public static HttpClient CreateAuthenticatedClient(WebApplicationFactory factory
/// </summary>
public static HttpClient CreateApiTokenClient(WebApplicationFactory factory, string apiToken)
{
var client = factory.CreateClient(new Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactoryClientOptions
var client = factory.CreateClient(new WebApplicationFactoryClientOptions
{
AllowAutoRedirect = false,
HandleCookies = false
Expand All @@ -78,7 +79,7 @@ public static HttpClient CreateApiTokenClient(WebApplicationFactory factory, str
/// </summary>
public static HttpClient CreateHubTokenClient(WebApplicationFactory factory, string hubToken)
{
var client = factory.CreateClient(new Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactoryClientOptions
var client = factory.CreateClient(new WebApplicationFactoryClientOptions
{
AllowAutoRedirect = false,
HandleCookies = false
Expand Down Expand Up @@ -146,7 +147,7 @@ public static async Task<Guid> CreateUserInDb(
WebApplicationFactory factory,
Guid userId,
string name = "TestToken",
List<Common.Models.PermissionType>? permissions = null)
List<PermissionType>? permissions = null)
{
await using var scope = factory.Services.CreateAsyncScope();
var db = scope.ServiceProvider.GetRequiredService<OpenShockContext>();
Expand All @@ -160,7 +161,7 @@ public static async Task<Guid> CreateUserInDb(
Name = name,
TokenHash = HashingUtils.HashToken(rawToken),
CreatedByIp = IPAddress.Loopback,
Permissions = permissions ?? [Common.Models.PermissionType.Shockers_Use]
Permissions = permissions ?? [PermissionType.Shockers_Use]
});
await db.SaveChangesAsync();
return (tokenId, rawToken);
Expand Down
3 changes: 2 additions & 1 deletion API.IntegrationTests/Tests/TokensTests.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using System.Net;
using System.Text.Json;
using OpenShock.API.IntegrationTests.Helpers;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.IntegrationTests.Tests;

Expand Down Expand Up @@ -348,7 +349,7 @@ public async Task ApiTokenAuth_CanAccessDevices()
{
var userId = await TestHelper.CreateUserInDb(WebApplicationFactory, "tokauth", "tokauth@test.org", "SecurePassword123#");
var (_, rawToken) = await TestHelper.CreateApiTokenInDb(WebApplicationFactory, userId, "AuthToken",
[Common.Models.PermissionType.Shockers_Use, Common.Models.PermissionType.Devices_Edit]);
[PermissionType.Shockers_Use, PermissionType.Devices_Edit]);
using var client = TestHelper.CreateApiTokenClient(WebApplicationFactory, rawToken);

var response = await client.GetAsync("/1/devices");
Expand Down
6 changes: 3 additions & 3 deletions API/Controller/Account/Authenticated/ChangeUsername.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
using Microsoft.AspNetCore.Mvc;
using System.Net.Mime;
using Microsoft.AspNetCore.Mvc;
using OpenShock.API.Models.Requests;
using OpenShock.Common.Errors;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;
using System.Net.Mime;

namespace OpenShock.API.Controller.Account.Authenticated;

Expand Down
18 changes: 10 additions & 8 deletions API/Controller/Devices/DevicesController.cs
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
using Asp.Versioning;
using System.Net.Mime;
using System.Security.Cryptography;
using Asp.Versioning;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using OpenShock.API.Models.Requests;
using OpenShock.API.Models.Response;
using OpenShock.API.Services.DeviceUpdate;
using OpenShock.Common.Authentication.Attributes;
using OpenShock.Common.Constants;
using OpenShock.Common.Errors;
using OpenShock.Common.Extensions;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;
using OpenShock.Common.Redis;
using OpenShock.Common.Utils;
using System.Net.Mime;
using System.Security.Cryptography;
using OpenShock.API.Services.DeviceUpdate;
using Redis.OM;

namespace OpenShock.API.Controller.Devices;
Expand All @@ -25,12 +27,12 @@ public sealed partial class DevicesController
/// <response code="200">All devices for the current user</response>
[HttpGet]
[MapToApiVersion("1")]
[ProducesResponseType<LegacyDataResponse<Models.Response.DeviceResponse[]>>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)]
[ProducesResponseType<LegacyDataResponse<DeviceResponse[]>>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)]
public IActionResult ListDevices()
{
var devices = _db.Devices
.Where(x => x.OwnerId == CurrentUser.Id)
.Select(x => new Models.Response.DeviceResponse
.Select(x => new DeviceResponse
{
Id = x.Id,
Name = x.Name,
Expand All @@ -47,7 +49,7 @@ public IActionResult ListDevices()
/// <param name="deviceId"></param>
/// <response code="200">The device</response>
[HttpGet("{deviceId}")]
[ProducesResponseType<LegacyDataResponse<Models.Response.DeviceWithTokenResponse>>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)]
[ProducesResponseType<LegacyDataResponse<DeviceWithTokenResponse>>(StatusCodes.Status200OK, MediaTypeNames.Application.Json)]
[ProducesResponseType<OpenShockProblem>(StatusCodes.Status404NotFound, MediaTypeNames.Application.ProblemJson)] // DeviceNotFound
[MapToApiVersion("1")]
public async Task<IActionResult> GetDeviceById([FromRoute] Guid deviceId)
Expand All @@ -56,7 +58,7 @@ public async Task<IActionResult> GetDeviceById([FromRoute] Guid deviceId)


var device = await _db.Devices.Where(x => x.OwnerId == CurrentUser.Id && x.Id == deviceId)
.Select(x => new Models.Response.DeviceWithTokenResponse
.Select(x => new DeviceWithTokenResponse
{
Id = x.Id,
Name = x.Name,
Expand Down
6 changes: 3 additions & 3 deletions API/Controller/Sessions/DeleteSessions.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
using Microsoft.AspNetCore.Mvc;
using System.Net.Mime;
using Microsoft.AspNetCore.Mvc;
using OpenShock.Common.Errors;
using OpenShock.Common.Extensions;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;
using System.Net.Mime;

namespace OpenShock.API.Controller.Sessions;

Expand Down
1 change: 1 addition & 0 deletions API/Controller/Shares/UserShares/UpdateShockerShares.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using OpenShock.Common.Authentication.Attributes;
using OpenShock.Common.Errors;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;

namespace OpenShock.API.Controller.Shares.UserShares;
Expand Down
1 change: 1 addition & 0 deletions API/Controller/Shockers/EditShocker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using OpenShock.Common.Authentication.Attributes;
using OpenShock.Common.Errors;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;

namespace OpenShock.API.Controller.Shockers;
Expand Down
1 change: 1 addition & 0 deletions API/Controller/Shockers/PauseShocker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using OpenShock.Common.Authentication.Attributes;
using OpenShock.Common.Errors;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;

namespace OpenShock.API.Controller.Shockers;
Expand Down
1 change: 1 addition & 0 deletions API/Controller/Shockers/RemoveShocker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using OpenShock.Common.Errors;
using OpenShock.Common.Extensions;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;

namespace OpenShock.API.Controller.Shockers;
Expand Down
1 change: 1 addition & 0 deletions API/Controller/Users/GetSelf.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using Microsoft.AspNetCore.Mvc;
using OpenShock.Common.Extensions;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Controller.Users;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Requests/EditTokenRequest.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
using OpenShock.Common.Constants;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Requests;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Requests/EditTokenRequestV2.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
using OpenShock.Common.Constants;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Requests;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Requests/NewShocker.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.ComponentModel.DataAnnotations;
using OpenShock.Common.Constants;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Requests;

Expand Down
1 change: 1 addition & 0 deletions API/Models/Response/LogEntry.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
1 change: 1 addition & 0 deletions API/Models/Response/LogEntryWithHub.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Response/ShockerResponse.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Response/TokenCreatedResponse.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
3 changes: 1 addition & 2 deletions API/Models/Response/TokenCreatedResponseV2.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using OpenShock.API.Models;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
2 changes: 1 addition & 1 deletion API/Models/Response/TokenResponse.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
3 changes: 1 addition & 2 deletions API/Models/Response/TokenResponseV2.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using OpenShock.API.Models;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.API.Models.Response;

Expand Down
1 change: 1 addition & 0 deletions Common.Tests/Models/ApiTokenControlLimitsTests.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.Common.Tests.Models;

Expand Down
2 changes: 1 addition & 1 deletion Common.Tests/Utils/HashingUtilsTests.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Utils;

namespace OpenShock.Common.Tests.Utils;
Expand Down
1 change: 1 addition & 0 deletions Common.Tests/Utils/PermissionUtilsTests.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Utils;

namespace OpenShock.Common.Tests.Utils;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
using Microsoft.AspNetCore.Authorization;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.Common.Authentication.Requirements;

Expand Down
1 change: 1 addition & 0 deletions Common/DeviceControl/ControlShockerObj.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.Common.DeviceControl;

Expand Down
2 changes: 1 addition & 1 deletion Common/Errors/AuthorizationError.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
using System.Net;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;
using OpenShock.Common.Problems;
using OpenShock.Common.Problems.CustomProblems;

Expand Down
2 changes: 1 addition & 1 deletion Common/Extensions/ClaimsPrincipalExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.Security.Claims;
using OpenShock.Common.Authentication;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.Common.Extensions;

Expand Down
1 change: 1 addition & 0 deletions Common/JsonSerialization/PermissionTypeConverter.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

namespace OpenShock.Common.JsonSerialization;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using Microsoft.EntityFrameworkCore.Migrations;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

#nullable disable

Expand Down
1 change: 1 addition & 0 deletions Common/Migrations/20260630210423_AddEmailOutbox.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Collections.Generic;
using Microsoft.EntityFrameworkCore.Migrations;
using OpenShock.Common.Models;
using OpenShock.Common.OpenShockDb;

#nullable disable

Expand Down
Loading
Loading