<PackageReference Include="Relativity.Server.Testing.Framework.Api.SDK" Version="5000.1.0" />

IAccountPoolService

public interface IAccountPoolService
Represents the service that provides a pool of users and default properties for them.
bool CleanUp { get; set; }

Gets or sets a value indicating whether the pooled accounts will be cleaned up when no longer in the current session.

The default value is false.

Gets or sets the standard account [Client](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.Client.html).

Gets or sets the type of the standard account [UserDefaultSelectedFileType](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.UserDefaultSelectedFileType.html).

Gets or sets the standard account [UserDocumentViewer](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.UserDocumentViewer.html).

string StandardAccountEmailFormat { get; set; }

Gets or sets the standard account email format.

The default value is "atuser{0}@mail.com".

string StandardAccountFirstNameFormat { get; set; }

Gets or sets the standard account first name format.

The default value is "AT {0}".

List<string> StandardAccountGroupNames { get; set; }

Gets or sets the list of groups that the standard accounts are a part of.

The default groups are [GroupNames.SystemAdministrators](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.GroupNames.html#Relativity_Testing_Framework_Models_GroupNames_SystemAdministrators), [GroupNames.DomainUsers](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.GroupNames.html#Relativity_Testing_Framework_Models_GroupNames_DomainUsers), and [GroupNames.Everyone](https://relativitydev.github.io/relativity.testing.framework/api/Relativity.Testing.Framework.Models.GroupNames.html#Relativity_Testing_Framework_Models_GroupNames_Everyone).

string StandardAccountLastNameFormat { get; set; }

Gets or sets the standard account last name format.

The default value is "User".

string StandardAccountPassword { get; set; }

Gets or sets the standard account password.

string StandardAccountType { get; set; }

Gets or sets the standard account type.

The default value is "Internal".

Acquires a user from the account pool.

Will create a user if there are none left in the account pool.

Users are created based on the StandardAccount properties that have been set.

Acquires a user from the account pool, but will forcibly delete and recreate it first.

Will create a user if there are none left in the account pool.

This should be used over AcquireStandardAccount when the account might already exist, and you do not know what the password for it is.

Gets a user from the account pool.

bool IsStandardAccount(string email)

Determines whether there is a standard account with the specified email.

void PrepareStandardAccounts(int count)

Prepares (creates if there are no existing) the specified count of standard accounts.

Users are created based on the StandardAccount properties that have been set.

void ReleaseAccount(string email)

Releases the account, allowing it to be acquired at a later time.