Skip to content

Commit 5c64c4d

Browse files
authored
Merge pull request #25 from knnlabs/Conduit2
Conduit2
2 parents 485c70f + a8453b8 commit 5c64c4d

19 files changed

Lines changed: 51 additions & 54 deletions

ConduitLLM.Admin.Tests/ConduitLLM.Admin.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<ImplicitUsings>enable</ImplicitUsings>
66
<Nullable>enable</Nullable>
77
<IsPackable>false</IsPackable>
8-
<NoWarn>CS8600;CS8602;CS8603;CS8604;CS8620;CS8625;xUnit2013</NoWarn>
8+
<NoWarn>xUnit2013</NoWarn>
99
</PropertyGroup>
1010

1111
<ItemGroup>

ConduitLLM.Admin.Tests/Controllers/IpFilterControllerTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ public async Task GetFilterById_NonexistentFilter_ReturnsNotFound()
120120
// Arrange
121121
_mockService
122122
.Setup(s => s.GetFilterByIdAsync(999))
123-
.ReturnsAsync((IpFilterDto)null);
123+
.ReturnsAsync((IpFilterDto?)null);
124124

125125
// Act
126126
var result = await _controller.GetFilterById(999);
@@ -163,7 +163,7 @@ public async Task CreateFilter_ValidFilter_ReturnsCreatedWithFilter()
163163
var createdResult = Assert.IsType<CreatedAtActionResult>(result);
164164
Assert.Equal(StatusCodes.Status201Created, createdResult.StatusCode);
165165
Assert.Equal("GetFilterById", createdResult.ActionName);
166-
Assert.Equal(3, createdResult.RouteValues["id"]);
166+
Assert.Equal(3, createdResult.RouteValues?["id"]);
167167

168168
var returnValue = Assert.IsType<IpFilterDto>(createdResult.Value);
169169
Assert.Equal(3, returnValue.Id);

ConduitLLM.Admin.Tests/Controllers/VirtualKeysControllerTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public async Task GenerateKey_ValidRequest_ReturnsCreatedResponse()
6262
var createdAtActionResult = Assert.IsType<CreatedAtActionResult>(result);
6363
Assert.Equal(StatusCodes.Status201Created, createdAtActionResult.StatusCode);
6464
Assert.Equal("GetKeyById", createdAtActionResult.ActionName);
65-
Assert.Equal(1, createdAtActionResult.RouteValues["id"]);
65+
Assert.Equal(1, createdAtActionResult.RouteValues?["id"]);
6666

6767
var returnValue = Assert.IsType<CreateVirtualKeyResponseDto>(createdAtActionResult.Value);
6868
Assert.Equal("vk_testkeystring", returnValue.VirtualKey);
@@ -215,7 +215,7 @@ public async Task GetKeyById_NonExistingKey_ReturnsNotFound()
215215
// Arrange
216216
_mockVirtualKeyService
217217
.Setup(s => s.GetVirtualKeyInfoAsync(999))
218-
.ReturnsAsync((VirtualKeyDto)null);
218+
.ReturnsAsync((VirtualKeyDto?)null);
219219

220220
// Act
221221
var result = await _controller.GetKeyById(999);

ConduitLLM.Admin.Tests/Security/MasterKeyAuthorizationHandlerTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ public async Task HandleRequirementAsync_NullMasterKeyConfig_DoesNotSucceedRequi
129129

130130
_mockConfiguration
131131
.Setup(c => c[configKey])
132-
.Returns((string)null);
132+
.Returns((string?)null);
133133

134134
_httpContext.Request.Headers["X-API-Key"] = "any-key";
135135

ConduitLLM.Admin.Tests/Services/AdminProviderCredentialServiceTests.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,15 @@ public async Task TestProviderConnectionAsync_OpenRouter_ValidKey_ReturnsSuccess
4141
Id = 1,
4242
ProviderName = "OpenRouter",
4343
ApiKey = "valid-key",
44-
ApiBase = null
44+
ApiBase = string.Empty
4545
};
4646

4747
var dbCredential = new ProviderCredential
4848
{
4949
Id = 1,
5050
ProviderName = "OpenRouter",
5151
ApiKey = "valid-key",
52-
BaseUrl = null
52+
BaseUrl = string.Empty
5353
};
5454

5555
_mockProviderCredentialRepository
@@ -104,15 +104,15 @@ public async Task TestProviderConnectionAsync_OpenRouter_InvalidKey_ReturnsFailu
104104
Id = 1,
105105
ProviderName = "OpenRouter",
106106
ApiKey = "invalid-key",
107-
ApiBase = null
107+
ApiBase = string.Empty
108108
};
109109

110110
var dbCredential = new ProviderCredential
111111
{
112112
Id = 1,
113113
ProviderName = "OpenRouter",
114114
ApiKey = "invalid-key",
115-
BaseUrl = null
115+
BaseUrl = string.Empty
116116
};
117117

