mirror of
https://github.com/bitwarden/server.git
synced 2026-06-01 01:55:55 -05:00
* Also decouple ProviderClientsController from Billing Team code * Also add noop authorize attribute where no additional authorization is required * Also remove unused ICurrentContext getters
51 lines
1.8 KiB
C#
51 lines
1.8 KiB
C#
using Bit.Api.AdminConsole.Controllers;
|
|
using Bit.Core.AdminConsole.Entities.Provider;
|
|
using Bit.Core.AdminConsole.Repositories;
|
|
using Bit.Core.Exceptions;
|
|
using Bit.Test.Common.AutoFixture;
|
|
using Bit.Test.Common.AutoFixture.Attributes;
|
|
using NSubstitute;
|
|
using NSubstitute.ReturnsExtensions;
|
|
using Xunit;
|
|
|
|
namespace Bit.Api.Test.AdminConsole.Controllers;
|
|
|
|
[ControllerCustomize(typeof(ProviderUsersController))]
|
|
[SutProviderCustomize]
|
|
public class ProviderUsersControllerTests
|
|
{
|
|
[Theory]
|
|
[BitAutoData]
|
|
public async Task Get_ProviderUserNotFound_ThrowsNotFound(Guid providerId, Guid id,
|
|
SutProvider<ProviderUsersController> sutProvider)
|
|
{
|
|
sutProvider.GetDependency<IProviderUserRepository>().GetByIdAsync(id).ReturnsNull();
|
|
|
|
await Assert.ThrowsAsync<NotFoundException>(() => sutProvider.Sut.Get(providerId, id));
|
|
}
|
|
|
|
[Theory]
|
|
[BitAutoData]
|
|
public async Task Get_ProviderIdMismatch_ThrowsNotFound(Guid providerId, ProviderUser providerUser,
|
|
SutProvider<ProviderUsersController> sutProvider)
|
|
{
|
|
sutProvider.GetDependency<IProviderUserRepository>().GetByIdAsync(providerUser.Id).Returns(providerUser);
|
|
|
|
await Assert.ThrowsAsync<NotFoundException>(() => sutProvider.Sut.Get(providerId, providerUser.Id));
|
|
}
|
|
|
|
[Theory]
|
|
[BitAutoData]
|
|
public async Task Get_Success(ProviderUser providerUser,
|
|
SutProvider<ProviderUsersController> sutProvider)
|
|
{
|
|
// Permissions must be valid JSON for ProviderUserResponseModel constructor
|
|
providerUser.Permissions = null;
|
|
sutProvider.GetDependency<IProviderUserRepository>().GetByIdAsync(providerUser.Id).Returns(providerUser);
|
|
|
|
var result = await sutProvider.Sut.Get(providerUser.ProviderId, providerUser.Id);
|
|
|
|
Assert.Equal(providerUser.Id, result.Id);
|
|
}
|
|
}
|