import factory
|
from fsm.state_choices import AnnotationStateChoices, ProjectStateChoices, TaskStateChoices
|
from fsm.state_models import AnnotationState, ProjectState, TaskState
|
from projects.tests.factories import ProjectFactory
|
from tasks.tests.factories import AnnotationFactory, TaskFactory
|
|
|
class ProjectStateFactory(factory.django.DjangoModelFactory):
|
project = factory.SubFactory(ProjectFactory)
|
state = factory.Iterator(ProjectStateChoices.values)
|
created_by_id = factory.SelfAttribute('project.created_by_id')
|
organization_id = factory.SelfAttribute('project.organization_id')
|
|
class Meta:
|
model = ProjectState
|
|
|
class TaskStateFactory(factory.django.DjangoModelFactory):
|
task = factory.SubFactory(TaskFactory)
|
state = factory.Iterator(TaskStateChoices.values)
|
project_id = factory.SelfAttribute('task.project_id')
|
organization_id = factory.SelfAttribute('task.project.organization_id')
|
|
class Meta:
|
model = TaskState
|
|
|
class AnnotationStateFactory(factory.django.DjangoModelFactory):
|
annotation = factory.SubFactory(AnnotationFactory)
|
state = factory.Iterator(AnnotationStateChoices.values)
|
task_id = factory.SelfAttribute('annotation.task_id')
|
project_id = factory.SelfAttribute('annotation.task.project_id')
|
completed_by_id = factory.SelfAttribute('annotation.completed_by_id')
|
organization_id = factory.SelfAttribute('annotation.task.project.organization_id')
|
|
class Meta:
|
model = AnnotationState
|