1
0
mirror of https://github.com/bitwarden/server.git synced 2025-05-22 12:04:27 -05:00

Resolve the failing test

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>
This commit is contained in:
Cy Okeke 2025-05-21 09:50:15 +01:00
parent b63055cc6a
commit d23373b776
No known key found for this signature in database
GPG Key ID: 88B341B55C84B45C

View File

@ -255,24 +255,31 @@ public class OrganizationsController : Controller
Seats = organization.Seats
};
var freePlan = await _pricingClient.GetPlanOrThrow(model.PlanType.Value);
if (organization.PlanType != PlanType.Free && model.PlanType == PlanType.Free && model.Seats > freePlan.PasswordManager.MaxSeats)
if (model.PlanType.HasValue)
{
TempData["Error"] = $"Organizations with more than {freePlan.PasswordManager.MaxSeats} seats cannot be downgraded to the Free plan";
return RedirectToAction("Edit", new { id });
}
var freePlan = await _pricingClient.GetPlanOrThrow(model.PlanType.Value);
if (organization.PlanType != PlanType.Free && model.PlanType == PlanType.Free && model.MaxCollections > freePlan.PasswordManager.MaxCollections)
{
TempData["Error"] = $"Organizations with more than {freePlan.PasswordManager.MaxCollections} collections cannot be downgraded to the Free plan. Your organization currently has {organization.MaxCollections} collections.";
return RedirectToAction("Edit", new { id });
}
if (organization.PlanType != PlanType.Free &&
model.PlanType.Value == PlanType.Free &&
model.Seats.HasValue &&
model.Seats.Value > freePlan.PasswordManager.MaxSeats)
{
TempData["Error"] = $"Organizations with more than {freePlan.PasswordManager.MaxSeats} seats cannot be downgraded to the Free plan";
return RedirectToAction("Edit", new { id });
}
if (organization.PlanType != PlanType.Free && model.PlanType == PlanType.Free)
{
model.MaxStorageGb = null;
model.ExpirationDate = null;
model.Enabled = true;
if (organization.PlanType != PlanType.Free && model.PlanType.Value == PlanType.Free && model.MaxCollections > freePlan.PasswordManager.MaxCollections)
{
TempData["Error"] = $"Organizations with more than {freePlan.PasswordManager.MaxCollections} collections cannot be downgraded to the Free plan. Your organization currently has {organization.MaxCollections} collections.";
return RedirectToAction("Edit", new { id });
}
if (organization.PlanType != PlanType.Free && model.PlanType.Value == PlanType.Free)
{
model.MaxStorageGb = null;
model.ExpirationDate = null;
model.Enabled = true;
}
}
UpdateOrganization(organization, model);