UserFactory
class UserFactory extends Factory
Traits
Properties
| static protected array | $macros | The registered string macros. |
from Macroable |
| protected null|TModel> | $model | The name of the factory's corresponding model. |
from Factory |
| protected int|null | $count | The number of models that should be generated. |
from Factory |
| protected Collection | $states | The state transformations that will be applied to the model. |
from Factory |
| protected Collection | $has | The parent relationships that will be applied to the model. |
from Factory |
| protected Collection | $for | The child relationships that will be applied to the model. |
from Factory |
| protected Collection | $recycle | The model instances to always use when creating relationships. |
from Factory |
| protected Collection | $afterMaking | The "after making" callbacks that will be applied to the model. |
from Factory |
| protected Collection | $afterCreating | The "after creating" callbacks that will be applied to the model. |
from Factory |
| protected bool | $expandRelationships | Whether relationships should not be automatically created. |
from Factory |
| protected array | $excludeRelationships | The relationships that should not be automatically created. |
from Factory |
| protected UnitEnum|string|null | $connection | The name of the database connection that will be used to create the models. |
from Factory |
| protected Generator|null | $faker | The current Faker instance. |
from Factory |
| static string | $namespace | The default namespace where factories reside. |
from Factory |
| static protected TModel>> | $modelNameResolvers | The default model name resolvers. |
from Factory |
| static protected null|callable | $factoryNameResolver | The factory name resolver. |
from Factory |
| static protected bool | $expandRelationshipsByDefault | Whether to expand relationships by default. |
from Factory |
| static protected TModel>|false> | $cachedModelAttributes | The cached model class names resolved from attributes. |
from Factory |
Methods
Apply the callback if the given "value" is (or resolves to) truthy.
Apply the callback if the given "value" is (or resolves to) falsy.
Forward a method call to the given object.
Forward a method call to the given object, returning $this if the forwarded call returned itself.
Throw a bad method call exception for the given method.
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Create a new factory instance.
Define the model's default state.
Get a new factory instance for the given attributes.
Get a new factory instance for the given number of models.
Get the raw attributes generated by the factory.
Create a single model and persist it to the database.
Create a single model and persist it to the database without dispatching any model events.
Create a collection of models and persist them to the database.
Create a collection of models and persist them to the database without dispatching any model events.
Create a collection of models and persist them to the database.
Create a collection of models and persist them to the database without dispatching any model events.
Create a callback that persists a model in the database when invoked.
Create a collection of models and persist them to the database.
Insert the model records in bulk. No model events are emitted.
Create the parent relationship resolvers (as deferred Closures).
Expand all attributes to their underlying values.
Prepend a new state transformation to the model definition.
Add a new sequenced state transformation to the model definition.
Add a new sequenced state transformation to the model definition and update the pending creation count to the size of the sequence.
Add a new cross joined sequenced state transformation to the model definition.
Attempt to guess the relationship name for a "has" relationship.
Define an attached relationship for the model.
Define a parent relationship for the model.
Provide model instances to use instead of any nested factory calls when creating relationships.
Retrieve a random model of a given type from previously provided models to recycle.
Call the "after making" callbacks for the given model instances.
Call the "after creating" callbacks for the given model instances.
Indicate that related parent models should not be created.
Get the name of the database connection that is used to generate models.
Specify the database connection that should be used to generate models.
Create a new instance of the factory builder with the given mutated properties.
Specify the callback that should be invoked to guess model names based on factory names.
Specify the default namespace that contains the application's model factories.
Get a new factory instance for the given model name.
Specify the callback that should be invoked to guess factory names based on dynamic relationship names.
Specify that relationships should create parent relationships by default.
Specify that relationships should not create parent relationships by default.
Get the factory name for the given model name.
Indicate that the model's email address should be unverified.
Details
in
Conditionable at line 23
mixed
when(mixed $value = null, callable|null $callback = null, callable|null $default = null)
Apply the callback if the given "value" is (or resolves to) truthy.
in
Conditionable at line 56
mixed
unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)
Apply the callback if the given "value" is (or resolves to) falsy.
in
ForwardsCalls at line 22
protected mixed
forwardCallTo(mixed $object, string $method, array $parameters)
Forward a method call to the given object.
in
ForwardsCalls at line 52
protected mixed
forwardDecoratedCallTo(mixed $object, string $method, array $parameters)
Forward a method call to the given object, returning $this if the forwarded call returned itself.
in
ForwardsCalls at line 66
static protected never
throwBadMethodCallException(string $method)
Throw a bad method call exception for the given method.
in
Macroable at line 28
static void
macro(string $name, callable|object $macro)
Register a custom macro.
Boot-only. Macros persist in a static property for the worker lifetime and apply to every subsequent call on the macroable class.
in
Macroable at line 41
static void
mixin(object $mixin, bool $replace = true)
Mix another object into the class.
Boot-only. Delegates to macro() for each method; registered macros persist in a static property for the worker lifetime.
in
Macroable at line 57
static bool
hasMacro(string $name)
Check if macro is registered.
in
Macroable at line 68
static void
flushMacros()
Flush the existing macros.
Boot or tests only. Clears worker-wide macros; concurrent coroutines may resolve different methods depending on timing.
in
Macroable at line 78
static mixed
__callStatic(string $method, array $parameters)
Dynamically handle calls to the class.
in
Macroable at line 103
mixed
__call(string $method, array $parameters)
Dynamically handle calls to the class.
in
Factory at line 140
__construct(int|null $count = null, Collection|null $states = null, Collection|null $has = null, Collection|null $for = null, Collection|null $afterMaking = null, Collection|null $afterCreating = null, UnitEnum|string|null $connection = null, Collection|null $recycle = null, bool|null $expandRelationships = null, array $excludeRelationships = [], string|null $model = null)
Create a new factory instance.
at line 18
array
definition()
Define the model's default state.
in
Factory at line 179
static Factory
new(callable|array $attributes = [])
Get a new factory instance for the given attributes.
in
Factory at line 187
static Factory
times(int $count)
Get a new factory instance for the given number of models.
in
Factory at line 206
array
raw(callable|array $attributes = [], Model|null $parent = null)
Get the raw attributes generated by the factory.
in
Factory at line 223
Model
createOne(callable|array $attributes = [])
Create a single model and persist it to the database.
in
Factory at line 234
Model
createOneQuietly(callable|array $attributes = [])
Create a single model and persist it to the database without dispatching any model events.
in
Factory at line 245
Collection
createMany(int|iterable|null $records = null)
Create a collection of models and persist them to the database.
in
Factory at line 269
Collection
createManyQuietly(int|iterable|null $records = null)
Create a collection of models and persist them to the database without dispatching any model events.
in
Factory at line 280
Collection|Model
create(callable|array $attributes = [], Model|null $parent = null)
Create a collection of models and persist them to the database.
in
Factory at line 307
Collection|Model
createQuietly(callable|array $attributes = [], Model|null $parent = null)
Create a collection of models and persist them to the database without dispatching any model events.
in
Factory at line 318
Closure
lazy(array $attributes = [], Model|null $parent = null)
Create a callback that persists a model in the database when invoked.
in
Factory at line 328
protected void
store(Collection $results)
Set the connection name on the results and store them.
in
Factory at line 350
protected void
createChildren(Model $model)
Create the children for the given model.
in
Factory at line 365
Model
makeOne(callable|array $attributes = [])
Make a single instance of the model.
in
Factory at line 376
Collection|Model
make(callable|array $attributes = [], Model|null $parent = null)
Create a collection of models.
in
Factory at line 416
Collection
makeMany(iterable|int|null $records = null)
Create a collection of models and persist them to the database.
in
Factory at line 439
void
insert(array $attributes = [], Model|null $parent = null)
Insert the model records in bulk. No model events are emitted.
in
Factory at line 468
protected Model
makeInstance(Model|null $parent)
Make an instance of the model with the given attributes.
in
Factory at line 482
protected array
getExpandedAttributes(Model|null $parent)
Get a raw attributes array for the model.
in
Factory at line 490
protected array
getRawAttributes(Model|null $parent)
Get the raw attributes for the model as an array.
in
Factory at line 508
protected array
parentResolvers()
Create the parent relationship resolvers (as deferred Closures).
in
Factory at line 519
protected array
expandAttributes(array $definition)
Expand all attributes to their underlying values.
in
Factory at line 556
Factory
state(callable|array $state)
Add a new state transformation to the model definition.
in
Factory at line 570
Factory
prependState(callable|array $state)
Prepend a new state transformation to the model definition.
in
Factory at line 590
Factory
sequence(mixed ...$sequence)
Add a new sequenced state transformation to the model definition.
in
Factory at line 598
Factory
forEachSequence(array ...$sequence)
Add a new sequenced state transformation to the model definition and update the pending creation count to the size of the sequence.
in
Factory at line 606
Factory
crossJoinSequence(array ...$sequence)
Add a new cross joined sequenced state transformation to the model definition.
in
Factory at line 614
Factory
has(Factory $factory, string|null $relationship = null)
Define a child relationship for the model.
in
Factory at line 627
protected string
guessRelationship(string $related)
Attempt to guess the relationship name for a "has" relationship.
in
Factory at line 639
Factory
hasAttached(Factory|Collection|Model|array $factory, callable|array $pivot = [], string|null $relationship = null)
Define an attached relationship for the model.
in
Factory at line 665
Factory
for(Factory|Model $factory, string|null $relationship = null)
Define a parent relationship for the model.
in
Factory at line 678
Factory
recycle(Model|Collection|array $model)
Provide model instances to use instead of any nested factory calls when creating relationships.
in
Factory at line 699
Model|null
getRandomRecycledModel(string $modelClassName)
Retrieve a random model of a given type from previously provided models to recycle.
in
Factory at line 709
Factory
afterMaking(Closure $callback)
Add a new "after making" callback to the model definition.
in
Factory at line 719
Factory
afterCreating(Closure $callback)
Add a new "after creating" callback to the model definition.
in
Factory at line 727
Factory
withoutAfterMaking()
Remove the "after making" callbacks from the factory.
in
Factory at line 735
Factory
withoutAfterCreating()
Remove the "after creating" callbacks from the factory.
in
Factory at line 743
protected void
callAfterMaking(Collection $instances)
Call the "after making" callbacks for the given model instances.
in
Factory at line 755
protected void
callAfterCreating(Collection $instances, Model|null $parent = null)
Call the "after creating" callbacks for the given model instances.
in
Factory at line 777
Factory
withoutParents(array $parents = [])
Indicate that related parent models should not be created.
in
Factory at line 785
string|null
getConnectionName()
Get the name of the database connection that is used to generate models.
in
Factory at line 795
Factory
connection(UnitEnum|string|null $connection)
Specify the database connection that should be used to generate models.
in
Factory at line 803
protected Factory
newInstance(array $arguments = [])
Create a new instance of the factory builder with the given mutated properties.
in
Factory at line 828
Factory
useModel(string $model)
Specify the model that should be generated by the factory.
An explicit UseModel attribute on the factory takes precedence.
in
Factory at line 851
string
modelName()
Get the name of the model that is generated by the factory.
in
Factory at line 896
static void
guessModelNamesUsing(callable $callback)
Specify the callback that should be invoked to guess model names based on factory names.
Boot or tests only. The callback persists in a static property for the worker lifetime and runs on every model-name guess across all coroutines.
in
Factory at line 907
static void
useNamespace(string $namespace)
Specify the default namespace that contains the application's model factories.
Boot or tests only. The namespace persists in a static property for the worker lifetime and applies to every subsequent factory-name lookup.
in
Factory at line 920
static Factory
factoryForModel(string $modelName)
Get a new factory instance for the given model name.
in
Factory at line 936
static void
guessFactoryNamesUsing(callable $callback)
Specify the callback that should be invoked to guess factory names based on dynamic relationship names.
Boot or tests only. The callback persists in a static property for the worker lifetime and runs on every factory-name guess across all coroutines.
in
Factory at line 947
static void
expandRelationshipsByDefault()
Specify that relationships should create parent relationships by default.
Boot or tests only. The flag persists in a static property for the worker lifetime and applies to every factory build across all coroutines.
in
Factory at line 958
static void
dontExpandRelationshipsByDefault()
Specify that relationships should not create parent relationships by default.
Boot or tests only. The flag persists in a static property for the worker lifetime and applies to every factory build across all coroutines.
in
Factory at line 966
protected Generator|null
withFaker()
Get a new Faker instance.
in
Factory at line 983
static string
resolveFactoryName(string $modelName)
Get the factory name for the given model name.
in
Factory at line 1001
static protected string
appNamespace()
Get the application namespace for the application.
in
Factory at line 1015
static void
flushState()
Flush all static state.
in
Factory at line 33
$this
trashed()
No description
at line 32
UserFactory
unverified()
Indicate that the model's email address should be unverified.