Use response models in Api integration tests (#2592)

This commit is contained in:
Thomas Avery
2023-01-19 15:20:59 -06:00
committed by GitHub
parent 01b4a4d1d8
commit 41d1e48823
9 changed files with 108 additions and 69 deletions

View File

@@ -5,12 +5,18 @@ namespace Bit.Api.SecretManagerFeatures.Models.Response;
public class SecretWithProjectsListResponseModel : ResponseModel
{
public SecretWithProjectsListResponseModel(IEnumerable<Secret> secrets, string obj = "SecretsWithProjectsList") : base(obj)
private const string _objectName = "SecretsWithProjectsList";
public SecretWithProjectsListResponseModel(IEnumerable<Secret> secrets) : base(_objectName)
{
Secrets = secrets.Select(s => new InnerSecret(s));
Projects = secrets.SelectMany(s => s.Projects).DistinctBy(p => p.Id).Select(p => new InnerProject(p));
}
public SecretWithProjectsListResponseModel() : base(_objectName)
{
}
public IEnumerable<InnerSecret> Secrets { get; set; }
public IEnumerable<InnerProject> Projects { get; set; }
@@ -22,6 +28,10 @@ public class SecretWithProjectsListResponseModel : ResponseModel
Name = project.Name;
}
public InnerProject()
{
}
public Guid Id { get; set; }
public string Name { get; set; }
}
@@ -38,6 +48,10 @@ public class SecretWithProjectsListResponseModel : ResponseModel
Projects = secret.Projects?.Select(p => new InnerProject(p));
}
public InnerSecret()
{
}
public string Id { get; set; }
public string OrganizationId { get; set; }