39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
import factory
|
|
from django.utils import timezone
|
|
from tasks.models import Client, Task, TaskResult
|
|
|
|
class ClientFactory(factory.django.DjangoModelFactory):
|
|
class Meta:
|
|
model = Client
|
|
|
|
name = factory.Sequence(lambda n: f"client_{n}")
|
|
token = factory.Faker('uuid4')
|
|
last_seen = timezone.now()
|
|
created_at = timezone.now()
|
|
|
|
class TaskFactory(factory.django.DjangoModelFactory):
|
|
class Meta:
|
|
model = Task
|
|
|
|
name = factory.Sequence(lambda n: f"task_{n}")
|
|
client_name = factory.Sequence(lambda n: f"client_{n}")
|
|
script = factory.Faker('text')
|
|
status = 'pending'
|
|
timeout_seconds = 3600 # 1 hour
|
|
created_at = timezone.now()
|
|
updated_at = timezone.now()
|
|
assigned_to = None
|
|
started_at = None
|
|
completed_at = None
|
|
|
|
class TaskResultFactory(factory.django.DjangoModelFactory):
|
|
class Meta:
|
|
model = TaskResult
|
|
|
|
task = factory.SubFactory(TaskFactory)
|
|
client = factory.SubFactory(ClientFactory)
|
|
result_file = None
|
|
status = 'success'
|
|
message = factory.Faker('text')
|
|
created_at = timezone.now()
|