118118
_mockProviderCredentialRepository
@@ -168,15 +168,15 @@ public async Task TestProviderConnectionAsync_OtherProvider_UsesSimpleCheck()
168168
Id = 1,
169169
ProviderName = "OpenAI",
170170
ApiKey = "sk-test",
171-
ApiBase = null
171+
ApiBase = string.Empty
172172
};
173173

174174
var dbCredential = new ProviderCredential
175175
{
176176
Id = 1,
177177
ProviderName = "OpenAI",
178178
ApiKey = "sk-test",
179-
BaseUrl = null
179+
BaseUrl = string.Empty
180180
};
181181

182182
_mockProviderCredentialRepository

ConduitLLM.Admin.Tests/Services/AdminVirtualKeyServiceTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public async Task GetVirtualKeyInfoAsync_NonExistingId_ReturnsNull()
114114

115115
_mockVirtualKeyRepository
116116
.Setup(r => r.GetByIdAsync(keyId, It.IsAny<CancellationToken>()))
117-
.ReturnsAsync((VirtualKey)null);
117+
.ReturnsAsync((VirtualKey?)null);
118118

119119
// Act
120120
var result = await _service.GetVirtualKeyInfoAsync(keyId);
@@ -231,7 +231,7 @@ public async Task UpdateVirtualKeyAsync_NonExistingId_ReturnsFalse()
231231

232232
_mockVirtualKeyRepository
233233
.Setup(r => r.GetByIdAsync(keyId, It.IsAny<CancellationToken>()))
234-
.ReturnsAsync((VirtualKey)null);
234+
.ReturnsAsync((VirtualKey?)null);
235235

236236
// Act
237237
var result = await _service.UpdateVirtualKeyAsync(keyId, updateRequest);
@@ -346,7 +346,7 @@ public async Task ResetSpendAsync_NonExistingId_ReturnsFalse()
346346

347347
_mockVirtualKeyRepository
348348
.Setup(r => r.GetByIdAsync(keyId, It.IsAny<CancellationToken>()))
349-
.ReturnsAsync((VirtualKey)null);
349+
.ReturnsAsync((VirtualKey?)null);
350350

351351
// Act
352352
var result = await _service.ResetSpendAsync(keyId);

ConduitLLM.Admin/ConduitLLM.Admin.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
<ItemGroup>
1616
<ProjectReference Include="..\ConduitLLM.Configuration\ConduitLLM.Configuration.csproj" />
1717
<ProjectReference Include="..\ConduitLLM.Core\ConduitLLM.Core.csproj" />
18+
<ProjectReference Include="..\ConduitLLM.Providers\ConduitLLM.Providers.csproj" />
1819
<!-- WebUI reference removed, now using API client -->
1920
</ItemGroup>
2021

ConduitLLM.Admin/Controllers/AudioConfigurationController.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ namespace ConduitLLM.Admin.Controllers
1515
/// </summary>
1616
[ApiController]
1717
[Route("api/admin/audio")]
18-
[Authorize(Policy = "MasterKeyAuth")]
18+
[Authorize(Policy = "MasterKeyPolicy")]
1919
public class AudioConfigurationController : ControllerBase
2020
{
2121
private readonly IAdminAudioProviderService _providerService;

ConduitLLM.Admin/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ WORKDIR /src
1111
COPY ["ConduitLLM.Admin/ConduitLLM.Admin.csproj", "ConduitLLM.Admin/"]
1212
COPY ["ConduitLLM.Configuration/ConduitLLM.Configuration.csproj", "ConduitLLM.Configuration/"]
1313
COPY ["ConduitLLM.Core/ConduitLLM.Core.csproj", "ConduitLLM.Core/"]
14+
COPY ["ConduitLLM.Providers/ConduitLLM.Providers.csproj", "ConduitLLM.Providers/"]
1415
RUN dotnet restore "ConduitLLM.Admin/ConduitLLM.Admin.csproj"
1516
COPY . .
1617
WORKDIR "/src/ConduitLLM.Admin"

ConduitLLM.Admin/Program.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using ConduitLLM.Admin.Extensions;
22
using ConduitLLM.Configuration.Extensions;
33
using ConduitLLM.Core.Extensions;
4+
using ConduitLLM.Providers.Extensions;
45
using Microsoft.OpenApi.Models;
56
using System.Reflection;
67
using Microsoft.Extensions.Diagnostics.HealthChecks;
@@ -78,6 +79,9 @@ public static void Main(string[] args)
7879
// Add Configuration services
7980
builder.Services.AddConfigurationServices(builder.Configuration);
8081

82+
// Add Provider services (needed for ILLMClientFactory)
83+
builder.Services.AddProviderServices();
84+
8185
// Add Admin services
8286
builder.Services.AddAdminServices(builder.Configuration);
8387

0 commit comments

Comments
 (0)