Skip to content

Commit 0fbad15

Browse files
committed
Force generation to use strategy defined within the factories meta
- Default in case non-set is CREATE_STRATEGY. So this conforms to the absolute hardcoded default from before.
1 parent a873a8f commit 0fbad15

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

pytest_factoryboy/fixture.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ class Factory(factory_class):
210210
if argname in request._fixturedef.argnames:
211211
kwargs[key] = evaluate(request, request.getfixturevalue(argname))
212212

213-
strategy = factory.enums.CREATE_STRATEGY
213+
strategy = Factory._meta.strategy
214214
builder = factory.builder.StepBuilder(Factory._meta, kwargs, strategy)
215215
step = factory.builder.BuildStep(builder=builder, sequence=Factory._meta.next_sequence())
216216

pytest_factoryboy/plugin.py

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"""pytest-factoryboy plugin."""
22

33
from collections import defaultdict
4+
from factory import enums
45
import pytest
56

67

@@ -72,6 +73,7 @@ def after_postgeneration(self, request):
7273
results = self.results.pop(model)
7374
obj = request.getfixturevalue(model)
7475
factory = self.model_factories[model]
76+
create = factory._meta.strategy == enums.CREATE_STRATEGY
7577
factory._after_postgeneration(obj, create=True, results=results)
7678

7779
def evaluate(self, request):

0 commit comments

Comments
 (0)