UTIL_SObjectBuilderDefaultProvider
Class · Group: Testing
global virtual inherited sharing class UTIL_SObjectBuilderDefaultProvider extends TST_Builder.DefaultValueProviderExtends: TST_Builder.DefaultValueProvider
Provides the default value generation logic for the SObjectBuilder. Subscribers should extend THIS class to override default values or define custom required fields for SObjects.
Example
global class MyDefaultProvider extends UTIL_SObjectBuilderDefaultProvider
{
global override Set<SObjectField> defineSObjectRequiredFields(SObjectType sObjectType)
{
if(sObjectType == Account.SObjectType)
{
return new Set<SObjectField>{ Account.Industry };
}
return null;
}
}See Also: TST_Builder
Methods
| Method | Description |
|---|---|
| global virtual Set<SObjectField> defineSObjectOptionalFields(SObjectType sObjectType) | Defines a set of optional fields for a given SObject. |
| global virtual Set<SObjectField> defineSObjectRequiredFields(SObjectType sObjectType) | Defines a set of required fields for a given SObject. |
| global virtual Boolean getCheckboxDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Checkbox field type. |
| global virtual Decimal getCurrencyDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Currency field type. |
| global virtual Date getDateDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Date field type. |
| global virtual Datetime getDateTimeDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Datetime field type. |
| global virtual Decimal getDecimalDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Decimal field type. |
| global virtual Object getDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Generates a default value for a given field of an SObject. |
| global virtual String getEmailDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for an Email field type. |
| global virtual Location getGeolocationDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Geolocation field type. |
| global virtual Integer getIntegerDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for an Integer field type. |
| global virtual String getMultiPicklistDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Multipicklist field type. |
| global virtual Decimal getPercentDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Percent field type. |
| global virtual String getPhoneDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Phone field type. |
| global virtual String getPicklistDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Picklist field type. |
| global virtual String getTextAreaDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a TextArea field type. |
| global virtual String getTextDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a Text field type. |
| global virtual String getURLDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex) | Provides the default value for a URL field type. |
defineSObjectOptionalFields
global virtual Set<SObjectField> defineSObjectOptionalFields(SObjectType sObjectType)Defines a set of optional fields for a given SObject. Can be overridden in a subclass.
Parameters
| Parameter | Type | Description |
|---|---|---|
sObjectType | SObjectType | The SObjectType for which the optional fields will be defined. |
Returns SObjectField — A set of defined optional fields.
Example
Set<SObjectField> result = instance.defineSObjectOptionalFields(Account.SObjectType);defineSObjectRequiredFields
global virtual Set<SObjectField> defineSObjectRequiredFields(SObjectType sObjectType)Defines a set of required fields for a given SObject. Can be overridden in a subclass.
Parameters
| Parameter | Type | Description |
|---|---|---|
sObjectType | SObjectType | The SObjectType for which the required fields will be defined. |
Returns SObjectField — A set of defined required fields.
Example
Set<SObjectField> result = instance.defineSObjectRequiredFields(Account.SObjectType);getCheckboxDefaultValue
global virtual Boolean getCheckboxDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Checkbox field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Boolean — The default Boolean value.
Example
Boolean result = instance.getCheckboxDefaultValue(Account.Name.getDescribe(), 10);getCurrencyDefaultValue
global virtual Decimal getCurrencyDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Currency field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Decimal — The default Decimal value.
Example
Decimal result = instance.getCurrencyDefaultValue(Account.Name.getDescribe(), 10);getDateDefaultValue
global virtual Date getDateDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Date field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Date — The default Date value.
Example
Date result = instance.getDateDefaultValue(Account.Name.getDescribe(), 10);getDateTimeDefaultValue
global virtual Datetime getDateTimeDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Datetime field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Datetime — The default Datetime value.
Example
Datetime result = instance.getDateTimeDefaultValue(Account.Name.getDescribe(), 10);getDecimalDefaultValue
global virtual Decimal getDecimalDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Decimal field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Decimal — The default Decimal value.
Example
Decimal result = instance.getDecimalDefaultValue(Account.Name.getDescribe(), 10);getDefaultValue
global virtual Object getDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Generates a default value for a given field of an SObject. Can be overridden by descendant classes.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Object — The generated field default value.
Example
Object result = instance.getDefaultValue(Account.Name.getDescribe(), 10);getEmailDefaultValue
global virtual String getEmailDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for an Email field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value for an email.
Example
String result = instance.getEmailDefaultValue(Account.Name.getDescribe(), 10);getGeolocationDefaultValue
global virtual Location getGeolocationDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Geolocation field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Location — The default Location value.
Example
Location result = instance.getGeolocationDefaultValue(Account.Name.getDescribe(), 10);getIntegerDefaultValue
global virtual Integer getIntegerDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for an Integer field type. Only standard platform fields describe as Integer (custom Number fields always describe as Double), and SObject.put rejects a Decimal on them, so the default must be a genuine Integer. The value is sized from the describe's digits, the width carrier for standard Integer fields, capped so it always fits an Apex Integer.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Integer — The default Integer value.
Example
Integer result = instance.getIntegerDefaultValue(ApexClass.LengthWithoutComments.getDescribe(), 10);getMultiPicklistDefaultValue
global virtual String getMultiPicklistDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Multipicklist field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value for a multipicklist.
Example
String result = instance.getMultiPicklistDefaultValue(Account.Name.getDescribe(), 10);getPercentDefaultValue
global virtual Decimal getPercentDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Percent field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns Decimal — The default Decimal value.
Example
Decimal result = instance.getPercentDefaultValue(Account.Name.getDescribe(), 10);getPhoneDefaultValue
global virtual String getPhoneDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Phone field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value for a phone number.
Example
String result = instance.getPhoneDefaultValue(Account.Name.getDescribe(), 10);getPicklistDefaultValue
global virtual String getPicklistDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Picklist field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value for a picklist.
Example
String result = instance.getPicklistDefaultValue(Account.Name.getDescribe(), 10);getTextAreaDefaultValue
global virtual String getTextAreaDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a TextArea field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value.
Example
String result = instance.getTextAreaDefaultValue(Account.Name.getDescribe(), 10);getTextDefaultValue
global virtual String getTextDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a Text field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value.
Example
String result = instance.getTextDefaultValue(Account.Name.getDescribe(), 10);getURLDefaultValue
global virtual String getURLDefaultValue(DescribeFieldResult fieldDescribe, Integer recordIndex)Provides the default value for a URL field type.
Parameters
| Parameter | Type | Description |
|---|---|---|
fieldDescribe | DescribeFieldResult | The field describe information. |
recordIndex | Integer | The index number (starting from 0) of the record being created. |
Returns String — The default String value for a URL.
Example
String result = instance.getURLDefaultValue(Account.Name.getDescribe(), 10);