refactor: rename namespace to FiscalFlow and upgrade to .NET 10
- Rename InvoiceMaster.* to FiscalFlow.* namespace - Upgrade from .NET 8 to .NET 10 - Update all NuGet packages to latest versions - Update C# language version to 14.0
This commit is contained in:
@@ -1,97 +0,0 @@
|
||||
using InvoiceMaster.Core.Entities;
|
||||
using Xunit;
|
||||
using FluentAssertions;
|
||||
|
||||
namespace InvoiceMaster.UnitTests.Domain;
|
||||
|
||||
public class InvoiceTests
|
||||
{
|
||||
[Fact]
|
||||
public void Create_ShouldInitializeInvoiceWithCorrectValues()
|
||||
{
|
||||
var connectionId = Guid.NewGuid();
|
||||
var invoice = Invoice.Create(
|
||||
connectionId,
|
||||
"fortnox",
|
||||
"test.pdf",
|
||||
"/path/to/file",
|
||||
1024,
|
||||
"hash123");
|
||||
|
||||
invoice.ConnectionId.Should().Be(connectionId);
|
||||
invoice.Provider.Should().Be("fortnox");
|
||||
invoice.OriginalFilename.Should().Be("test.pdf");
|
||||
invoice.StoragePath.Should().Be("/path/to/file");
|
||||
invoice.FileSize.Should().Be(1024);
|
||||
invoice.FileHash.Should().Be("hash123");
|
||||
invoice.Status.Should().Be(InvoiceStatus.Uploading);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetExtractionData_ShouldUpdateExtractionFields()
|
||||
{
|
||||
var invoice = CreateTestInvoice();
|
||||
var extractionData = "{\"test\": \"data\"}";
|
||||
|
||||
invoice.SetExtractionData(
|
||||
extractionData,
|
||||
0.95m,
|
||||
"Test Supplier",
|
||||
"556677-8899",
|
||||
"INV-001",
|
||||
new DateTime(2024, 1, 15),
|
||||
new DateTime(2024, 2, 15),
|
||||
1250.00m,
|
||||
250.00m,
|
||||
25,
|
||||
"123456789",
|
||||
"123-4567",
|
||||
null,
|
||||
"SEK");
|
||||
|
||||
invoice.ExtractionData.Should().Be(extractionData);
|
||||
invoice.ExtractionConfidence.Should().Be(0.95m);
|
||||
invoice.ExtractedSupplierName.Should().Be("Test Supplier");
|
||||
invoice.ExtractedSupplierOrgNumber.Should().Be("556677-8899");
|
||||
invoice.ExtractedInvoiceNumber.Should().Be("INV-001");
|
||||
invoice.ExtractedAmountTotal.Should().Be(1250.00m);
|
||||
invoice.ExtractedAmountVat.Should().Be(250.00m);
|
||||
invoice.ExtractedVatRate.Should().Be(25);
|
||||
invoice.ExtractedOcrNumber.Should().Be("123456789");
|
||||
invoice.ExtractedBankgiro.Should().Be("123-4567");
|
||||
invoice.ExtractedCurrency.Should().Be("SEK");
|
||||
invoice.Status.Should().Be(InvoiceStatus.Preview);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetStatus_Imported_ShouldSetProcessedAt()
|
||||
{
|
||||
var invoice = CreateTestInvoice();
|
||||
|
||||
invoice.SetStatus(InvoiceStatus.Imported);
|
||||
|
||||
invoice.Status.Should().Be(InvoiceStatus.Imported);
|
||||
invoice.ProcessedAt.Should().NotBeNull();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SetError_ShouldSetErrorFieldsAndStatus()
|
||||
{
|
||||
var invoice = CreateTestInvoice();
|
||||
|
||||
invoice.SetError("INVALID_FILE", "File format not supported");
|
||||
|
||||
invoice.ErrorCode.Should().Be("INVALID_FILE");
|
||||
invoice.ErrorMessage.Should().Be("File format not supported");
|
||||
invoice.Status.Should().Be(InvoiceStatus.Failed);
|
||||
}
|
||||
|
||||
private static Invoice CreateTestInvoice()
|
||||
{
|
||||
return Invoice.Create(
|
||||
Guid.NewGuid(),
|
||||
"fortnox",
|
||||
"test.pdf",
|
||||
"/path/to/file");
|
||||
}
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
|
||||
<PackageReference Include="xunit" Version="2.6.2" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.4">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="coverlet.collector" Version="6.0.0">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Moq" Version="4.20.69" />
|
||||
<PackageReference Include="FluentAssertions" Version="6.12.0" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\src\InvoiceMaster.Application\InvoiceMaster.Application.csproj" />
|
||||
<ProjectReference Include="..\..\src\InvoiceMaster.Core\InvoiceMaster.Core.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -1,138 +0,0 @@
|
||||
using InvoiceMaster.Application.Services;
|
||||
using InvoiceMaster.Core.Entities;
|
||||
using InvoiceMaster.Core.Interfaces;
|
||||
using Moq;
|
||||
using Xunit;
|
||||
using FluentAssertions;
|
||||
|
||||
namespace InvoiceMaster.UnitTests.Services;
|
||||
|
||||
public class AuthServiceTests
|
||||
{
|
||||
private readonly Mock<IRepository<User>> _userRepositoryMock;
|
||||
private readonly Mock<IUnitOfWork> _unitOfWorkMock;
|
||||
private readonly AuthService _authService;
|
||||
|
||||
public AuthServiceTests()
|
||||
{
|
||||
_userRepositoryMock = new Mock<IRepository<User>>();
|
||||
_unitOfWorkMock = new Mock<IUnitOfWork>();
|
||||
|
||||
var configuration = new Microsoft.Extensions.Configuration.ConfigurationBuilder()
|
||||
.AddInMemoryCollection(new Dictionary<string, string>
|
||||
{
|
||||
["Jwt:SecretKey"] = "this-is-a-test-secret-key-that-is-32-chars-long",
|
||||
["Jwt:Issuer"] = "TestIssuer",
|
||||
["Jwt:Audience"] = "TestAudience",
|
||||
["Jwt:AccessTokenExpirationMinutes"] = "15",
|
||||
["Jwt:RefreshTokenExpirationDays"] = "7"
|
||||
})
|
||||
.Build();
|
||||
|
||||
_authService = new AuthService(
|
||||
_userRepositoryMock.Object,
|
||||
_unitOfWorkMock.Object,
|
||||
configuration);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task RegisterAsync_WithNewEmail_ShouldCreateUser()
|
||||
{
|
||||
var users = new List<User>();
|
||||
_userRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(users);
|
||||
_userRepositoryMock.Setup(x => x.AddAsync(It.IsAny<User>(), It.IsAny<CancellationToken>()))
|
||||
.Callback<User, CancellationToken>((u, _) => users.Add(u))
|
||||
.ReturnsAsync((User u, CancellationToken _) => u);
|
||||
_unitOfWorkMock.Setup(x => x.SaveChangesAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(1);
|
||||
|
||||
var result = await _authService.RegisterAsync(
|
||||
new Application.Commands.Auth.RegisterCommand(
|
||||
"test@example.com",
|
||||
"Password123!",
|
||||
"Test User"));
|
||||
|
||||
result.Success.Should().BeTrue();
|
||||
result.User.Should().NotBeNull();
|
||||
result.User!.Email.Should().Be("test@example.com");
|
||||
result.Tokens.Should().NotBeNull();
|
||||
result.Tokens!.AccessToken.Should().NotBeNullOrEmpty();
|
||||
result.Tokens.RefreshToken.Should().NotBeNullOrEmpty();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task RegisterAsync_WithExistingEmail_ShouldReturnError()
|
||||
{
|
||||
var existingUser = new User
|
||||
{
|
||||
Email = "test@example.com",
|
||||
HashedPassword = "hashed"
|
||||
};
|
||||
_userRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(new List<User> { existingUser });
|
||||
|
||||
var result = await _authService.RegisterAsync(
|
||||
new Application.Commands.Auth.RegisterCommand(
|
||||
"test@example.com",
|
||||
"Password123!",
|
||||
"Test User"));
|
||||
|
||||
result.Success.Should().BeFalse();
|
||||
result.ErrorMessage.Should().Be("Email already registered");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task LoginAsync_WithValidCredentials_ShouldReturnTokens()
|
||||
{
|
||||
var hashedPassword = ComputeHash("Password123!");
|
||||
var user = new User
|
||||
{
|
||||
Id = Guid.NewGuid(),
|
||||
Email = "test@example.com",
|
||||
HashedPassword = hashedPassword,
|
||||
IsActive = true
|
||||
};
|
||||
_userRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(new List<User> { user });
|
||||
_unitOfWorkMock.Setup(x => x.SaveChangesAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(1);
|
||||
|
||||
var result = await _authService.LoginAsync(
|
||||
new Application.Commands.Auth.LoginCommand(
|
||||
"test@example.com",
|
||||
"Password123!"));
|
||||
|
||||
result.Success.Should().BeTrue();
|
||||
result.User.Should().NotBeNull();
|
||||
result.Tokens.Should().NotBeNull();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task LoginAsync_WithInvalidPassword_ShouldReturnError()
|
||||
{
|
||||
var user = new User
|
||||
{
|
||||
Email = "test@example.com",
|
||||
HashedPassword = ComputeHash("CorrectPassword"),
|
||||
IsActive = true
|
||||
};
|
||||
_userRepositoryMock.Setup(x => x.GetAllAsync(It.IsAny<CancellationToken>()))
|
||||
.ReturnsAsync(new List<User> { user });
|
||||
|
||||
var result = await _authService.LoginAsync(
|
||||
new Application.Commands.Auth.LoginCommand(
|
||||
"test@example.com",
|
||||
"WrongPassword"));
|
||||
|
||||
result.Success.Should().BeFalse();
|
||||
result.ErrorMessage.Should().Be("Invalid email or password");
|
||||
}
|
||||
|
||||
private static string ComputeHash(string password)
|
||||
{
|
||||
using var sha256 = System.Security.Cryptography.SHA256.Create();
|
||||
var hashedBytes = sha256.ComputeHash(System.Text.Encoding.UTF8.GetBytes(password));
|
||||
return Convert.ToBase64String(hashedBytes);
|
||||
}
|
||||
}
|
||||
Binary file not shown.
@@ -13,7 +13,7 @@ using System.Reflection;
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("InvoiceMaster.UnitTests")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+05ea67144f6a97e372ca4293ce2393e15a3f6bb7")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("InvoiceMaster.UnitTests")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("InvoiceMaster.UnitTests")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
|
||||
@@ -1 +1 @@
|
||||
1223dddf7216ddab048329fa70034587d349b759b5b033e38e6cd2d4edbd4866
|
||||
c077d4836482878dfcee69c0e412646849a04e73aee8bbed7559e6bb4a662308
|
||||
|
||||
Binary file not shown.
@@ -8,7 +8,7 @@
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Application\\InvoiceMaster.Application.csproj",
|
||||
"projectName": "InvoiceMaster.Application",
|
||||
"projectName": "FiscalFlow.Application",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Application\\InvoiceMaster.Application.csproj",
|
||||
"packagesPath": "C:\\Users\\yaoji\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Application\\obj\\",
|
||||
@@ -32,11 +32,7 @@
|
||||
"frameworks": {
|
||||
"net8.0": {
|
||||
"targetAlias": "net8.0",
|
||||
"projectReferences": {
|
||||
"C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Core\\InvoiceMaster.Core.csproj": {
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Core\\InvoiceMaster.Core.csproj"
|
||||
}
|
||||
}
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"warningProperties": {
|
||||
@@ -103,7 +99,7 @@
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Core\\InvoiceMaster.Core.csproj",
|
||||
"projectName": "InvoiceMaster.Core",
|
||||
"projectName": "FiscalFlow.Core",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Core\\InvoiceMaster.Core.csproj",
|
||||
"packagesPath": "C:\\Users\\yaoji\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\src\\InvoiceMaster.Core\\obj\\",
|
||||
|
||||
@@ -1904,31 +1904,30 @@
|
||||
"build/net6.0/xunit.runner.visualstudio.props": {}
|
||||
}
|
||||
},
|
||||
"InvoiceMaster.Application/1.0.0": {
|
||||
"FiscalFlow.Application/1.0.0": {
|
||||
"type": "project",
|
||||
"framework": ".NETCoreApp,Version=v8.0",
|
||||
"dependencies": {
|
||||
"AutoMapper": "12.0.1",
|
||||
"FluentValidation": "11.8.1",
|
||||
"InvoiceMaster.Core": "1.0.0",
|
||||
"MediatR": "12.2.0",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0"
|
||||
},
|
||||
"compile": {
|
||||
"bin/placeholder/InvoiceMaster.Application.dll": {}
|
||||
"bin/placeholder/FiscalFlow.Application.dll": {}
|
||||
},
|
||||
"runtime": {
|
||||
"bin/placeholder/InvoiceMaster.Application.dll": {}
|
||||
"bin/placeholder/FiscalFlow.Application.dll": {}
|
||||
}
|
||||
},
|
||||
"InvoiceMaster.Core/1.0.0": {
|
||||
"FiscalFlow.Core/1.0.0": {
|
||||
"type": "project",
|
||||
"framework": ".NETCoreApp,Version=v8.0",
|
||||
"compile": {
|
||||
"bin/placeholder/InvoiceMaster.Core.dll": {}
|
||||
"bin/placeholder/FiscalFlow.Core.dll": {}
|
||||
},
|
||||
"runtime": {
|
||||
"bin/placeholder/InvoiceMaster.Core.dll": {}
|
||||
"bin/placeholder/FiscalFlow.Core.dll": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6098,12 +6097,12 @@
|
||||
"xunit.runner.visualstudio.nuspec"
|
||||
]
|
||||
},
|
||||
"InvoiceMaster.Application/1.0.0": {
|
||||
"FiscalFlow.Application/1.0.0": {
|
||||
"type": "project",
|
||||
"path": "../../src/InvoiceMaster.Application/InvoiceMaster.Application.csproj",
|
||||
"msbuildProject": "../../src/InvoiceMaster.Application/InvoiceMaster.Application.csproj"
|
||||
},
|
||||
"InvoiceMaster.Core/1.0.0": {
|
||||
"FiscalFlow.Core/1.0.0": {
|
||||
"type": "project",
|
||||
"path": "../../src/InvoiceMaster.Core/InvoiceMaster.Core.csproj",
|
||||
"msbuildProject": "../../src/InvoiceMaster.Core/InvoiceMaster.Core.csproj"
|
||||
@@ -6111,9 +6110,9 @@
|
||||
},
|
||||
"projectFileDependencyGroups": {
|
||||
"net8.0": [
|
||||
"FiscalFlow.Application >= 1.0.0",
|
||||
"FiscalFlow.Core >= 1.0.0",
|
||||
"FluentAssertions >= 6.12.0",
|
||||
"InvoiceMaster.Application >= 1.0.0",
|
||||
"InvoiceMaster.Core >= 1.0.0",
|
||||
"Microsoft.NET.Test.Sdk >= 17.8.0",
|
||||
"Moq >= 4.20.69",
|
||||
"StyleCop.Analyzers >= 1.2.0-beta.556",
|
||||
@@ -6237,81 +6236,6 @@
|
||||
}
|
||||
},
|
||||
"logs": [
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized)."
|
||||
},
|
||||
{
|
||||
"code": "NU1900",
|
||||
"level": "Error",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "p0VrC0YuEQc=",
|
||||
"dgSpecHash": "VYb4pZlXFp8=",
|
||||
"success": false,
|
||||
"projectFilePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"expectedPackageFiles": [
|
||||
@@ -109,126 +109,6 @@
|
||||
"C:\\Users\\yaoji\\.nuget\\packages\\xunit.runner.visualstudio\\2.5.4\\xunit.runner.visualstudio.2.5.4.nupkg.sha512"
|
||||
],
|
||||
"logs": [
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1301",
|
||||
"level": "Error",
|
||||
"message": "Unable to load the service index for source https://pkgs.dev.azure.com/billodev/2c2b8bbf-61f2-43f4-b4bb-2017cef20a2c/_packaging/BilloFeed/nuget/v3/index.json.\r\n Response status code does not indicate success: 401 (Unauthorized).",
|
||||
"projectPath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"filePath": "C:\\Users\\yaoji\\git\\ColaCoder\\accounting-system\\backend\\tests\\InvoiceMaster.UnitTests\\InvoiceMaster.UnitTests.csproj",
|
||||
"targetGraphs": []
|
||||
},
|
||||
{
|
||||
"code": "NU1900",
|
||||
"level": "Error",
|
||||
|
||||
Reference in New Issue
Block a user